- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
当来了中断,如何处理呢? 我们以生活中事件为例说明:在你看书时,手机响了,你一般会这样处理,在书上做记号,接电话,接完电话后会在做记号处继续往下看书。 同理微控制器也是这样处理中断事件,当异常发生时,处理器会自动执行下面的操作: ARM体系存在两种处理器状态,ARM状态和Thumb状态 * ARM体系存在7种异常中断,当多个异常事件同时发生时,一个固定的优先级系统决定了它们被处理的顺序 * * 中断分外部中断和内部中断,内部中断是微控制器内部发生中断事件;外部中断由芯片的中断引脚输入的信号来触发,通常用按键来连接中断引脚。 说第一句话 芯片引脚是复用引脚,因此说第二句话。 * * * * 通过设置寄存器来实现 * 通过设置寄存器来实现 * 情境5 LPC2000处理异常事件 任务一 外部中断实现报警器设计 任务描述 应用LPC2290芯片设计一个简易报警器,当有按键按下,表示有紧急情况发生,控制蜂鸣器的状态取反。 相关知识点—ARM异常中断的基础知识 1.什么是ARM体系异常中断 前面5种属于异常情况,后面2种属于正常中断。 地址 异常 进入时的模式 0复位 管理 0未定义指令 未定义 0软中断异常 管理 0x0000000C 预取指中止 中止 0数据中止 中止 0保留 保留 0IRQ 中断 0x0000001C FIQ 快中断 7种异常中断向量表 相关知识点—ARM异常中断的基础知识 (1)复位异常 复位异常中断通常用在系统上电和系统复位两种情况。 当复位异常发生时,处理器自动执行以下操作: 强制CPSR中的M[4:0]变为10011,系统进入管理模式; 将CPSR中的标志位I和F置位,禁止IRQ与FIQ中断; 将CPSR中的标志位T清零,处理器处于ARM状态; 强制PC从0x00地址进行取指。 (2) 未定义指令异常 未定义指令异常是当ARM处理器遇到一条系统内部任何协处理器都无法执行的指令时,就会发生未定义指令异常,从而进入中断处理程序。 例如: 在一个不包含浮点运算的系统中,CPU遇到浮点数运算指令时,将发生未定义指令异常中断。 相关知识点—ARM异常中断的基础知识 (3)软中断异常 软件中断异常(SWI)用于进入管理模式,通常用于请求一个特定的管理函数。 (4)预取指中止 当发生预取指中止时,ARM内核将预取的指令标记为无效。 (5)数据中止 当处理数据时发生中止异常时,异常会在“导致异常的指令”执行后的下一条指令发生。 相关知识点—ARM异常中断的基础知识 (6)中断IRQ 中断请求异常IRQ是一个由nIRQ输入端的低电平所产生的正常中断; 任何时候在一个特权模式下,都可以通过置位CPSR中的I位来禁止IRQ。 相关知识点—ARM异常中断的基础知识 (7)快中断 FIQ 将更紧急的事件设置为FIQ中断; 在ARM状态中,快中断模式有8个专用的寄存器可用来满足寄存器的需要。使处理效率更高; 2.ARM体系异常中断处理过程 当进入异常时,处理器会自动完成下面操作: 1.在LR中保存下一条指令的地址; 2.将CPSR复制到适当的SPSR 3.根据异常将CPSR模式位强制设为某一值 4.强制PC从相关的异常向量处取指令。 注意:异常总是在ARM状态下进行处理,如果处理器处在Thumb状态时发生了异常,会自动切换到ARM状态。 相关知识点—ARM异常中断的基础知识 做记号 备份处理器的状态和模式 进入中断事件进行处理 设置异常中断类型 2.ARM体系异常中断处理过程 当异常处理结束时,异常处理程序必须执行下面操作: 将置位的中断标志位清零 将SPSR的值恢复到CPSR 将LR中的值减去偏移量后移入PC 相关知识点—ARM异常中断的基础知识 返回到被中断处继续执行 3.ARM体系异常优先级 当多个异常发生时,一个固定的优先级系统决定了它们被处理的顺序 SWI FIQ 复位异常 数据中止 IRQ 预取指中止 未定义 高 低 相关知识点—ARM异常中断的基础知识 4.中断源 向量中断控制器(VIC)负责管理芯片的中断源,最多管理32个中断输入请求。 中断源见表5-3 注意:一种中断源对应一个通道号 相关知识点—ARM异常中断的基础知识 模块 VIC通道号 WDT 0 - 1 ARM内核 2 ARM内核 3 定时器0 4 定时器1 5 UART0 6 UART1 7 PWM0 8 I2C 9 SPI0 10 SPI1 11 PLL 12 RTC 13 外部中断0 14 外部中断1 15 外部中断2 16 外部中断3 17 A/D 18 表5-3 中断源
您可能关注的文档
- 《嵌入式控制系统原理及设计》课件—01嵌入式控制系统基础.pptx
- 《嵌入式控制系统原理及设计》课件—02ARM微处理器基础.pptx
- 《嵌入式控制系统原理及设计》课件—03编程基础.pptx
- 《嵌入式控制系统原理及设计》课件—04嵌入式控制系统设计基础.pptx
- 《嵌入式控制系统原理及设计》课件—05嵌入式系统接口技术.pptx
- 《嵌入式控制系统原理及设计》课件—06嵌入式操作系统及应用.pptx
- 《嵌入式系统开发与应用》课件01走进嵌入式的世界.ppt
- 《嵌入式系统开发与应用》课件02在ADS环境中开发汇编程序-.ppt
- 《嵌入式系统开发与应用》课件03嵌入式最小系统.ppt
- 《嵌入式系统开发与应用》课件04嵌入式基本输入输出控制.ppt
文档评论(0)