Cortex-M3异常中断及向量表定义

发布者:SereneHeart最新更新时间:2018-06-04 来源: eefocus关键字:Cortex-M3  异常中断  向量表定义 手机看文章 扫描二维码
随时随地手机看文章

1、Cortex-M3异常类型

Cortex-M3支持256个中断(或异常),包括16-4-1=11个系统异常(编号为1-15),和最多240个外部中断(编号大于16)——简称IRQ。具体使用了这240个中断源中的多少个,则由芯片制造商决定。由外设产生的中断信号,除了SysTick的之外,全都连接到NVIC的中断输入信号线。典型情况下,处理器一般支持16到32个中断,当然也有在此之外的。

所有能打断正常执行的事件均可称为异常或中断,CM3中异常与中断的区别在于:

中断:240个中断对CM3核来说都是“意外突发事件”, 也就是说该请求信号来CM3内核的外面,来自各种片上外设和外扩的外设,对CM3来说是“异步”的。

异常:异常是因CM3内核的活动产生的,即在执行指令或访问存储器时产生的,对CM3来说是“同步”的。

下表列出了Cortex-M3可以支持的所有异常和外部中断清单。有一定数量的系统异常是用于fault处理的,它们可以由多种错误条件引发。NVIC还提供了一些fault状态寄存器,以便于fault服务例程找出导致异常的具体原因。



在NVIC的中断控制及状态寄存器中,有一个VECTACTIVE位段;另外,还有一个特殊功能寄存器IPSR。在它们二者的里面,都记录了当前正服务的异常,给出了它的编号。

如果一个发生的异常不能被即刻响应,就称它被“悬起”(pending)。不过,少数fault异常是不允许被悬起的。一个异常被悬起的原因,可能是系统当前正在执行一个更高优先级异常的服务例程,或者因相关掩蔽位的设置导致该异常被除能。对于每个异常源,在被悬起的情况下,都会有一个对应的“悬起状态寄存器”保存其异常请求。待到该异常能够响应时,执行其服务例程,这与传统的ARM是完全不同的。在以前,是由产生中断的设备保持住请求信号;CM3则由NVIC的悬起状态寄存器来解决这个问题。于是,哪怕设备在后来已经释放了请求信号,曾经的中断请求也不会错失。


2、Cortex-M3向量表

当CM3内核响应了一个发生的异常后,对应的异常服务例程(ESR)就会执行。为了决定ESR的入口地址,CM3使用了“向量表查表机制”。这里使用一张向量表。向量表其实是一个WORD(32位整数)数组,每个下标对应一种异常,该下标元素的值则是该ESR的入口地址。向量表在地址空间中的位置是可以设置的,通过NVIC中的一个重定位寄存器来指出向量表的地址。在复位后,该寄存器的值为0。因此,在地址0处必须包含一张向量表,用于初始时的异常分配。


举个例子,如果发生了异常11(SVC),则NVIC会计算出偏移移量是11x4=0x2C,然后从那里取出服务例程的入口地址并跳入。要注意的是这里有个另类:0号类型并不是什么入口地址,而是给出了复位后MSP的初值。


关键字:Cortex-M3  异常中断  向量表定义 引用地址:Cortex-M3异常中断及向量表定义

上一篇:STM32片外内存的使用
下一篇:片内RAM的四种工作模式

推荐阅读最新更新时间:2024-03-16 16:04

恩智浦出货ARM Cortex-M4及Cortex-M3微控制器
   恩智浦半导体NXP Semiconductors N.V.近日发布LPC4300数字信号控制器(DSC),这是迄今为止业内速度最快的ARM® Cortex™-M4微控制器,其速度高达204MHz。另外,LPC4300也是业界首个带有Cortex-M0协处理器的双核非对称架构DSC。恩智浦还同时宣布将LPC1800系列的性能提升到180MHz,使之成为目前世界上最快的基于Cortex-M3的微处理器。LPC4300和LPC1800系列同步开发,并且共同采用90纳米超低漏电流技术制造,实现引脚兼容和软件兼容,有许多相同的重要功能。    恩智浦半导体微控制器全球产品市场经理Gordon Cooper表示,“LPC4300不同
[工业控制]
采用Cortex-M3单片机设计的WiFi物联网小车
  WiFi物联网小车设计方案,采用电脑上位机软件通过无线WiFi 控制小车的运动,采集小车的信息。与传统的“智能小车”相比,主要特点在于使用32 位高性能单片机控制、互联网通信机制和电脑上位机软件控制。此方案融合了电脑软件、网络通信、图像处理、图形显示、运动控制、速度采集和温度采集等技术,具有“物联网”的相关特点。传统的小车控制大多使用红外通信,使用遥控器进行控制,不但受到距离的限制,而且远没有电脑软件直观美观。互联网通信使小车具备远程控制的能力,这是红外通信望尘莫及的。此外,本方案小车控制芯片采用Cortex-M3单片机,该单片机具有极丰富的外设,这给小车以后功能升级和扩展奠定了基础。   1 总体设计方案   WiFi 物联
