嵌入式控制系统课件-第4章LPC2000系列ARM硬件结构(5~9).ppt

上传人:本田雅阁 文档编号:2155556 上传时间:2019-02-23 格式:PPT 页数:79 大小:1.36MB
返回 下载 相关 举报
嵌入式控制系统课件-第4章LPC2000系列ARM硬件结构(5~9).ppt_第1页
第1页 / 共79页
嵌入式控制系统课件-第4章LPC2000系列ARM硬件结构(5~9).ppt_第2页
第2页 / 共79页
嵌入式控制系统课件-第4章LPC2000系列ARM硬件结构(5~9).ppt_第3页
第3页 / 共79页
亲,该文档总共79页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《嵌入式控制系统课件-第4章LPC2000系列ARM硬件结构(5~9).ppt》由会员分享,可在线阅读,更多相关《嵌入式控制系统课件-第4章LPC2000系列ARM硬件结构(5~9).ppt(79页珍藏版)》请在三一文库上搜索。

1、LPC2000系列ARM硬件结构,1.LPC2000系列简介 2.引脚描述 3.存储器寻址 4.系统控制模块 5.存储器加速模块 (MAM) 6.外部存储器控制器(EMC) 7.引脚连接模块 8.GPIO,9.向量中断控制器 10.外部中断输入 11.定时器0和定时器1 12.SPI接口 13.I2C接口 14.UART(0、1) 15.A/D转换器 16.看门狗 17.脉宽调制器(PWM) 18.实时时钟,4.5 存储器加速模块(MAM),概述,LPC2000微控制器扩展了器件内部Flash总线宽度为128位,用于提高处理器的指令执行速度。这个接口通过存储器加速模块(MAM)来控制。,MAM

2、内部结构,LPC2200系列芯片把Flash存储器被分成两组,它们轮番工作,及时的为CPU提供需要的指令和数据,以防止CPU取指暂停。每组Flash存储器都有自己的预取指缓冲区、分支跟踪缓冲区和数据缓冲区。,3,1,2,4,关闭MAM指令执行情况,所有存储器操作请求都会直接对Flash操作,由此产生了CPU停止,等待若干周期的情况。,开启MAM指令执行情况,只要指令存在两个组的指令缓存区中,CPU的指令执行是连续的,由此大大提高了指令执行效率。,4.5 存储器加速模块(MAM),程序顺序执行,每个128位值包括了4个32位ARM指令或8个16位Thumb指令。 在连续执行代码时,通常一个Fla

3、sh组包含当前正在取指的指令和包含该指令的整个Flash行,而另一个Flash组则包含或正在预取指下一个连续的代码行。,4.5 存储器加速模块(MAM),程序出现分支,在预取指缓存区中保存着将要执行的指令,在分支跟踪缓存区中保存着程序跳转后可执行到的指令。,4.5 存储器加速模块(MAM),程序获取数据,当CPU在从Flash中获取数据时,如果这些数据没有出现在MAM的数据缓冲区中,那么MAM会执行一次Flash读操作,并把一个128位的数据行存入数据缓冲区,这样就加快了按顺序访问数据的速度。数据访问使用一个单行的缓冲区,和访问代码时提供两个缓冲区不同,因为数据访问不需要预取指功能。,4.5

4、存储器加速模块(MAM),MAM与Flash编程,Flash编程功能不受存储器加速器模块的控制,而是作为一个独立的功能进行处理。Flash存储器的布线使其每个扇区同时存在于两个组当中,这样扇区擦除操作可同时对两个组执行。,4.5 存储器加速模块(MAM),MAM的操作模式,LPC2000系列芯片允许用户设置MAM的加速级别,使芯片适用于某些对功耗和可预测性有要求的场合。MAM定义了三种操作模式:,4.5 存储器加速模块(MAM),MAM的配置,在复位后,MAM默认为禁止状态。软件可以随时将存储器访问加速打开或关闭。通常我们都会把加速设置为完全使能,这可使程序以最高速度运行。而运行某些要求更精确

5、定时的代码时,我们可以关闭或部分使能MAM,以较慢但可预测的速度运行代码。,4.5 存储器加速模块(MAM),寄存器描述,MAM控制寄存器(MAMCR):,MAMCR1:0:用于MAM的模式控制,具体关系如下表。,MAM定时寄存器(MAMTIM):,MAMTIM2:0:决定使用多少个CCLK周期访问Flash存储器,这样可以调整MAM时序使其匹配处理器操作频率,具体关系如下表。,当访问周期设置为1个CCLk时,实际上关闭了MAM,但是仍可以选择MAM模式对功耗进行优化。 注意:不正确的设定会导致器件的错误操作,4.5 存储器加速模块(MAM),MAM使用注意事项,MAM定时问题: 在改变MAM

