MCU中断资源使用指南:如何合理、高效地利用中断功能?
创作时间:
作者:
@小白创作中心
MCU中断资源使用指南:如何合理、高效地利用中断功能?
引用
1
来源
1.
https://mcu.eetrend.com/content/2024/100580373.html
MCU的中断功能是芯片里非常重要的一个功能模块,也是对产品功能和性能优劣有着至关重要的一项功能。本文将深入探讨如何合理、高效地使用MCU的中断资源,包括中断资源的种类、优先级设置、使用场景和注意事项等。
MCU中断资源概述
MCU的中断资源因内核不同而有所差异。以常见的51单片机和ARM Cortex-M系列单片机为例:
- 51单片机:共有5~6个中断源,包括外部中断(2个)、定时器中断(3个)、串口中断(1个)。它们的初始优先级从高到低依次为:外部中断0 > 定时器0 > 外部中断1 > 定时器1 > 串口中断 > 定时器2。
要使用51单片机的中断,需要设置两个寄存器:中断允许寄存器IE和中断优先级寄存器IP。中断允许寄存器支持对每个中断进行位操作和总允许控制,而中断优先级寄存器则可以改变中断源的优先级,分为高和低两个优先级。
- ARM Cortex-M系列单片机:中断资源更加丰富,内嵌了中断控制器NVIC和扩展中断EXTI事件控制器。
中断使用问答
问题1:为什么要用中断?中断能解决什么问题?
中断功能最重要的价值在于实现“任务切换”,通过中断方式从某个任务切换到另一个任务,从而实现CPU资源的最大化。在运行操作系统的MCU中,中断承担着更加重要的角色,如进程调度、内存管理等功能都需要用到中断功能。
问题2:如何高效利用中断资源?
- 合理设计中断资源的外部线路,尤其是存在多种外部中断输入时。例如,将触发频率较低的按键信号安排在外部中断1,将频率较高的信号放在中断0。
- 合理设置中断优先级,让实时性要求高的中断任务获得更高的优先级。
- 精确计算中断服务程序的执行时长,评估其对被中断任务的影响。在执行实时性很高的子程序时可以考虑屏蔽中断响应,执行完之后再开放中断。
问题3:使用中断有哪些注意事项?
- 中断函数被调用的时间不固定,因此需要自己保护现场。
- 中断函数被调用的地点不固定,当前的任务无法给中断函数传参。
- 中断函数的返回地点不固定,因此中断函数不能有返回值。
在一个嵌入式ARM裸机环境下,编写中断处理函数时一般要遵循以下基本流程:
- 保存中断现场:状态寄存器、返回地址入栈、中断ISR中要用到的寄存器入栈。
- 清中断:关中断,保护现场。有些硬件会自动清除,重开中断前记得要清除。
- 执行用户编写的中断处理函数。
- 恢复现场:将栈中保存的数据弹到CPU的各个寄存器中,恢复被中断的现场,从栈中弹出返回地址到PC寄存器,CPU从被打断的程序处继续执行。
问题4:如何使用才能让它稳定可靠?
对于可靠性要求更高的产品,需要对中断服务有非常精准的把控,高度的确定性是稳定可靠的前提条件。在使用中断嵌套时要非常小心,避免在特殊情况下高优先级的中断始终占用芯片资源。如果不能准确判断中断的频率和占用资源的情况,就要想办法避免中断嵌套的发生。最简单的方法是在进入某个中断服务子程序后暂时关闭所有中断,在完成这个服务程序后再打开中断允许,让中断服务按照先到先执行的方式运行。
热门推荐
冬季手部护理全攻略:深层洁净与滋养并行,重塑细嫩双手光彩
卡尺工具的工作原理解析,测量精度如何提升?
从创作到发行,纪实影像法律问题全攻略
蚕豆病诊断标准,重要依据还是G6pd酶
200度近视是否能够得到有效纠正?了解近视矫正的方法与结果
劳动教育 1+X 证书与职业院校 “书证融通”——产教融合新模式
三国乱世里,四大猛将排行榜,第一实至名归
外戚与内戚:权力游戏中的家族纠葛
世界各地的坐月子习俗
转融券业务明起暂停:将如何影响市场?哪些股票转融券余额较高?
燃气表电池型号及更换周期
燃气表电池型号及更换周期
如何制定合理的投资理财计划并实现目标?这个计划如何根据市场变化进行调整?
银行的理财业务的风险承受能力评估怎么做?
《知否知否应是绿肥红瘦》消极怠工庶女「盛明兰」的逆袭之路
Liquid:华中科技、字节、港大联合推出的统一多模态生成框架
利率从4%腰斩到2%,美元存款也崩了?
热感冒能喝姜茶吗:探究姜茶的功效与适用情况
这,就是中国空降兵
周易八字命理原理详解:从基础概念到实际应用
破解1.6亿熟龄女性更年期困局:三个维度如何打造解决方案?
移民瑞典生活,来了解一下瑞典的历史和宗教
项目经理如何进公司总部
提权的定义及其在网络安全中的应用是什么
回顾:非诚勿扰被曝骗观众13年?女嘉宾被玩弄于股掌,幕后是交易?
紫微斗数中的有效沟通之道
油车降价:市场变革与消费者福利
农民工受伤后如何获得工伤赔偿?工伤赔偿的标准是什么?
气密性检测仪控制设备详解:确保精准测试的关键
从需求到实施:企业项目管理工具选择五步走