资源描述:
《浙江大学 嵌入式ARM题库.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ARM练习题1.描述ARM处理器对异常中断的响应过程。2.写一个IRQ中断异常处理程序示例,要求允许嵌套IRQ中断发生。(注意:该IRQ中断可能是在执行另一个IRQ中断异常服务程序时发生。)3.简单描述一下ARM7的三级流水线,并说明其对程序设计的影响。4.阅读下面这段代码,并回答以下问题,存储器初始的数据见表1。地址数据0x123456780x000000000x123456740x111111110x123456700x222222220x1234566C0x333333330x123456680x44
2、4444440x123456640x55555555LDRR0,=(0x12345670)LDRR1,[R0,#4]!STRR1,[R0,#4]LDMDBR0!,{R2,R3}表1执行完上述代码段后,R0=0x__________R1=0x__________R2=0x__________R3=0x__________上述代码段中的STR指令是对哪一个存储单元进行操作的?操作后,在该存储单元里的数据是什么?5.寄存器R1里放的数值是0x1,请问执行下面这一段代码后,寄存器R1里的内容是多少?CPSR的高4位
3、是什么内容?解释为什么。LDRR0,Label2STRR0,Label1Label1SUBSR1,R1,#1Label2ADDSR1,R1,#1STRR0,Label3NOPNOPLabel3SUBSR1,R1,#11.写一个对应下面C语言中的if-then-else功能的ARM代码段。intgcd(inta,intb){while(a!=b)if(a>b)a=a-b;elseb=b-a;returna;}2.启动代码中,异常向量表的定义如下LDRPC,ResetAddrLDRPC,UndefinedAdd
4、rLDRPC,SWI_AddrLDRPC,PrefetchAddrLDRPC,DataAbortAddrDCD0xB9205F80LDRPC,[PC,#-0xFF0]LDRPC,FIQ_Addr(a)在异常向量表的定义中,为什么使用LDR指令跳转,而不使用B指令跳转?(b)在异常向量表的定义中,语句“DCD0xB9205F80”起什么作用?(c)在异常向量表的定义中,对应IRQ中断的入口为什么使用“LDRPC,[PC,#-0xFF0]”这一条指令,解释原因?3.编写一段蜂鸣器程序(要求有注释),实现由GPI
5、O的P0.7管脚控制蜂鸣器周期性的蜂鸣,其流程图如下置位P0.7口,关闭蜂鸣器延时P0.7选择连接GPIO延时设置P0.7为输出状态清零P0.7口,蜂鸣器蜂鸣开始1.将8位无符号整数变量Data的值输出到P0.0~P0.7,使用IOxPIN来实现,编写相应代码并要求加注释。2.外部中断唤醒掉电设计:以下代码是初始化外部中断0,用它来唤醒掉电的LPC2114,请补充代码PINSEL0=0X00000000;PINSEL1=___________;//设置I/O口连接,P0.16设置为EINT0EXTMODE=
6、__________;//设置EINT0为电平触发模式EXTPOLAR=__________;//设置EINT0为低电平触发EXTWAKE=___________;//允许外部中断0唤醒掉电的CPUEXTINT=___________;//清除外部中断标志3.计算PLL设置值:假设有一个基于LPC2114的系统,所使用的晶振为11.0592MHz石英晶振。请计算出最大的系统时钟cclk频率为多少MHz?此时PLL的M值和P值各为多少?请列出计算公式,并编写设置PLL的程序段。4.存储器映射控制重新映射前后的
7、地址转换前内核地址总线值MEMMAP值转换后存储器地址总线值0x00000000~0x0000003F000110110x00000040~0xFFFFFFFF任意5.对哪些区域的访问会产生数据终止异常,对哪些区域访问会产生预取指中止异常?什么时刻会真正产生预取指中止?6.向量IRQ和非向量IRQ中断的区别和各自的特点?7.简要说明UART的基本操作方法及流程。8.编写UART0通信程序(包括所有必要的初始化代码),要求采用向量中断的方式(最高优先级),从上位机接收数据。设置为6位数据位,2位停止位,奇偶校
8、验选择为偶数,串口通信波特率为115200bps,使能FIFO,并设置触发点为14个字符。这里嵌入式系统的处理器时钟频率为Fcclk,外设时钟频率为Fpclk。(注:要求每行代码加注释)9.下面是一段uart0通信实验程序(中断方式)主函数的代码,请解释其中划线部分程序的意思。intmain(void){PINSEL0=0x00000005;________________________________UART