百问网七天物联网课程学习笔记——单片机中断的使用

学习了百问网的智能家居实战训练营之后,对单片机的中断又有了更深刻的了解。
中断,即CPU在正常执行程序的过程中,遇到外部/内部的紧急事件需要处理,暂时中断(中止)当前程序的执行,而转去为事件服务,待服务完毕,再返回到暂停处(断点)继续执行原来的程序。在日常的使用中,主要使用到外部中断、定时中断以及串口中断。中断执行过程如图所示。
在这里插入图片描述
编写中断函数时要注意以下几点:
1.中断优先级分为抢占优先级和子优先级,抢占优先级高的中断可以中断抢占优先级低的中断;两个中断的抢占优先级相同,后来中断要等前面的中断处理完;抢占优先级、子优先级相同,同时产生则有中断向量表默认位置决定。
2.中断函数应合理安排优先级,比较重要的事件需要分配更高的优先级,中断服务函数需注意快进快出,以免影响到正常的程序运行。在中断服务程序里面尽量快速采集信息,包括硬件信息,然后退出中断,要做其它事情可以使用工作队列或者tasklet方式。
3.中断服务程序注意返回值,要用操作系统定义的宏作为返回值,而不是自己定义的。
4.中断服务程序中不能有阻塞操作。应为中断期间是完全占用CPU的(即不存在内核调度),中断被阻塞住,其他进程将无法操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值