永发信息网

单片机中,设晶振频率为 6MHz ,试编制50 ms 延时子程序?

答案:4  悬赏:50  手机版
解决时间 2021-04-07 08:48
单片机中,设晶振频率为 6MHz ,试编制50 ms 延时子程序?
最佳答案
DELAY50MS:
MOV R2,#50 ;2
DELAY1:
MOV R3,#249 ;2*50
DJNZ R3,$ ;4*249*50
DJNZ R2,DELAY1 ;4*50
RET ;4
TOTAL:2+100+49800+200+4=50106us=50.106ms
全部回答
什么型号的单片机?
先说明你用的是什么类型的单片机?
这个延时,各个单片机不确定,有一种方法是采用延时子函数
void delay(int k)
{
int i,j;
for(i=0;i {
for(j=0;j<100;j++);
}
}
这里是可以设定延时时间,当然,需要用示波器测试,比如你的while(1)死循环里,
void main()
{
while(1)
{
输出1;
delay(1);
输出0;
delay(1);
}
}
然后测试周期,50ms对应的周期是100ms,因为是方波,有高低电平的时间,如果测试的时间长了,就减小j的值100,如果时间断了,就增加100那个数,直到周期为100ms。
如果100设为1了时间还是超过100ms(你这里频率6MHz如果是CPU的时钟,频率太低)那就用nop这个指令,每个单片机的这条指令书写不同,delay()子函数里就用几个nop延时
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
梦见水库快溃堤了,我告知乡亲快撤离
福益食品有限公司在什么地方啊,我要过去处理
求大家帮忙想几句诗词,里面要带有“郑”这个
n52磁铁有几特斯拉。
焊缝返修应如何控制
填了两张费用报销单没有发票之前先填制的,后
如图,△ABC中,D是边AB上的一点,过D作DE‖BC
谁有masm for windows集成实验环境2010 注册
桌面突然多了matlab文件,后缀是.mdl.autosav
英氏橱柜衣柜在什么地方啊,我要过去处理事情
饱和溶液法是怎样测密度的呢?请指教,谢谢。
形容人衣冠不整的样子的成语
追了五年的女神结婚,我要不要去抢婚
唐人街探案,神探夏洛克,通灵神探谁最有内涵
老款长安悦翔 4年27000公里,电瓶需要换吗
推荐资讯
龙辰有几个女人,叫什么?
请问鲅鱼饺子一定要放肥肉吗?
辩论会会场有什么纪律?该怎么维持现场安静?
什么单机游戏可以自己铸造武器(新旧游戏均可
大学生支教以后好就业吗
起诉书的送达地址是填写原告的地址对吗?
出来久了感觉很迷茫,在不知不觉中失去了奋斗
请问登山鞋什么牌子的好?
宋代名将,被贬青州是谁
怎么打开海尔净水器ro膜
5CR13MN是什么不锈钢?化学成份又是什么?
三星W2016配备的充电宝怎么使用
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?