[电源管理]
采用<font color='red'>Cortex-M3</font>单片机设计的WiFi物联网小车
Cortex-M3 (NXP LPC1788)之SDRAM操作
网上看到了一些关于1788 SDRAM的调试代码,基本上都一样,本人在调试1788 SDRAM过程中,遇到了一些大麻烦,本人使用的的SDRAM芯片为MT48LC16M162. 本人遇到的问题如下: 1:1788芯片硬件仿真初期,调试SDRAM寄存器配置错误,导致1788芯片无法进入仿真状态,只能用Flash Magic才能擦除。 2:1788芯片的SDRAM有一个很重要的寄存器,官方驱动为 LPC_SC- EMCDLYCTL 寄存器的设置,就算你和官方所使用芯片一样,只要电路板有差异,这个寄存器的设置将有可能导致SDRAM在使用过程中出现错误。 3:还有对于时序的设置,这一步相对来说就比较简单了。 下面
[单片机]
STM32(Cortex-M3)中的中断优先级概念
STM32(Cortex-M3)中有两个优先级的概念——抢占式优先级和响应优先级,有人把响应优先级称作'亚优先级'或'副优先级',每个中断源都需要被指定这两种优先级。具有高抢占式优先级的中断可以在具有低抢占式优先级的中断处理过程中被响应,即中断嵌套,或者说高抢占式优先级的中断可以嵌套低抢占式优先级的中断。当两个中断源的抢占式优先级相同时,这两个中断将没有嵌套关系,当一个中断到来后,如果正在处理另一个中断,这个后到来的中断就要等到前一个中断处理完之后才能被处理。如果这两个中断同时到达,则中断控制器根据他们的响应优先级高低来决定先处理哪一个;如果他们的抢占式优先级和响应优先级都相等,则根据他们在中断表中
[单片机]
ARM Cortex-M3的SRAM单元故障软件的自检测研究
   引言   目前,对于存储单元SRAM的研究都是基于硬件电路来完成,而且这些方法都是运用在生产过程中,但是生产过程并不能完全杜绝SRAM的硬件故障。在其使用过程中,如果SRAM硬件出错,将导致程序出错而且很难被发现。因此在运用的阶段,为防止存储单元损坏而导致系统出错,通过软件的方式对SRAM进行检测是必要的。   1 SRAM运行状态分析   SRAM是存储非CONSTANT变量(如RW),它具有掉电即失的特点。由Cortex—M3的启动步骤可知,系统上电后,首先执行复位的5个步骤:   ①NVIC复位,控制内核;   ②NVIC从复位中释放内核;   ③内核配置堆栈;   ④内核设置PC和LR;   ⑤运行
[单片机]
ARM <font color='red'>Cortex-M3</font>的SRAM单元故障软件的自检测研究
ARM架构异常中断处理流程
在ARM体系中通常有以下3种方式控制程序的执行流程: 在正常程序执行过程中,每执行一条ARM指令,程序计数器寄存器(PC)的值加4个字节;每执行一条Thumb指令,程序计数器寄存器(PC)的值加两个字节。整个过程是顺序执行。 通过跳转指令,程序可以跳转到特定的地址标志处执行,或者跳转到特定的子程序处执行。其中,B指令用于执行跳转操作;BL指令在执行跳转动作的同时,保存子程序的返回地址;BX指令在执行跳转操作的同时,根据目标地址的最低位可以将程序状态切换到Thumb状态;BLX指令执行3个操作:跳转到目标地址处执行,保存子程序的返回地址,根据目标地址的最低位可以将程序状态切换到Thumb状态。 当异常中断发生时,系统执行
[单片机]
ARM架构<font color='red'>异常中断</font>处理流程
售价低至30美分:兆易创新推出超值型Cortex-M3 MCU
   售价低至30美分:兆易创新推出20pin封装的GD32F130Fx系列超值型Cortex-M3 MCU   GigaDevice全新的GD32F130Fx系列TSSOP20封装超值型MCU批量售价低至30美分,持续以最优价格释放Cortex-M3主流内核的卓越动力,并为成本敏感应用带来更高效能。   集微网消息,2016年5月5日 —日前,业界领先的存储器和控制器供应商兆易创新(GigaDevice)宣布推出GD32微控制器家族的新成员,20引脚的GD32F130Fx系列超值型Cortex-M3 MCU。新产品在支持超低开发预算需求的基础上持续释放Cortex-M3内核的卓越动力,并为提升及取代传统的8位和16
[手机便携]
意法半导体在IIC上展示可持续发展技术
中国深圳,2011年2月23日 —— 全球领先半导体生产商之一意法半导体(STMicroelectronics,简称ST)以“满足地球与人类的需求”为主题,参展2月24日至26日在深圳举办的第十六届中国国际集成电路研讨会暨展览会(IIC China 2011)。意法半导体坚持一贯的创新承诺,将展示最新的先进半导体技术和芯片产品,满足终端用户对更高性能产品和服务日益增长的需求,应对越来越艰巨的世界环境挑战。 “中国是世界上最大的增长最快的发展中国家,可持续发展问题在中国变得越来越突出。”意法半导体执行副总裁兼大中华与南亚区总裁纪衡华(Francois Guibert)表示,“意法半导体坚信:满足地球和人类需求必须遵守可持续
[半导体设计/制造]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved