目录前言一、中断系统二、中断优先级三、低功耗模式四、寄存器开发五、库函数开发STM32 HAL 库 / 标准库六、寄存器与库函数怎么选七、常见异常问题小结前言前两篇讲解了单片机硬件基础与片上外设本篇重点讲中断体系、中断优先级、低功耗模式、寄存器与库函数差异属于从简单点灯到做实际项目的进阶理论也是面试高频考点。一、中断系统1.什么是中断;CPU 正在执行主循环代码外部 / 内部事件到来暂停当前任务跳转去执行中断服务函数处理完再回到原来代码继续运行。 不用循环轮询提升程序实时性。2.中断分类:内部中断定时器溢出、ADC 转换完成、串口接收完成等片内外设产生外部中断 EXTIGPIO 引脚电平变化触发按键、外部信号触发3.中断服务函数:中断发生后执行的函数执行时间要尽可能短不要写延时、复杂运算、大循环。只做标记、赋值复杂逻辑放到 while (1) 主循环处理。二、中断优先级抢占优先级高抢占优先级可以打断正在执行的低抢占优先级中断。响应优先级抢占优先级相同时先执行响应优先级高的不能打断正在运行的同抢占级别的中断。开发注意不要设置过多高抢占优先级中断防止程序卡死。重要实时任务分配高抢占优先级。中断嵌套慎用新手尽量减少多层嵌套。三、低功耗模式单片机不止可以全速运行支持多种省电模式电池供电项目必用。运行模式CPU、外设全部工作功耗最高。睡眠模式CPU 停止外设、时钟继续工作中断唤醒。停止模式大部分时钟关闭仅保留部分外设功耗大幅降低外部中断唤醒。待机模式功耗最低仅备份寄存器工作复位或者特定中断唤醒。使用要点进入低功耗前关闭不用外设唤醒依靠中断电池产品重点使用。四、寄存器开发寄存器就是芯片内部的配置寄存器每一位对应一个功能开关、参数。 直接读写寄存器地址完成配置不需要封装库。优点执行效率极高代码量小理解芯片底层工作。缺点可读性差需要查阅大量参考手册开发速度慢容易写错位。适用对时序、性能要求极高的场景。五、库函数开发STM32 HAL 库 / 标准库库函数是厂商封装好的函数内部帮我们操作寄存器开发者调用 API 即可。优点代码可读性好开发速度快不用死记寄存器新手主流开发方式。缺点会有少量额外开销部分特殊功能需要自己操作寄存器补充。新手建议优先学 HAL 库有空回头看寄存器理解底层原理。六、寄存器与库函数怎么选入门阶段优先库函数快速做项目。进阶阶段看懂库函数源码对应手册看懂寄存器。极致性能关键时序部分直接操作寄存器。七、常见异常问题中断函数写长延时、大循环 → 系统卡顿、丢数据。中断优先级配置错误出现中断卡死。忘记开启外设时钟外设完全不工作。低功耗模式下忘记配置唤醒源芯片无法唤醒。