6、定时值时必须先关闭MAM。其设置的定时值和系统时钟有如下关系,目的是为了确保Flash的访问周期不会小于50ns ,否则会导致操作错误。,Flash编程问题: 在编程和擦除操作过程中不允许访问Flash存储器。为了防止从Flash存储器中读取无效的数据,在Flash编程或擦除操作开始后MAM将不缓冲任何数据。所以在Flash操作结束后,任何对Flash地址的读操作都将启动新的取指操作。,4.5 存储器加速模块(MAM),MAM应用示例,void MAMSet(uint32 Fcclk) MAMCR = 0; If(Fcclk 200000000) MAMTIM = 1; else if(Fcc

7、lk 40000000) MAMTIM = 2; else MAMTIM = 3; MAMCR = 2; ,MAM部件Flash访问时钟的配置:,1.LPC2000系列简介 2.引脚描述 3.存储器寻址 4.系统控制模块 5.存储器加速模块 (MAM) 6.外部存储器控制器(EMC) 7.引脚连接模块 8. GPIO,LPC2000系列ARM硬件结构,9. 向量中断控制器 10.外部中断输入 11.定时器0和定时器1 12. SPI接口 13. I2C接口 14. UART(0、1) 15. A/D转换器 16. 看门狗 17. 脉宽调制器(PWM) 18. 实时时钟,4.6 外部存储器控制器

8、(EMC),概述,外部存储器控制器是AMBA AHB总线上的一个从模块,它为AMBA AHB系统总线和外部(片外)存储器器件提供了一个接口。,该模块可同时支持多达4个单独配置的存储器组,每个存储器组都支持SRAM、ROM、Flash EPROM、Burst ROM存储器或一些外部I/O器件。,4.6 外部存储器控制器(EMC),特性,支持静态存储器映射器件; 4个存储器组(Bank0 Bank3)可单独配置,每个存储器组可访问16M字节空间; 总线空闲周期可编程; 可对静态RAM器件的读写等待时间进行编程; 可编程外部数据总线宽度8位、16位和32位。,4.6 外部存储器控制器(EMC),引脚

9、描述,注:每个这些引脚是与P1、P2和P3口GPIO功能复用,所以在使用外部总线前首先要正确配置PINSEL2寄存器 。,4.6 外部存储器控制器(EMC),寄存器描述,外部存储器控制器包含4个配置寄存器。每个配置寄存器控制一个外部存储器接口的总线空闲时间、读访问长度、写访问长度、存储器组是否写保护、存储器组的总线宽度的设置等。,4.6 外部存储器控制器(EMC),寄存器描述,IDCY,WST1,IDCY:总线空闲时间控制位。该位控制着一个存储器内部的读写访问之间,以及访问一个存储器组和访问另一个存储器组之间EMC需要给定的“空闲”CCLK周期最小数目,以避免器件间的总线竞争。 计算公式为:空

10、闲CCLK周期数 IDCY +1;,存储器组配置寄存器03(BCFG03):,WST1:读写访问长度控制位。该位控制读访问的长度,以调节对外部存储器的读访问时间。读访问的长度以CCLK周期来计量。 计算公式为:读操作周期长度 WST1 + 3;,WST1=0 1个等待周期,外部存储器读访问波形(WST1=0):,增加1个等待周期,外部存储器读访问波形(WST1=1):,WST1=1,2个等待周期,4.6 外部存储器控制器(EMC),寄存器描述,RBLE,存储器组配置寄存器03(BCFG03):,RBLE:字节定位使能位。在LPC2200微处理器中,EMC提供了一组字节定位选择信号(BLS0BL

11、S3)实现对16位或32位外部存储器组的字节操作。 设定RBLE可实现: 写访问时,RBLE位决定WE信号是否有效(低电平有效); 读访问时,RBLE位决定BLSn信号是否有效(低电平有效)。,4.6 外部存储器控制器(EMC),寄存器描述,WST2,存储器组配置寄存器03(BCFG03):,WST2:写访问长度控制位。和读操作类似,该位控制写访问的长度(对Burst ROM的连续读访问除外),以调节对外部存储器的写访问时间。写访问的长度以CCLK周期来计量。 计算公式为:写操作周期长度 WST2 + 3;,外部存储器写访问波形(WST2=0):,外部存储器写访问波形(WST2=1):,增加1

