打印
[经验分享]

单片机的死循环有什么作用

[复制链接]
491|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 可爱的国务小胖 于 2020-8-11 17:23 编辑

单片机是可编程器件,在使用时需要编写满足需求的程序。其C语言程序在各个端口、配置初始化完成后,会进入一个死循环,一般用while(1){;}的形式。初始化完成后,单片机就在死循环内一遍又一遍的执行程序逻辑。复位后,就从头开始,初始化完成后,再次进入死循环。

单片机在执行程序是从上到下一条一条语句执行的,对于定时器的配置、端口的初始化等内容,只需要执行一次就可以,所以初始化内容放在while(1)循环之外,而对于任务之类需要实时检测的逻辑就需要放在死循环内,让单片机不停的去执行

单片机的程序分为查询式和中断式。所谓查询,就是需要不停的去扫描,比较耗费资源;而中断具有中断标志位,只有中断标志位置位后才去处理中断内容,比较节省资源。所以,查询就是通过while(1)循环来保证的。

单片机在执行主程序时,如果发生了中断,则会优先处理中断内容,处理完成后再从刚才的断点处继续执行,如果发生了多个中断,则先执行中断优先级较高的中断。


使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

116

主题

199

帖子

1

粉丝