单片机的延时程序

单片机的延时程序,第1张

单片机里有两种方法可以延时!

第一种是用for语句:如,

void delay(ms)

for(i=0, i>ms,i++)

{

for(j=0,j>110,j++)

}

这是一个有参数的延时程序,其中ms是参量,在调用时可以随意赋值~ 如你想延时一秒,则在调用时可以写:delay(1000);

其原因是:内层for 是延时1ms的函数,内层for是一个公认的样式! 而参量ms=1000,即外层for循环1000次!

延时时间=1000x1=1s

第二种是用定时/计数器,如是12Mhz 晶振,则每计一个数表示1us

这个没例子我不好讲,你刚学单片机吧!以后要学的,挺好学的!

看看书就知道了

void Delay1000us() { unsigned char i, j; //延时等等1毫秒

i = 2; j = 239; //下面需要做双重循环,其中外循环2次,内循环239次

do{

while(--j); //每次内循环做一次减法和一次判断

} while(--i); //每次外循环做一次减法和一次判断

}

正如函数名写明的大体上可以认为,在当前的时钟频率下,经过测试,做上述这么多次的运算(执行语句次数)会耗时1毫秒。

以上就是关于单片机的延时程序全部的内容,包括:单片机的延时程序、请各位大神帮帮忙注释一下下面的(51单片机)代码,这是一个数码管显示程序里的延时函数、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9858049.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存