12、个等待周期,4.6 外部存储器控制器(EMC),寄存器描述,MW,存储器组配置寄存器03(BCFG03):,MW:该位控制相应存储器组的数据总线宽度。,4.6 外部存储器控制器(EMC),寄存器描述,MW控制域(BCFG29:28)与引脚BOOT1:0的关系:,由于Bank0可用于引导程序运行,所以BCFG029:28的复位值与引脚BOOT1:0的设定有关(当BOOT1:0=11时,复位后从片内Flash引导程序运行)。,4.6 外部存储器控制器(EMC),外部存储器接口,LPC2200的外部存储器宽度可设定为8位、16位和32位模式,每一种模式对应的硬件连接都是不同的,原因就是在总线工作模式

13、上存在差别。,4.6 外部存储器控制器(EMC),8位总线宽度,数据总线D7D0有效,字节定位信号中只有BLS0是有效的,总线的工作模式 如表。,说明: 1、如果此时使用BLS0作为存储芯片的写使能信号,那么在执行读取操作时,存储芯片上的读、写使能信号就会同时有效。,4.6 外部存储器控制器(EMC),8位总线宽度连接方式,4.6 外部存储器控制器(EMC),16位总线宽度,数据总线D15D0有效,地址总线A0无效,字节定位信号中BLS0和BLS1有效。,LPC2200操作16位存储器时,需将LPC2200的地址线A1连接到存储器地址线A0处。,总线工作模式如表。,16位存储器件中,高、低字节

14、定位表示方法:,4.6 外部存储器控制器(EMC),16位总线宽度连接方式,4.6 外部存储器控制器(EMC),16位总线操作示例,LPC2000与存储芯片MT45W4MW16 的连接示意图。MT45W4MW16是一款PSRAM芯片,16位总线宽度,容量8M字节 。,RBLE = 1,4.6 外部存储器控制器(EMC),向PSRAM中写入16位数据,uint16 *point16; uint16 data16 = 0x00; point16 = (uint16 *)0x80001020; while(1) *point16 = data16+; ,向PSRAM中0x80001020地址循环写入

15、从0开始递增的数据。,使用逻辑分析仪捕捉到前4次操作的波形。,4.6 外部存储器控制器(EMC),向PSRAM中低字节地址写入8位数据,uint8 *point8; uint8 data8 = 0x00; point8 = (uint8 *) 0x80001010; while(1) * point8 = data8 +; ,向PSRAM中低字节地址0x8 0001010循环写入从0开始递增的8位数据。,WE、BLS0有效,数据线上D7D0有效,D15D8无效,4.6 外部存储器控制器(EMC),向PSRAM中高字节地址写入8位数据,uint8 *point8; uint8 data8 = 0

16、x00; point8 = (uint8 *) 0x80001011; while(1) * point8 = data8 +; ,向PSRAM中高字节地址0x8 0001011循环写入从0开始递增的8位数据。,WE、BLS1有效,数据线上D15D8有效,D7D0无效,4.6 外部存储器控制器(EMC),1、写入16位数据时,EMC将16位数据输出到D15:0,同时使BLS0和BLS1均有效; 2、向“低字节地址”处写入8位数据时,EMC将8位数据输出到D7:0,同时使BLS0输出有效,BLS1输出无效; 3、向“高字节地址”处写入8位数据时,EMC将8位数据输出到D15:8,同时使BLS1输

17、出有效,BLS0输出无效。,16位写操作总结,4.6 外部存储器控制器(EMC),从PSRAM中读取8位数据,uint8 RcvData8; uint8 *point8; point8 = (uint8 *) 0x80001010; while(1) RcvData8 = * point8+; RcvData8 = * point8+; RcvData8 = * point8+; RcvData8 = * point8-; point8-; point8-; ,从PSRAM 0x8000 1010 0x8000 1013循环读取8位数据,读取16位数据时,BLS0和BLS1均有效,有效数据位于

