完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
中断基本概念: CPU在处理某一事件A时,另一事件B发出请求(中断请求);CPU暂时中断当前的工作,转去 处理实践B(中断响应和中断服务);待CPU将事件B处理完毕后,再回到原来事件A被中断的 地方继续处理事件A(中断返回),这一过程称为中断. 执行过程: 1、中断源产生中断信号:当一个中断事件发生时,比如外部设备请求处理、定时器溢出 等,中断源会产生中断信号。 2、中断向量检测:当中断信号产生后,CPU会检测中断向量。中断向量是一个特定的地 址,用于存储中断服务程序的入口地址。 3、保存现场:在进入中断服务程序之前,CPU会自动将当前的程序计数器(PC)和标志寄存 器等关键寄存器的值保存到栈中,以便在中断处理完成后能够正确恢复。 4、跳转到中断服务程序:CPU会根据中断向量找到中断服务程序的入口地址,并跳转到该 地址开始执行中断服务程序。 5、中断服务程序执行:中断服务程序是一段特定的代码,专门用来处理中断事件。它会根 据具体的中断类型执行相应的操作,比如读取外部设备数据、清除中断标志、更新相关寄 存器等。6、恢复现场:在中断服务程序执行完毕后,CPU会从栈中恢复之前保存的现场信息,包括 程序计数器和标志寄存器等。 7、返回主程序:恢复现场后,CPU会继续执行被中断打断的主程序,从中断发生的地方继 续执行下去。需要注意的是,中断服务程序的编写需要考虑时间限制和资源占用等因素,以确保中断处 理的效率和系统的稳定性。同时,在中断处理期间,可以通过设置中断屏蔽位来禁止其他 中断的发生,以避免中断嵌套引起的问题。 中断嵌套的基本概念: 如果多个中断源同时提出了中断请求,先响应高优先级中断源,后响应低优先级中断源. 执行过程: 如果一个中断源提出了中断请求,已经转去执行其中断服务程序了,期间又有一个中断源 提出了中断请求,CPU的处理原则是,如果新的中断优先级与当前正在处理的中断是同级 的,则不予响应,待当前中断服务程序执行完毕后,再响应;如果新的中断优先级比当前 正在处理的中断高,则会发生中断嵌套. 中断的优势: 1、提高CPU效率 2、解决速度矛盾 3、实现并行工作 4、应付突发事件 中断服务函数和普通函数的异同: 1、相同点是,函数的形式非常类似,中断响应过程和普通函数调用过程也非常相似. 2、不同点有如下几方面. a.中断服务函数不需要声明,普通函数一般需要声明. b.普通函数的执行是可预测的;中断服务函数的执行是不可预测的.c.普通函数的跳转是软件(函数调用语句)完成的;中断服务的跳转(中断响应)是由硬件完成 的,只要发生了中断事件,并且中断被允许,硬件自动完成中断服务的跳转(中断响应). d.普通函数通过函数名找到被调用函数;中断服务函数通过中断号找到中断服务函数.由此可知,中断服务函数中的函数名其实并没有什么用. 中断函数的编码注意事项: 1、interrupt必须加,表示定义成中断服务函数. 2、后面n是中断号,中断号是编译器识别不同中断的唯一编号. 中断使用的注意事项: 1、中断服务函数不能进行参数转递. 2、在任何情况下,都不能直接调用中断服务函数.
中断流程分析与示例学习笔记.pdf
(345.53 KB, 下载次数: 13
)
|
|
相关推荐
|
|
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
72 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
509 浏览 0 评论
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
546 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
545 浏览 0 评论
1008 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11763 浏览 31 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 12:41 , Processed in 0.455841 second(s), Total 42, Slave 32 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号