打印
[其他]

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

[复制链接]
829|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
单片机是可编程器件,在使用时需要编写满足需求的程序。其C语言程序在各个端口、配置初始化完成后,会进入一个死循环,一般用while(1){;}的形式。初始化完成后,单片机就在死循环内一遍又一遍的执行程序逻辑。复位后,就从头开始,初始化完成后,再次进入死循环。          单片机在执行程序是从上到下一条一条语句执行的,对于定时器的配置、端口的初始化等内容,只需要执行一次就可以,所以初始化内容放在while(1)循环之外,而对于任务之类需要实时检测的逻辑就需要放在死循环内,让单片机不停的去执行。
单片机的程序分为查询式和中断式。所谓查询,就是需要不停的去扫描,比较耗费资源;而中断具有中断标志位,只有中断标志位置位后才去处理中断内容,比较节省资源。所以,查询就是通过while(1)循环来保证的。

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

使用特权

评论回复
沙发
单片小菜| | 2021-1-8 10:31 | 只看该作者
学习了。

使用特权

评论回复
板凳
yangjiaxu| | 2021-1-10 12:29 | 只看该作者
讲的真不错 通俗易懂

使用特权

评论回复
地板
jcky001| | 2021-1-14 09:20 | 只看该作者
适合初学小菜

使用特权

评论回复
5
jerow| | 2021-1-14 22:17 | 只看该作者
所谓查询,就是需要不停的去扫描,比较耗费资源;而中断具有中断标志位,只有中断标志位置位后才去处理中断内容,比较节省资源。所以,查询就是通过while(1)循环来保证的。
是的但实际中状态机就是最好的办法,状态机加中段相当的方便

使用特权

评论回复
6
两只袜子| | 2021-1-15 09:33 | 只看该作者

小菜来学习了。

使用特权

评论回复
7
嵌入小菜菜| | 2021-1-15 17:10 | 只看该作者
通俗易懂,讲的真不错。学习了。

使用特权

评论回复
8
里面有晴雨| | 2021-1-15 17:51 | 只看该作者
用简单的话,讲的通俗易懂,很不错,很不错的。

使用特权

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

本版积分规则

681

主题

1534

帖子

7

粉丝