ARM嵌入式系统习题课1._第1页
ARM嵌入式系统习题课1._第2页
免费预览已结束,剩余8页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ARM 嵌入式系统习题课第二章ARM7体系结构(7)CPSR 寄存器中哪些位用来定义处理器状态?寄存器 CPSR 为当前程序状态寄存器, 当控制位 T 置位时, 处理器处丁 Thumb 状态,执行 Thumb 指令;当控制位丁消零时,处理器处于 ARM 状态, 执行 ARM 指令。(8)描述一下如何禁止 IRQ 和 FIQ 的中断?标志位 I 和 F 都是中断禁止标志位,用來使能或禁止 ARM 的两种外部屮断源, 具体设置如下:_&当控制位 I 置位时,IRQ 中断被禁止,否则允许 IRQ 中断使能;当控制位 F 置位时,FIQ 中断被禁止,否则允许 FIQ 中断使腿。 2、怎义 RO

2、 =0 x1234567&假设使用存储指令将 RO 的值放在 0 x4000 单元中。 如果W 储器格式为大端格式,请写出在执行加载指令将存储器 0 x4000 单元 内容取出存放到 R2 寄存器操作后所得 R2 的值。如果存储器改为小端格武, 所紂的 R2 值又为多少?低地址 0 x4000 单元的字节内容分别是多少?地址大端模式小端模式0 x400378120 x400256340 x4001560 x400012783.请描述一卜 ARM7TDMI 产生开常的条件是什么?各种丹常会使处理器进入 哪种模式?进入异常时内核有何操作?各种异常的返冋指令又是什么?(1)只要正常的程序流暂

3、时被中止,处理器就会进入开常模式。例如在用 户模式下执行程序时,当外设向处理器内核发出中断请求导致内核从用户模 式切换到异常中断模式。(2)软件中断异常(SWI)、未定义的指令、中止(预取中止、数据中 止)、快速中断(FIQ).中断(IRQ).复位。(3)a、将异常处理程用的返回地址(加固定的偏移量)保存到相应的异 常模式卜的 LR,开常处理程序完成后的返回可通过将 LR 的值减去偏移量后 写入 PC;b、将 CPSR 的当前值保存到相应异常模式下的 SPSR;c、 设置 CPSR 为相应的异常模式d、设置 PC 为和应异常处理程序的屮断入口向量地址,跳转至 i 脚 I 应的异常中断处理程序执

4、行。d(4)中断快速中断(FIQ) 未足义的指令 预取指中止 数据中止 软件中断异常 复位注:“MOVS PC, R14_svcM是指在管理模武卜执行“MOVS PC,R14”.第三章ARM7TDMI (-S)指令系统(1)ARM7TDMI(-S)有儿种寻址方式? “ LDR R1 ,R0,#0 x08”属于哪种寻址 方式?答:有 8 种寻址方式:1.寄存器寻址 2.立即寻址 3.寄存器移位寻址 4.寄存器 间接寻址 5.基址寻址 6.多寄存器寻址 7.堆栈寻址 8.和对 d 址;“LDR R1 ,R0,#0 x08H属于基址寻址。(3) ARM 指令中的第 2 个操作数有哪儿种形式?列举 5

5、 个 8 位图立即数。答:a.常数表达式(8 位图)b.寄存器方式 c.寄存器移位方式:八位位图即常熟是由一个八位的常数循环移位偶数位得到的0 x3FC、 0、 0XF0000000、 200、 0 xF0000001o.请指出 MOV 指令与 LDR 加载指令的区别仪用途?k答: MOV 指令的源操作数是常数或(带偏移量的)寄存器, 用于寄存器 Z 间的数据传送;LDR 指令的源操作数足地址,用于存储器到寄存器的数据传 送。SUBSPC, R14_irq,#4SUBSPC, R14_fiq,#4MOVSPC, R14_und(6) CMP指令是如何执行的?写一程序, 判断R1的值是否大于0

