
怎么计算延时函数 void delay1ms() { unsigned char i,j; for(i=0;i<10;i++) for(j=0;j<33;j++) ; }
展开全部
!!! 这个是根据mcu频率来的,不同板卡这个循环次数是不同的。
这条语句要是在pc上,也就几ms就搞定了。
这条语句要是在pc上,也就几ms就搞定了。
追问
晶振12Mhz
机器周期为1us
那上面的延时应该怎么计算呢
追答
关于取值大小:这个如果是在C下变成,这个值不仅仅与晶振、单片机本身运算速度有关,而且还与C的编译器有关,所以说,这个值虽说是可以精确计算的,但大多数情况下,程序员用的都是“经验值”——当然,如果用汇编编程,情况就不一样了,因为每一条指令所使用的机器周期是一定的,你当然可以根据所有指令使用的总时间,精确的算出具体延时的总时间
参考资料:http://zhidao.baidu.com/question/133709987
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询