打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
常用的延时方法(12M晶振)

常用的延时方法(12M晶振)

隐形人    发表于2009年08月05日 14:26 阅读(11) 评论(0) 分类: C语言提高
举报

常用的延时方法(12M晶振)

1:1~4us
_nop()_实现
计算方法:1~4us分别用1~4个_nop()_

2:5~500us
void delay(unsigned char i)
{
while(--i) ;
}
计算方法:ix2+5 可完成5~515us的延时


3:10us~2ms
void delay(unsigned char i)
{
for( ;i>0 ;i--) ;
}
计算方法:ix8+10 可完成10us~2.050ms的延时

4:2ms~130ms
void delay(unsigned char i,unsigned char j)        
{
for( ;j>0 ;j--)
for( ;i>0 ;i--) ;
}
计算方法:(ix2+3)xj+5 us
个人建议:i在里面赋值248 这样延时为0.5ms的倍数

5:130ms~30s(好象这个数字不过这)
void delay(unsigned char i,unsigned char j,unsigned char k)
{
for( ;k>0 ;k--)
for( ;j>0 ;j--)
for( ;i>0 ;i--) ;
}
计算方法:((ix2+3)xj+3)xk+5 us
同样可以先把i和j赋值

再长的延时就没意义了

为了编程习惯着想,最好不要用伟纳例程里用的while(i--)
尽量用while(--i)

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
51单片机精确延时函数集锦
延时函数
单片机写延时程序的几种方法
164驱动8位LED显示 CVAVR程序
51单片机精确延时函数集锦 | 孟坤博客
两位数码管动态显示C语言程序
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服