18、:D15:0; 读取“低字节”数据时,BLS0和BLS1均有效,有效数据位于:D7:0; 读取“高字节”数据时,BLS0和BLS1均有效,有效数据位于:D15:8。,4.6 外部存储器控制器(EMC),32位总线宽度,数据总线D31D0有效,地址总线A1、A0无效,字节定位信号中BLS0BLS3有效。 32位存储器件中字节0、1、2、3的定位表示法:,LPC2200操作32位存储器时,需将LPC2200的地址线A2连接到存储器地址线A0处。,4.6 外部存储器控制器(EMC),32位总线宽度连接方式,1.LPC2000系列简介 2.引脚描述 3.存储器寻址 4.系统控制模块 5.存储器加速模块

19、 (MAM) 6.外部存储器控制器(EMC) 7.引脚连接模块 8. GPIO,LPC2000系列ARM硬件结构,9. 向量中断控制器 10.外部中断输入 11.定时器0和定时器1 12. SPI接口 13. I2C接口 14. UART(0、1) 15. A/D转换器 16. 看门狗 17. 脉宽调制器(PWM) 18. 实时时钟,4.7 引脚连接模块,概述,LPC2000系列微控制器的大部分管脚都具有多种功能,即管脚复用,但是同一引脚在同一时刻只能使用其中一个功能,通过配置相关寄存器控制多路开关来连接引脚与片内外设。,01,10,11,P0.0默认为GPIO功能,P0.0选择TXD0功能,

20、配置对应位为01,P0.0选择PWM1功能,配置对应位为10,P0.0选择保留功能,配置对应位为11,4.7 引脚连接模块,LPC2000系列微控制器具有三个32位宽度PINSEL寄存器,其中PINSEL0和PINSEL1控制端口0,PINSEL2根据芯片的不同控制的端口数量也不同 。,寄存器描述,4.7 引脚连接模块,应用示例,PINSEL0 = 0x05 16;,要求将P0.8、P0.9设置为TxD1、RxD1 通过查阅PINSE0寄存器设置表,得到P0.9和P0.8的控制位为PINSEL019:16,当该域设置为0101 (0x05)时选择 RxD1和 TxD1。,为了不影响别的管脚连接

