嵌入式系统开发技术复习资料.docx
《嵌入式系统开发技术复习资料.docx》由会员分享,可在线阅读,更多相关《嵌入式系统开发技术复习资料.docx(19页珍藏版)》请在冰豆网上搜索。
嵌入式系统开发技术复习资料
嵌入式系统开发技术复习资料(2017年)
1、考试记分方法:
平时成绩20%+期末考试60%+实验20%=100%
2、考试题型
选择题(40分)(20个选择)
问答题(20分)(4~5问答题)
填空题(10分)(暂定填空或者判断)
编程题(20分)(编程题目2~3个)
设计题(10分)(根据硬件电路图编写程序)
1、理解ARM处理器的体系结构
Ø工作模式
Ø寄存器的组织
Ø异常处理
2、掌握ARM的指令格式、寻址方法及其常用的ARM指令
3、掌握ARM常用的伪指令,并能编写简单的ARM应用程序。
4、理解2410A处理器硬件结构
5、理解2410A处理器的最小系统设计
6、理解8/16/32位存储系统接口设计
7、掌握PWM定时器及其应用
8、掌握通用端口及其应用
9、重点掌握中断及其中断控制器及其应用。
10、掌握串口的应用及其编程
一、选择题
1、下列描述中,不属于嵌入式系统特点的是______。
A.实时性强B.专用性强C.系统内核小D.价钱便宜
2.下列不属于嵌入式实时操作系统的是()。
A.UNIXB.ucLinuxC.uC/OSIID.windowsCE
3、在ARM中,常用作程序计数器PC的寄存器是。
A.R12B.R13C.R14D.R15
4、ARM的异常中断优先级最高的是________。
A.FIQB.IRQC.RESETD.SWI
5、下列________不是使用S3C2410A处理器的I/O端口时涉及到的特殊功能寄存器。
A.端口控制寄存器B.端口数据寄存器
C.端口时钟寄存器D.端口上拉电阻寄存器
6、S3C2410A处理器的存储器分为8个BANK空间,常用于SDRAM存储空间的起始地址是。
A.0X20000000HB.0X30000000HC.0X40000000HD.0X50000000H
7、外部中断掩码寄存器清零时使能相应中断,置1时屏蔽中断,在复位的时候EINTMASK的值是。
A、0XFFFFF0HB、0XFFFFFFC、0XFFFFFFF0HD、0XFFFFFFFF
8、当看门狗定时器减到零时,产生PCLK周期的复位信号。
A.16个B.32个C.64个D.128个
9、UART串行通信中,一帧数据中的起始位有位。
A.1位B.2位C.3位D.4位
10、S3C2410X处理器的中断控制器可以接收个中断请求。
A.24个B.32个C.56个D.64个
11、RS232-C串口通信中,表示逻辑1的电平是(D)。
A、0vB、3.3v
C、+5v~+15vD、-5v~-15v
12、ARM汇编语句“ADDR0,R2,R3,LSL#1”的作用是(A)。
A.R0=R2+(R3<<1)
B.R0=(R2<<1)+R3
C.R3=R0+(R2<<1)
D.(R3<<1)=R0+R2
13、IRQ中断的入口地址是(C)。
A、0x00000000B、0x00000008
C、0x00000018D、0x00000014
14、和PC系统机相比嵌入式系统不具备以下哪个特点(C)。
A、系统内核小B、专用性强
C、可执行多任务D、系统精简
15、ADDR0,R1,#3属于(A)寻址方式。
A.立即寻址B.多寄存器寻址
C.寄存器直接寻址D.相对寻址
16、GET伪指令的含义是(A)
A.包含一个外部文件B.定义程序的入口
C.定义一个宏D.声明一个变量
17、和PC机系统相比,下列哪个不是嵌入式系统独具的特点()
A、系统内核小B、专用性强
可执行多任务D、系统精简
18、ARM公司是专门从事()
A、基于RISC技术芯片设计开发B、ARM芯片生产
软件设计D、ARM芯片销售
19、ARM9系列微处理器是()
A、三级流水线结构B、四级流水线结构
C、五级流水线结构D、六级流水线结构
20、在所有工作模式下,()都指向同一个物理寄存器,即各模式共享
A、R0-R7B、R0-R12C、R8-R12D、R13,R14
21、当异常发生时,寄存器()用于保存CPSR的当前值,从异常退出时则可由它来恢复CPSR.
A、SPSRB、R13C、R14D、R15
22、IRQ中断的优先级别是(D)。
A.1B.2
C.3D.4
23、LDRR2,[R3,#128]的寻址方式是(C)。
A.寄存器寻址B.寄存器移位
C.变址寻址D.间接寻址
24、ARM处理器的工作模式有(C)种。
A.5B.6
C.7D.8
25、能实现把立即数0X3FF5000保存在R0中的指令是()
A、LDRR0,=0X3FF5000B、LDRR0,0X3FF5000
C、MOVR0,0X3FF5000D、MOVR0,=0X3FF5000
26、ARM指令LDMIAR0,{R1,R2,R3,R4}实现的功能是()
R1←[R0],R2←[R0+4],R3←[R0+8],R4←[R0+12]
R1←[R0],R2←[R0-1],R3←[R0-2],R4←[R0-3]
R1←[R0],R2←[R0+1],R3←[R0+2],R4←[R0+3]
R1←[R0],R2←[R0-4],R3←[R0-8],R4←[R0-12]
27、对ARM处理器说法不正确的是()。
A、小体积、低功耗、低成本、高性能
B、支持Thumb(16位)/ARM(32位)双指令集
C、只有Load/Store指令可以访问存储器
D、寻址方式多而复杂
28、下列描述不属于RISC计算机的特点的是(C)。
A.流水线每周期前进一步。
B.更多通用寄存器。
C.指令长度不固定,执行需要多个周期。
D.独立的Load和Store指令完成数据在寄存器和外部存储器之间的传输。
29、存储一个32位数0x2168465到2000H~2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容为(D)。
A、0x21B、0x68
C、0x65D、0x02
30、存储一个32位数0x876165到2000H~2003H四个字节单元中,若以小端模式存
储,则2000H存储单元的内容为(C)。
A、0x00B、0x87
C、0x65D、0x61
31、若R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令LDRR0,[R1,#8]!
后R0的值为(D)。
A.0x2000B.0x86
C.0x2008D.0x39
32、在上机实验中,ADS开发环境下,调试程序用(A)软件
A、AXDB、DebugC、GccD、Make
33、指令MSRCPSR_C,R0实现的功能是()
A传送R0的内容到CPSR中,更新CPSR
B传送R0的内容到CPSR中,但仅修改其控制域
C传送CPSR的内容到R0
D传送CPSR的控制域内容到R0
34、同CISC相比,下面哪一项不属于RISC处理器的特征()
A采用固定长度的指令格式,指令规整、简单、基本寻址方式有2~3种。
B减少指令数和寻址方式,使控制部件简化,加快执行速度。
C数据处理指令只对寄存器进行操作,只有加载/存储指令可以访问存储器,以提高指令的执行效率,同时简化处理器的设计。
D、RISC处理器都采用哈佛结构。
35、()伪指令用于定义一个代码段或数据段。
A、RLISTB、DCBC、MAPD、AREA
36、在下列ARM处理器的各种模式中,只有()模式不可以自由地改变处理器的工作模式。
A、用户模式(User)B、系统模式(System)
C、终止模式(Abort)D、中断模式(IRQ)
37、通常所说的32位微处理器是指()
A、地址总线的宽度为32位B、处理的数据长度只能为32位
C、CPU字长为32位D、通用寄存器数目为32个
38、在ARM体系结构中,要从主动用户模式(User)切换到超级用户模式(Supervisor),应采用()方法。
A直接修改CPU状态寄存器(CPSR)对应的模式
B先修改程序状态备份寄存器(SPSR)到对应的模式,再更新CPU状态
C使用软件中断指令(SWI)
让处理器执行未定义指令
39、寄存器R13除了可以做通用寄存器外,还可以做(C)。
A、程序计数器B、链接寄存器
C、栈指针寄存器D、基址寄存器
40、FIQ中断的入口地址是(A)。
A、0x0000001CB、0x00000008
C、0x00000018D、0x00000014
41、ARM指令集和Thumb指令集分别是(D)位的。
A.8位,16位B.16位,32位
C.16位,16位D.32位,16位
42、ARM寄存器组有(D)个寄存器。
A、7B、32
C、6D、37
42、若R1=2000H,(2000H)=0x28,(2008H)=0x87,则执行指令LDRR0,[R1,#8]!
后R0的值为(D)。
A.0x2000B.0x28
C.0x2008D.0x87
43、寄存器R15除了可以做通用寄存器外,还可以做(A)
A.程序计数器B.链接寄存器
C.堆栈指针寄存器D.基址寄存器
44、ARM指令集是(B)位的。
A.16B.32
C.8D.24
45、假设R1=0x31,R2=0x2则执行指令ADDR0,R1,R2LSL#3后,R0的值是(C)
A.0x33B.0x34
C.0x39D.0x38
46、寄存器R13除了可以做通用寄存器外,还可以做(C)
A、程序计数器B、链接寄存器
C、栈指针寄存器D、基址寄存器
47、ARM寄存器组有(C)个状态寄存器
A、7B、32
C、6D、37
48、和PC机系统相比下列哪个不是嵌入式系统独具的特点(C)
A、系统内核小B、专用性强
C、可执行多任务D、系统精简
49、嵌入式系统有硬件和软件部分构成,以下(C)不属于嵌入式系统软件。
A.系统软件B.驱动C.FPGA编程软件D.嵌入式中间件
50、下列CPSR寄存器标志位的作用说法错误的是(D)。
A.N:
负数B.Z:
零C.C:
进位D.V:
借位
51、有如下程序
main()
{
intx=1,a=0,b=0;
switch(x)
{
case0:
b++;
case1:
a++;
case2:
a++;b++;
}
printf("a=%d,b=%d\n",a,b);
}
该程序的输出结果是(A)。
A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=2
52、若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是(D)。
A.函数调用可以作为独立的语句存在
B.函数调用可以作为一个函数的实参
C.函数调用可以出现在表达式中
D.函数调用可以作为一个函数的形参
53、以下说法正确的是(C)。
A.C语言程序总是从第一个的函数开始执行
B.在C语言程序中,要调用函数必须在main()函数中定义
C.C语言程序总是从main()函数开始执行
D.C语言程序中的main()函数必须放在程序的开始部分
54、寄存器R15用作(B)。
A.栈指针寄存器B.程序计数器
C.当前程序状态寄存器D.基地址寄存器
55.通用计算机中使用的内存条属于________。
A.SRAMB.DRAMC.FLASHD.EEPROM
56.ARM寄存器中,用于保存程序断点地址,便于子程序或中断程序正确返回的寄存器是_____________。
A.LRB.PCC.CPSRD.SPSR
57.指令LDRR0,[R1],#4表示的意思是_____________。
A.R0=mem32[R1+4]B.R0=mem32[R1+4];R1=R1+4
C.R0=R1+4D.R0=mem32[R1];R1=R1+4
58.ATPCS中规定,数据堆栈使用的是___________类型。
A.EDB.FDC.EAD.FA
59.ARM寄存器组中,用于保存当前程序运行状态的是_______。
A.SPB.LRC.CPSRD.SPSR
60.从指令LDRHR0,[R2]可知道,执行结束后,R0中存放的数据是________。
A.字符数据B.8位数据C.16位半字D.32位的字
61.下列__________文件不可能出现在ARM源程序中。
A.*.sB.*.bC.*.hD.*.c
62.S3C2410X处理器内集成A/D转换模块的数据宽度是_____。
A.8位B.10位C.12位D.16位
63.下列不属于嵌入式实时操作系统的是()。
A.UNIXB.WinCEC.uC/OSIID.VxWorks
64.下列________不可能做嵌入式系统的中央处理单元。
A.DSPB.FPGAC.USB接口芯片D.微处理器
65.ARM寄存器中,用于保存程序堆栈地址的是__________。
A.LRB.PCC.CPSRD.SP
66.ARM的嵌入式程序设计中,若子程序调用过程中带参数,则使用寄存器或堆栈来传递,具体第二个参数使用_______来传递。
A.堆栈B.R1C.R2D.R3
67.为了方便程序移植和重用,软件设计通常采用______。
A.低级语言B.高级语言C.混合语言D.没有关系
68.Thumb指令的编码是_________。
A.8位B.16位C.26位D.32位
69.指令LDRR0,[R1,#8]表示的意思是_____________。
A.R=mem32[R1+8]B.R0=mem32[R1+8];R1=R1+8
C.R0=R1+8D.R0=mem32[R1];R1=R1+8
70.下列中断中,响应时间最快的是_______。
A.FIQB.IRQC.向量中断D.非向量中断
71.ARM指令中,对于直接寻址的立即数存在合法性,下列不合法的立即数是_________。
A.0xF200B.0x128C.0x101D.0x1080
72.S3C2410A处理器的存储器分为8个BANK空间,每个Bank空间的最大容量是________。
A.8MBB.32MBC.64MBD.128MB
73、S3C2410A中有多少个PWM定时器。
A、3B、4C、5D、6
二、填空题
1、嵌入式系统的设计可以分成三个阶段:
分析、设计和实现
2、目前使用的嵌入式操作系统主要有WindowsCE/WindowsMobileLinux、uCos、和Symbian
3、XScale微处理器使用的是ARM公司ARMV5TE版内核和指令集
4、微处理器有两种总线架构,使用数据和指令使用同一接口的是冯诺依曼,分开的指令和数据接口、取指和数据访问可以并行进行的是哈佛结构
5、ARM微处理器有七种工作模式,它们分为两类非特权模式、特权模式。
其中用户模式属于非特权模式
6、ARM核有两个指令集,分别是ARM、Thumb、
8、ARM微处理器复位后,PC(R15)的地址通常是0X0,
7、ARM微处理器复位后,PC(R15)的地址通常是0X0.初始的工作模式是supervisor。
9、在ARM体系构架中对复杂的内存管理是通过系统控制协处理器cp15和MMU(存储管理部件)来进行的。
当系统发生DataAbort(数据)异常和PrefetchAbort(指令领取)异常时,异常处理程序透过嵌入式操作系统的内存管理机制,通过MMU交换物理内存和虚拟内存的页面,以保证程序正常执行。
10、构建嵌入式系统开发环境的工具链有多种,其中开放源码的工具链是GNU工具链,ARM公司提供的工具链是ADS工具链
11、ARM处理器有两种总线架构,数据和指令使用同一接口的是,数据和指令分开使用不同接口的是。
12、ARM核有多个寄存器,其中大部分用于通用寄存器,有小部分作为专用寄存器,寄存器用于存储PC,R13通常用来存储。
13、ARM支持两个指令集,ARM核因运行的指令集不同,分别有两个状态、,状态寄存器CPSR的位反映了处理器运行不同指令的当前状态。
14、串行通信方式有三中单工通信、双工通信和半双工通信。
15、ARM7指令系统采用三级流水线指令,分别包括:
取指、译码和执行。
16、在ARM处理器的各种模式中,大多数应用程序运行在(用户)模式,当一个高优先级中断产生时会进入(快速中断)模式,在复位或软件软中断时进入(特权)模式
17、ARM存储器有两种存储模式,即大端模式和小端模式。
假设Y=0x46134存储在2000H~2003H四个内存单元中,若以小端模式存储,则(2000H)=__0x34__、(2001H)=0x61_、(2002H)=_0x04_、(2003H)=__0x00__。
18、在CPU的状态寄存器中,如果符号标志为“1”,表示运算结果为(负);如果进位标识为“0”,表示(无进位或借位)。
19、一个嵌入式系统结构有典型的四层组成,包括:
硬件层、中间层、软件层和功能层。
三、简答题
1.什么是嵌入式系统,请至少举出10种嵌入式系统的产品。
2.嵌入式系统与PC机的主要区别有那些?
3.请举例说明嵌入式C程序设计中,使用冗余变量的作用。
4.ARM的异常中断包含哪些类型?
它们的优先级顺序是怎样?
5、BIC指令的作用是什么?
6、如何在特权模式下用ARM汇编指令使能IRQ中断
7、在存储和加载中,“!
”的功能是什么?
8、在执行SWI指令时会发生什么?
9、SWP指令的优点是什么?
10、BX指令和BL指令有什么不同?
11、CMP指令的操作数是什么?
写一个程序,判断R1的值是否大于0X30,是则将R1减去0X30
12、在用户模式或系统模式下读取SPSR寄存器会有何结果?
13、在S3C2410A处理器中,有哪些I/O只能设置为GPIO输出模式。
14、嵌入式开发环境主要包括哪些组件?
答:
嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括
●宿主机
●目标机(评估电路板)
●基于JTAG的ICD仿真器、或调试监控软件、或在线仿真器ICE
●运行于宿主机的交叉编译器和链接器、以及开发工具链或软件开发环境
●嵌入式操作系统
15、ARM核中什么寄存器用于存储PC?
R13通常用来存储什么?
R14通常用来存储什么?
答:
R15用于程序计数寄存器PC,R13通常用来做堆栈指针寄存器,R14通常用来做链接寄存器,保存函数调用的返回地址
16、什么是大端格式,什么是小端格式,在RAM920T内核的系统中,常采用什么模式?
17、简述S3C2410的I/O端口的控制寄存器,数据寄存器、上拉电阻允许寄存器的作用?
18、S3C2410的中断模式有哪两种,如何设置中断模式?
19、S3C2410UART的波特率如何确定的?
20、ARM处理器有几种工作模式?
并做说明每种工作模式的含义。
21、目前使用的嵌入式操作系统主要有哪些?
请举出四种较常用的。
22、ARM系统中的堆栈有四种,如下图。
请按图标出四种堆栈的类型。
ATPCS编程规范约定使用的堆栈是哪一种?
23、请根据实验环境环境,阐述如何搭建一个嵌入式开发环境?
24、简述再进行基于ARM核的嵌入式系统软件开发时,调用如下函数的规则约定。
25、简述嵌入式系统的概念、组成及特点。
答:
嵌入式系统是以应用为中心,以计算机技术为基础,采用可剪裁软硬件,适用于对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。
一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成。
其特点有
●嵌入式系统通常是面向特定应用的
●嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物
●嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余
●嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行
●为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中
嵌入式系统本身不具备自举开发能力
26、ARM处理器有几种工作模式?
并做说明每种工作模式的含义。
27、比较Nandflash与Norflashde的异同?
28、简述BLX、SWI、STM、LDM、MOV、MVN的含义。
29、ARM常见的寻址方式有哪些?
四、根据要求,编写程序
1、写一条ARM指令,完成操作r1=r2*4
2、初始值R2=5,R3=4,R4=3,执行指令SUBSR2,R3,R4,LSR#2后,寄存器R2,R3的值分别是多少?
3、说明指令STMIAr12!
{r0-r11}的操作功能。
4、请写一段程序,关闭中断;
5、请写一段程序,开启中断;
6、请写一段程序,改变处理器的工作状态;
7、下面的ARM指令完成什么功能
①LDRHR0,[R1,#6]②LDRR0,=0X999
8、在下列汇编调用C程序的执行过程中,除R0、R1、R2、R3外,还有哪些寄存器参与了程序的执行过程?
程序执行完后,寄存器R0、R1、R2、R3的值分别是多少?
intg(inta,intb,intc,intd,inte)
{
returna+b+c+d+e
}
AREAf,CODEREADONLY
IMPORTg
MOVR0,#10
ADDR1,R0,R0
ADDR2,R1,R0
ADDR3,R1,R2
STRR3,[SP,#-4]!
ADDR3,R1,R1
BLg
END
9、阅读下面的程序,除了r0和r1外,执