1·中断的概念
(1)什么是中断
在主程序运行过程中,
出现了特定的中断触发条件(中断源)
使得CPU暂停当前正在运行的程序,
转而去处理中断程序
处理完成后又返回原来被暂停的位置继续运行
(中断就是停下手头的东西,做另外的事情,完成事情后,回来继续做手头的东西)
(2)中断优先级
当有多个中断源同时申请中断时,
CPU会根据中断源的轻重缓急进行裁决,
优先响应更加紧急的中断源
(3)断嵌套
当一个中断程序正在运行时,
又有新的更高优先级的中断源申请中断,
CPU再次暂停当前中断程序,
转而去处理新的中断程序,
处理完成后依次进行返回
(套娃)
中断来的时间点,叫断电
保留现场,去做中断程序
做完中断程序,回来恢复现场
这个保留现场和恢复现场的操作,C语言的编辑器会自动帮我们做好的
(比用汇编好多了,汇编要保留现场,手动进行堆栈操作,恢复现场要手动出栈操作)

2·外部中断含义
Extern interrupt的缩写
EXTI监测GPIO的电平信号
当电平发生变化时,EXTI向NVIC发送中断请求,
经过NVIC裁决后,中断CPU程序,使CPU执行EXTI对应的中断程序
2·专业名称
3·触发方式:
上升沿 、 下降沿 、 双边沿 、 软体设置(对于STM32而言)
4·触发响应方式: 中断响应,事件响应
中断响应:CPU暂停当前任务转而执行中断函数里的程序。
事件响应 :CPU暂停当前任务转而触发其它外设操作。
中断响应,触发中断;
事件响应,不会触发中断,触发外设操作,属于外设之间的联合工作;
5·GPIO选择
支持所有GPIO口,但是相同pin口,不能同时触发中断
(因为相同的Pin口是占相同的EXTI通道的,例如PA0和PB0是同样中断通道EXTI0)
5·中断通道
多少个PIN口,一般就有多少个,根据手册还可以增加很多
譬如STM32:
16个GPIO_Pin、PVD输出、RTC闹钟、USB唤醒、以太网唤醒
6·中断向量表
有些手册,会列出表格,说明中断资源,如下(STM32)

最低0.47元/天 解锁文章
1013

被折叠的 条评论
为什么被折叠?



