c语言实现一般的延时

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)
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值