21、设置,通常选择下面的设置方法。,PINSEL0 = (PINSEL0 ,1.LPC2000系列简介 2.引脚描述 3.存储器寻址 4.系统控制模块 5.存储器加速模块 (MAM) 6.外部存储器控制器(EMC) 7.引脚连接模块 8. GPIO,LPC2000系列ARM硬件结构,9. 向量中断控制器 10.外部中断输入 11.定时器0和定时器1 12. SPI接口 13. I2C接口 14. UART(0、1) 15. A/D转换器 16. 看门狗 17. 脉宽调制器(PWM) 18. 实时时钟,4.8 GPIO,引脚描述,LPC2114/2124微控制器具有两个端口P0和P1,可以作为GPI

22、O使用的引脚数为46个。 LPC2210/2212/2214微控制器还包含另外两个端口P2和P3,这个两个端口与外部存储器总线复用,当它们全部作为GPIO使用时,GPIO引脚数多达112个。,GPIO与控制寄存器的关系,引脚,GPIO相关寄存器描述,PINSELx,IOxDIR,IOxCLR,IOxPIN,IOxSET,in,out,1,0,GPIO相关寄存器描述IOxPIN,该寄存器反映了当前引脚的状态。IOxPIN中的x对应于某一个端口,如P1口对应于IO1PIN。所以芯片存在多少个端口,就有多少个IOxPIN分别与之对应。 写该寄存器会将值保存到输出寄存器。 注意:无论引脚被设置为输入还

23、是输出模式,都不影响引脚状态的读出。,PINSELx,IOxDIR,IOxCLR,IOxPIN,IOxSET,in,out,1,0,GPIO相关寄存器描述IOxDIR,当引脚设置为GPIO输出模式时,可使用该寄存器控制引脚的方向。向某位写入1使对应引脚作为输出功能,写入0时作为输入功能。 作为输入功能时,引脚处于高阻态。,PINSELx,IOxDIR,IOxCLR,IOxPIN,IOxSET,in,out,1,0,GPIO相关寄存器描述IOxSET,当引脚设置为GPIO输出模式时,可使用该寄存器从引脚输出高电平。向某位写入1使对应引脚输出高电平。写入0无效。 从该寄存器读回的数据为GPIO输出

24、寄存器的值。,PINSELx,IOxDIR,IOxCLR,IOxPIN,IOxSET,in,out,1,0,GPIO相关寄存器描述IOxCLR,当引脚设置为GPIO输出模式时,可使用该寄存器从引脚输出低电平。向某位写入1使对应引脚输出低电平。写入0无效。 注意:读取该寄存器无效,不能读回输出寄存器的值。,4.8 GPIO,使用GPIO注意要点,引脚设置为输出方式时,输出状态由IOxSET和IOxCLR中最后操作的寄存器决定; 复位后默认所有GPIO为输入模式。,. PINSEL0 .,C代码:,PINSEL0,IO0DIR,IO0CLR,IO0PIN,IO0SET,in,out,1,0,GPI

25、O应用示例设置P0.0输出高电平,P0.0,. uint32 PinStat; PINSEL0 .,C代码:,PINSEL0,IO0DIR,IO0CLR,IO0PIN,IO0SET,in,out,1,0,GPIO应用示例读取P0.0引脚状态,P0.0,IO0PIN,#define DataBus 0xFF PINSEL0 .,使用IOxSET和IOxCLR实现:,GPIO应用示例输出多位数据至IO口,在需要将多位数据同时输出到某几个IO口线时,通常使用IOxSET和IOxCLR来实现,在某些情况下也可以使用IOxPIN寄存器实现。后者可以在多个IO口上直接输出0和1电平。 本例将8位无符号整形

26、变量Data的值输出到P0.0P0.7。,数据输出线:,#define DataBus 0xFF PINSEL0 .,GPIO应用示例输出多位数据至IO口,在需要将多位数据同时输出到某几个IO口线时,通常使用IOxSET和IOxCLR来实现,在某些情况下也可以使用IOxPIN寄存器实现。后者可以在多个IO口上直接输出0和1电平。 本例将8位无符号整数变量Data的值输出到P0.0P0.7。,使用IOxPIN实现:,数据输出线:,1.LPC2000系列简介 2.引脚描述 3.存储器寻址 4.系统控制模块 5.存储器加速模块 (MAM) 6.外部存储器控制器(EMC) 7.引脚连接模块 8. GP

27、IO,LPC2000系列ARM硬件结构,9. 向量中断控制器 10.外部中断输入 11.定时器0和定时器1 12. SPI接口 13. I2C接口 14. UART(0、1) 15. A/D转换器 16. 看门狗 17. 脉宽调制器(PWM) 18. 实时时钟,4.9 向量中断控制器,概述,ARM7TDMI内核具有两个中断输入,分别为IRQ中断和FIQ中断。向量中断控制器(VIC)负责管理芯片的中断源,最多可以管理32个中断输入请求。,CPU 内核 ARM7TDMI-S,4.9 向量中断控制器,程序状态寄存器CPSR与VIC的关系,ARM内核通过CPSR来监视和控制内部的操作,CPSR中的“I

28、”位和“F”位分别用来控制IRQ模式和FIQ模式的使能。,CPU,ARM7TDMI-S,VIC,IRQ,FIQ,CPSR 7 (I),CPSR 6 (F),4.9 向量中断控制器,程序状态寄存器CPSR与VIC的关系,当I = 1时,禁止IRQ中断,当I = 0时,使能IRQ中断,4.9 向量中断控制器,程序状态寄存器CPSR与VIC的关系,当F = 1时,禁止FIQ中断,当F = 0时,使能FIQ中断,4.9 向量中断控制器,中断分类,中断输入请求可以在VIC中被设置为以下三类: FIQ中断:具有最高优先级; 向量IRQ中断:具有中等优先级; 非向量IRQ中断:具有最低优先级;,4.9 向量

29、中断控制器,FIQ中断硬件处理流程,将当前的程序状态寄存器的内容备份 即,SPSR_fiq = CPSR,处理器切换到FIQ模式,禁止IRQ和FIQ中断,即,I = F = 1,保存返回地址 LR_fiq = PC,设置FIQ异常入口地址 PC = 0x1C,发生FIQ异常事件,说明:ARM7不支持FIQ中断嵌套,4.9 向量中断控制器,IRQ中断相应流程,将当前的程序状态寄存器的内容备份 即,SPSR_irq = CPSR,处理器切换到IRQ模式,禁止IRQ中断,即,I = 1,保存返回地址 LR_irq = PC,设置IRQ异常入口地址 PC = 0x18,发生IRQ异常事件,说明:ARM

30、7不支持IRQ中断嵌套,寄存器描述控制寄存器,控制寄存器功能描述,4.9 向量中断控制器,寄存器描述参数设置寄存器,IRQ中断特点,4.9 向量中断控制器,IRQ中断相关寄存器,4.9 向量中断控制器,注意:如果将同一个中断源分配给多个使能的向量IRQ中断,那么该中断源发生中断时,会使用最高优先级(最低编号)的寄存器设置。,产生中断后的服务程序地址,4.9 向量中断控制器,寄存器描述状态寄存器,注意:读取VICRawIntr寄存器将得到所有32个中断请求和软件中断的状态,它不管中断是否使能或分类 。,保护使能寄存器,4.9 向量中断控制器,保护使能寄存器(VICProtection ):,在某

31、些场合可能需要禁止在用户模式下访问VIC寄存器,以提高软件的安全等级。,FIQ中断处理,4.9 向量中断控制器,SUBS PC, LR, #4,IRQ中断处理,4.9 向量中断控制器,硬件处理,软件处理,IRQ中断处理,4.9 向量中断控制器,软件处理,IRQ中断处理,4.9 向量中断控制器,SUBS PC, LR, #4,IRQ中断的设计实例,将定时器0中断分配为向量IRQ通道0,中断服务程序地址设置为Timer0_ISR。,C代码:,步骤:,IRQ通道0控制寄存器 VICVectCntl0,向量IRQ通道0控制寄存器位分配,位,数值,图示IRQ中断的发生过程,1.正在执行用户程序;,2.外

32、部中断0发生中断;,3.VIC硬件将中断服务程序地址装入VICVectAddr寄存器;,4.程序跳转至异常向量表中IRQ入口0x0018处;,5.执行指令跳转至VICVectAddr寄存器中的中断服务地址;,6.中断服务程序执行完毕,返回被中断的用户程序继续执行被中断的代码。,图示IRQ中断的发生过程,IRQ_Eint0,注意: 任何IRQ中断产生之后,微控制器跳转到地址0x18执行代码,该地址处的指令为: LDR PC, PC, #-0xff0 在执行该指令时,PC指向当前指令后的第2条指令,即地址0x20。 该指令将内存地址: 0x20-0xFF0 0xFFFFF030 处的内容存入PC,

33、该地址正是 VICVectAddr寄存器的地址。 所以一条ARM指令即可实现程序向中断服务程序的跳转。,使用VIC的注意要点,4.9 向量中断控制器,如果在片内RAM中调试程序,并使用了中断,那么必须将存储器映射控制设置为内部RAM模式; 将多个中断源设置为FIQ,将增加中断响应延时,所以建议FIQ中断只有一个中断源; ADS1.2规定在定义中断服务函数时必须加入关键字“_irq”,保证函数返回时会切换处理器模式; 在退出中断服务程序时要清零相应外设的中断标志,以及VICVectAddr寄存器,为响应下次中断作好准备。,VIC相关启动代码分析,. /* 初始化VIC */ VICIntEnCl

34、r = 0xffffffff; VICVectAddr = 0; VICIntSelect = 0; .,在LPC2100、LPC2200的启动代码中包含有VIC初始化程序,默认是禁止所有中断。,TargetResetInit函数:,InitStack . MSR CPSR_c,#0xdf LDR SP,=StackUsr MOV PC,R0,在LPC2100、 LPC2200的启动代码中默认是关闭IRQ和FIQ中断的。如果用户需要使用这两个中断,则要设置CPSR寄存器的I位或F位,这需要在特权模式下处理。最简单的方法是在启动代码中设置(修改0xdf值)。,处理器各模式堆栈设置:,VIC相关启

35、动代码分析,CODE32 AREA vectors,CODE,READONLY ENTRY Reset LDR PC, ResetAddr LDR PC, UndefinedAddr . . . DCD 0xb9205f80 LDR PC, PC, #-0xff0 LDR PC, FIQ_Addr ResetAddr DCD ResetInit UndefinedAddr DCD Undefined . . . Nouse DCD 0 IRQ_Addr DCD 0 FIQ_Addr DCD FIQ_Handler,异常向量表:,一旦产生IRQ中断,微控制器切换到IRQ模式,并跳转到向量表0x0018地址执行指令。,一旦产生FIQ中断,微控制器切换到FIQ模式,并跳转到向量表0x001C地址执行指令,然后跳转到FIQ_Handler代码段。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1