6、x30,是则 将R1减去0 x30o答:CMP 指令是将寄存器 Rn 的值减去 operand2 的值,根据操作的结果更新 CPSR 屮的札 I 应条件标吉位,以便肩面的指令根据和应的条件标,忐來判断是 否执行。(8)请指出 LDR 伪指令的用法。指令格式与 LDR 加栈指令的区别是什么? 答:LDR 伪指令用丁加载;32 位的立即数或-个地址值到指定的寄心器, 它述常用于加载芯片外围功能部件的寄存器地址(32 位立即数),一实现 各种控制操作,与 ARM 指令的 LDR 相比,伪指令的 LDR 的参数有号。比如:LDR R0, =0 x123456782、(1) OxFFFFOOOF (A)

7、+OxOOOOFFFl (B)0 x00000000NZCV=0110如果两个操作数是有符号的,A 是负数,B 是正数,和是 0,没有溢出,所 以 V=0如果两个操作数是无符号数,和是 6 有进位,所以 C=1o比如:CMPcondCMPLDRLESUBR1,PC,R1(7)答:Rn,operand2#0 x30;将 R1 与常数 0 x30 比较LR;MOV或 BX调用了程序是用 B指令还是用 BL指令?诘写出返回了程序的指令。 调用子程序是用BL 指令:0 x82345677NZCV=1001如果两个操作数足有符号数,A 足正数,B 是正数,和足负数,有溢出,所 以 V=1。如果两个操作数

8、是无符号数,没有进位,所以 c=o67654321(A)j+23110000(B)OX0568F421NZCV=0000,如果两个操作数足有符号数,A 足匸数,B 足世数,和足匸数,没負誚出, 所以 v=o。如果两个操作数是无符号数,没有进位,所以 c=o。第四章LPC2000系列ARM硬件结构(2)请描述 LPC2210/2200 的 P0.14、P1.20. P1.26. BOOT1 和 BOOT0 弓 I 脚 在芯片复位时分别有什么作用?并简单说明LPC2000系列的ARM7微控制器 的复位流程答:P0.14 的低电平强制片内引导装载程序复位后控制器件的操作即进入 ISP 状态P1.20

9、 的低电平使 P1.25-1.26 复位后用作跟踪端口P1.26 的低电平使 P1.31-1.26 复位后用作一个调试端U当芯片在复位时,BOOTO 与 BOOT1 引脚决定芯片复位后运行片内还是 片外存储器上的用户代。、.当引脚为低电平时,器件复位,I/O 口和外围功能进入获认状态,处理器 从地址零开始执行程序,复位信号足具肴迟滞作用的 TTL 电平。(3)LPC2000 系列 ARM7 微控制器对向量农有何要求(向量农的保留字)?答:向量农所有数据 32 位累加和为零(OxOOOOOOOOOxOOOOOO1C 的 8 个字 的机器码累加),才能脱机运行用户程序,这是 LPC2114/212

10、4/2212/2214 的特性(4)如何启动 LPC2000 系列 ARM7 微控制器的 ISP 功能?相关电路该如何设计?答:有两种情况可以使用芯片进入 ISP 状态(1)将芯片的 P0.14 引脚拉低后, 复位芯(2)0X7FFFFFFF(A)(B)片,町进入 ISP 状态:(2)在芯片内部五有效用户代码时,Boot Block 自动进入 ISP状态。_如果用户需要使用 ISP 功能,则方以设计,个跳线将 P0.14 连接到地,若需要进入 ISP,将此跳线短接即门 J,若想要脱机运行程序,将此跳线断丿 I:即可。(6)若 LPC2210/2220 的 bankO 存储块使用 32 位总线,

