arm9嵌入式系统设计基础教程答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
arm9嵌入式系统设计基础教程答案
【篇一:arm嵌入式系统课后习题(部分)答案】
式系统从大的方面分为(嵌入式系统硬件平台)和(嵌入式软件)
两大部分。
1.2驱动层程序一般包括(硬件抽象层hal)、(板级支持包bsp)
和(设备驱动程序)。
1.3嵌入式系统核心是嵌入式处理器,可分为(嵌入式微处理器)、(嵌入式微控制器)、嵌入式dsp处理器和(嵌入式片上系统soc)4大类。
2.2arm7tdmi处理器分为(arm)和(thumb)两种操作状态。
2.3arm状态下,sp寄存器指的是(r13)、lr寄存器指的是
(r14)、pc寄存器指的是(r15).
2.4arm处理器支持的数据类型中,字节为(8)位、半字为(16)位、字为(32)位。
3.1arm7tdmi(-s)指令集包括(arm)指令集和(thumb)指令集。
3.2ldr指令用于从(存储器)中将一个32位的字数据传送到(目的
寄存器)中。
3.3指出下面各条指令的寻址方式。
sub r0,r1,r2 ;寻址方式:(寄存器寻址)。
subsr0,r0,#1 ;寻址方式:(立即寻址)。
movr0,r2,lsl#3;寻址方式:(寄存器移位寻址)。
swp r1,r1,[r2] ;寻址方式:(寄存器间接寻址)。
ldr r2,[r3,#0x0c] ;寻址方式:(基址寻址)。
4.3arm汇编语言源程序中语句一般有(指令)、(伪指令)、(伪
操作)和宏指令组成。
6.1对flash存储器的编程可通过(jtag仿真/调试器)、( isp )
和(iap)3重方法来实现。
6.2异常向量表可以来自4个不同的存储器区域,分别是(片内
flash )、(片内sram )、( boot block )和片外存储器。
6.3lpc2000系列的定时器主要用于3个方面:(对内部事件进行计数的间隔定时器)、(通过捕获输入实现脉宽解调器)、(自由
运行的定时器)。
二选择题
1.1可以表示微控制器的缩略词是( b )
a. mpu
b. mcu
c. wdt
d.spi
1.2rom类存储器包括( abd )
a. nor flash
b. eprom
c. sram
d. prom
1.3不属于arm的系列是( d )
a. mcs-96
b. 80c51
c. lpc2000
d.80x86
2.2arm7处理器系列采用( a )级流水线。
a. 3
b. 5
c. 6
d. 8
2.3下面arm处理器模式中属于特权模式的有( bcd )
a. 用户模式
b. 中断模式
c. 系统模式
d. 管理模式
3.2ldm(或stm)指令允许一条指令最多传送( c )个寄存器。
a. 4
b. 8
c. 16
d. 24
3.3bl指令限制在当前指令的( b )地址范围。
4.2arm汇编程序所支持的变量有( abc )
a. 数字变量
b. 逻辑变量
c. 字符变量
d. 字符串变量
4.3汇编语言程序用到c语言程序变量的情况实质上是一个引用不同文件定义的变量问题。解决这个问题的办法就是使用关键字( b )。
a. atpcs
b. import
c. export
d. code32
6.1一个异常向量表实际占用了( c )个字的存储单元。
a. 4
b. 8
c. 16
d. 64
6.3lpc200系列arm7微控制器的uart接收器fifo触发器可设置为( abcd )个字节。
a. 1
b. 4
c. 8
d. 14
三简答题
1.1什么是嵌入式系统?列举几个熟悉的嵌入式系统的产品。
答:嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬
件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有
严格要求的专用计算机系统。
常见的有汽车、手机、mp3等等。
1.2嵌入式系统由哪几部分组成?
答:嵌入式系统从大的方面分嵌入式系统硬件平台和嵌入式软件两
大部分,其中软件部分又具体分为若干层次。对于包含有操作系统
的嵌入式系统来讲,嵌入式系统软件结构包含4个层次:设备驱动层、实时操作系统rtos层、应用程序接口api层、应用程序层。
1.3简述嵌入式系统的特点。
答:系统内核小;专用性强;系统精简;软件固化;嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统;嵌入式系统开发需要开发工具和环境。
2.1简述arm可以工作的几种模式。
答:arm体系结构支持7种处理器模式:用户模式、快中断模式、中断模式、管理模式、中止模式、未定义模式和系统模式。(除用户模式外,其他模式均为特权模式)
2.2arm7内部有多少个寄存器?
答:在arm7tdmi处理器内部有37个用户可见的32位寄存器,其中31个通用寄存器,6个状态寄存器。
2.3描述一下如何禁止irq和fiq的中断?
答:在一个特权模式下,都可通过置位cpsr中的i位来禁止irq。在一个特权模式中,可通过置位cpsr中的f标志来禁止fiq异常。
2.4请描述arm7tdmi进入异常或退出异常时内核有何操作?
答:当异常发生时,arm处理器尽可能完成当前指令(除了复位异常)后,再去处理异常,并执行如下动作:
①进入与特定的异常相应的操作模式;
②将引起异常指令的下一条指令的地址保存到新模式的r14中;
③将cpsr的原值保存到新模式的spsr中;
④通过设置cpsr的第7位来禁止irq;如果异常为快中断,则要设置cpsr的第6位禁止快中断;
⑤给pc强制赋向量地址值。
退出异常时:
①将lr中的值减去偏移量后移入pc,偏移量根据异常的类型而有所不同;
②将spsr的值复制回cpsr;
③清零在入口置位的中断禁止标志。
(p28)指令长度及数据类型
arm微处理器的指令长度可以是32位(在arm状态下),也可以是16位(在thmb状态下)。装载/保存指令可以对字节、半字和字进行操作,当装载字节或半字时自动实现零扩展或符合扩展。
arm处理器支持下列数据类型:
字节(1字节=8位);
半字(半个字=16位,必须分配为占用2字节(b));
字(1个字=32位,必须分配为占用4字节)