void delay(int ){while(t--);} 12M晶振 运行delay(8) 大概需要多少微秒。
答案:2 悬赏:60
解决时间 2021-03-21 00:55
- 提问者网友:残阳碧曼
- 2021-03-20 15:53
用ds18B20初始化时,需要复位脉冲480-960微妙,delay(80)在这个之间嘛。我觉得只要80微妙啊;
最佳答案
- 二级知识专家网友:晨与橙与城
- 2021-03-20 16:13
我想给你上传图片的但是不知道怎么上传我上去,直接回答你把 我用仿真软件算过是 88微秒。
全部回答
- 1楼网友:嗷呜我不好爱
- 2021-03-20 17:21
晶振为12m表明它1秒震动12*(10的6次方)次,并有这麽多个时钟周期;上述函数是一个延时函数,它定义为延时x微秒;如果函数为void delayms(uint x) { uchar t; while(x--) for(t=0;t<12000(注意数量级);t++); },函数大概会执行x微秒,但是用c写的函数(汇编的话误差会小一些)并不是那么精确,会出现一定的误差,除非是 不断的根据实际延时结果尝试修改 t 以达到当中for循环延时1微秒的效果。
t和12m晶振本身没什么关系,但硬要说有关系的话,就是晶振越大,每一次for循环t的上界就会变得越大才能满足延时1微秒的效果。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