推荐星级:
- 1
- 2
- 3
- 4
- 5
单片机中不使用死延时的延时方法与技巧
资料介绍
为什么大家都是不要使用使用死延时呢,下面我们一起来探讨一下吧。
死延时:
优点:简单,很容易就能写出软件延时程序
缺点:直接让单片机做空循环,死等;浪费cpu资源,导致IC的性能不能得到充分的发挥。
活延时:
优点:时间计数灵活,占用IC资源少,能够发挥IC的最高性能;利用定时器的溢出间隔,如果时间上不够,可以在溢出中断中配合软件计数器来实现。
缺点:占用一个定时器,如果利用不好会影响其他中断的执行。
通常在中断子程序中是不调用延时子程序的,这样会增加中断处理时间,如果有其它低级中断了,就会延误响应中断了。
所以,中断子程序中不要写调用延时子程序,中断子程序也不要写得过长,处理过多的任务,要尽快处理后及时返回,如果中断一次有很多任务需要执行完全,可以在中断子程序中设置一个标志位,在主程序中查这个标志位,当标志为1时,就在主程序中完成这些任务,这样就不会影响其它中断源的中断,也不会使中断产生混乱。
可参考下面这个程序,我用C语言写的,精度也很高。
部分文件列表
文件名 | 大小 |
单片机定时使用技巧/ | |
单片机定时使用技巧/user_config.h | 3KB |
单片机定时使用技巧/user_timer.c | 1KB |
单片机定时使用技巧/user_timer.h | 1KB |
全部评论(0)