11、访问 bankO 时,地址线 A1、A0 是否有效? EMC 模块中的 BLS0-BLS4 什么功能?答:无效(如果存储器组配宣成 16 位宽,则不需要 A0;8 位宽的存储器组需 要使用AO o );字节定位选择信号。v(7) LPC2000 系列 ARM7 微控制器具仃引脚功能复用特件,那么如何设置某 个引脚为指定功能? P173答:(8) FIQ. IRQ有什么不同,向虽JRQ和非向量IRQ有什么不同?(P189)答: 向量中断控制器VIC具有32个中断请求输A, nf将其编程分为3类,FIQ,向量IRQ和非向量IRQ。FIQ (fast interrpt request)快速小断请求要

12、求具有最岛优先级。如果分配给FIQ的请求多于一个,VIC将中断诘求相或后向ARM处理器产生FIQ信号。 当只有一个中 断被分配为FIQ时町实现最短的FIQ等待,但如果分配给IFIQ级的中断多于FIQ服务程序需要读取FIQ状态寄存器來识别产生中断请求的FIQ屮断源!向逊RQ具自 中等优先级。该级别町分别32个誚求中断的16个。32个请求种的任意个恤川分配 到16个向量IRQ slot中的任意个,其屮slotO具何最高优先级罪向量IRQ的优先级垠 低(9)在使能、 禁止 FIQ 和 IRQ 时,为什么操作 SPSR 寄存器而不操作 CPSR 寄 存器?答:在用户模式下,无法修改 CPSR,只有在特

13、权模式下修改 SPSR 后,通 过退出特权模式,然后恢复 SPSR 到 CPSR才能实现修改 CPSRo(10)ARM 内核对 FIQ、向量 IRQ 和非向戢 IRQ 的响应过程有何不同?(11)向量中断能嵌套吗?请结合 ARM 体系进行阐述? 答:能。但需要重新开中断(13)设置引脚为 GPIO 功能时,如何控制某个引脚单独输入/输出?当需要知道某个引脚为前的输出状态时,是读取 IOPIN 寄存器还是读取 IOSET 寄存 器F答:使用 GPIO 引脚输入/输出方向控制寄存器 QxDIR;为需要知道某个引脚为前的输出状态时,读取 IOPIN 寄存器,IOSET 是 控制引脚输岀搞电平。(16

14、) LPC2114 具右几个 UART 是符合什么标准?哪一个 UART 可用作 ISP 通 信?哪一个 UART 具有 MODEM 接口?答:UARTO, UART1 ; UARTO 用于 ISP 通信,UART1 具有 MODEM 接口。二、计算题假设有一个基 TLPC2114 的系统,所使用的晶振为 11.0592MHz 晶振。请计算出最人的系统时钟为多少 MHz?此时 PLL 的 M 值和 P 值 为多少?并编写 PLL 的程序段解:LPC2214 最人的系统时钟频率是 60MHz, Fcclk=M*Fosc=60MHZ Fosc =11.0592MHz 所以 M=5Fcclk=Fos

15、c *M=55.296MHz又 156MHzFcco320MHzP=Fcco/(Fee I k* 2)当 Fcco 取 156MHZ 时,P=1.3当个 Fcco 収最高频率时即 320 时,P=2.67所以 P=2程序清单:Uint8 PLLSet(uint32 Fcclk,uint32 Fosc,uint32 Fcco) Uint8 i;uint32 plldat;i = (Fcco/Fcclk);switch(i) case 2:plldat=(Fcclk/Fosc)-1 )|(05); break;case 4: plldat=(Fcclk/Fosc)-1 )|(1 5); break;case 8:plldat=(Fcclk/Fosc)-1 )|(25);break;case 16: plldat=(Fcclk/Fosc)-1 )|(35); break;default:return(FALSE);break;PLLCON = 1;PLLCFG = plldat;PLLFEED = Oxaa;PLLFEED = 0 x55; while(PLLSTAT & (1 vv10) = 0); PLLCON = 3;PLLFEED = Oxaa;PLLFEED = 0 x5

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论