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

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

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

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

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


单片机文章推荐:
单片机可以替代PLC吗?
高端CPU为什么不用在工业产品上?
单片机为什么那么喜欢11.0592M的晶振
RTC时钟为什么喜欢32.768K的晶振?

免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