中断

Interrupt

说明

具体应用
51 单片机中:8051中断系统
STM32 中 :NVIC


单一 CPU 处理多任务时的一种技术手段
实质上为资源共享技术, 中断的概念实际上很符合人的实际
中断能干更多的事情(资源的分配策略)
分时操作 ——CPU 可以同多个外设“同时”工作
实时处理 —— CPU 及时处理随机事件

基本概念

中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得 CPU 暂停当前正在运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置继续运行
中断源:将能引起中断的事件
主程序:CPU 现行运行的程序
中断服务子程序:处理中断事件的程序
中断优先级:当有多个中断源同时申请中断时,CPU 会根据中断源的轻重缓急进行裁决,优先响应更加紧急的中断源
中断嵌套:当一个中断程序正在运行时,又有新的更高优先级的中断源申请中断,CPU 再次暂停当前中断程序,转而去处理新的中断程序,处理完成后依次进行返回

中断编程建议

在中断函数里,不要编写耗时过长的代码
中断函数要简短迅速(处理突发事件)
最好不要在中断函数和主函数调用相同的函数
或者操作同一个硬件
可以使用变量或者标志位作为接口,减少代码之间耦合性,让部分代码相互独立