嵌入式习题Word格式文档下载.docx
- 文档编号:20710072
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:50
- 大小:61.30KB
嵌入式习题Word格式文档下载.docx
《嵌入式习题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《嵌入式习题Word格式文档下载.docx(50页珍藏版)》请在冰豆网上搜索。
5.请解释下列程序中的各条指令:
.equx,45
.equy,64
.equstack_top,0x1000
.global_start
.text
_start:
movsp,#stack_top
movr0,#x
strr0,[sp]
movr0,#y
ldrr1,[sp]
addr0,r0,r1
strr0,[sp]
stop:
bstop
.end
.equx,45/*定义变量x,并赋值为45*/
.equy,64/*定义变量y,并赋值为64*/
.equstack_top,0x1000/*定义栈顶0x1000*/
.global_start/*声明全局变量*/
.text/*将操作符开始的代码编译到代码段*/
/*程序代码开始标志*/
movsp,#stack_top/*定义堆栈位置*/
movr0,#x/*x的值放入r0*/
strr0,[sp]/*r0的值保存到堆栈*/
movr0,#y/*y的值放入r0*/
ldrr1,[sp]/*取堆栈中的数到r1*/
addr0,r0,r1/*将r0中的数和r1中的数相加的结构放入r0*/
strr0,[sp]/*r0的值保存到堆栈*/
bstop/*程序结束,进入死循环*/
6.分析说明S3C44B0X的总线优先级顺序。
(1)DRAMrefreshcontroller(DRAM刷新控制器);
(2)LCD_DMA
(3)ZDMA0,1
(4)BDMA0,1
(5)Externalbusmaster(外部总线控制器);
(6)Writebuffer(写缓冲区)
(7)Cache和CPU。
7.S3C44B0X中具有哪几个定时器?
分别有哪些功能特性?
6个16位定时器:
都可以工作在中断或DMA模式。
定时器0、1、2、3、4有PWM功能,定时器5只是一个内部定时器而无输出引脚。
PWM定时器特性为:
Ø
6个基于DMA或中断操作的16位定时器
3个8位预分频器,2个5位除法器和1个4位除法器。
输出波形可编程的功率控制器(PWM)
自动重装或短脉冲模式(One-shotPulseMode)
死区发生器
1个看门狗定时器:
看门狗定时器具有以下特性:
带中断请求的普通间隔定时器模式
当定时器计数值达到0时,内部复位信号被激活128MCLK周期
8.S3C44B0X中功耗管理的5种模式是什么?
S3C44B0X中功耗管理的5种模式:
正常模式:
正常运行模式;
低速模式:
不加PLL的低时钟频率模式;
空闲模式:
只停止CPU的时钟;
停止模式:
停止所有的时钟;
LCD的SL空闲模式:
SL空闲模式的进入将导致LCD控制器开始工作。
此时,CPU和除LCD控制器外的所有外设都停止工作。
9.简述BootLoader的作用。
Bootloader作用:
系统引导程序,负责Linux内核的启动,用于初始化系统资源,包括SDRAM。
这部分代码用于建立Linux内核运行环境和从Flash中装载初始化Ramdisk等。
它首先完成系统硬件的初始化,包括时钟的设置、存储区的映射、堆栈指针的设置等;
然后跳转到操作系统内核的入口,将系统控制权交给操作系统。
10.写出S3C44B0X的UART1的初始化设置程序代码。
UART初始化程序:
staticintwhichUart=0;
voidUart_Init(intmclk,intbaud)
{inti;
If(mclk==0)
mclk=MCLK;
rUFCON1=0x0;
rUMCON1=0x0;
rULCON1=0x3;
rUCON1=0x245;
rUBRDIC1=((int)(mclk/16./baud+0.5)-1);
for(i=0;
i<
100;
i++);
}
11ARM常见的寻址方式有哪些?
立即寻址
寄存器寻址
寄存器间接寻址
基址加偏址寻址
堆栈寻址
块拷贝寻址
相对寻址
12嵌入式系统软件的层次结构并简要介绍?
嵌入式系统软件的层次结构:
✧驱动层程序:
驱动层程序是嵌入式系统中不可缺少的重要部分,使用任何的外部设备都需要有相应驱动层程序的支持,他为上层软件提供了设备的操作接口。
驱动层程序一般包括硬件抽象层HAL、板极支持包BSP和设备驱动程序。
✧实时操作系统RTOS:
对于使用操作系统得嵌入式系统而言,操作系统一般以内核映像的形式下载到目标系统中。
内核中通常必需的基本部件是进城管理、进程间通信、内存管理部分,其他部件如文件系统、驱动程序、网络协议等都可以根据用户要求进行配置,并以相关的方式实现。
这样一来,整个嵌入式系统与通用操作系统类似,功能比不带有操作系统得嵌入式强大了很多。
✧操作系统的应用程序接口API:
API是一系列复杂的函数、消息和结构的集合体。
在计算机系统中有很多可通过硬件或外部设备去执行的功能,这些功能的执行可通过计算机操作系统或硬件预留的标准指令调用。
因而系统提供标准的API函数,可加快用户应用程序的开发,统一应用程序的开发标准,也为操作系统版本的升级带来了方便。
✧应用程序:
用户应用程序主要通过调用系统的API函数对系统进行操作,完成用户应用功能开发。
13试述两种常见的ARM开发环境及其特点?
两种常见的ARM开发环境及其特点:
ADS/SDTIDE开发环境:
它由ARM公司开发,使用了CodeWarrior公司的编译器;
集成了GNU开发工具的IDE开发环境:
它由GNU的汇编器as、交叉编译器gcc、和链接器ld等组成。
14:
S3C44B0XI2C总线接口操作有那四种操作方式?
S3C44B0XI2C总线接口操作的四种操作模式:
1)主传送模式
2)主接收模式
3)从传送模式
4)从接收模式
15:
嵌入式系统的发展趋势
1.即将迎来以ARM为核心的32位浪潮
嵌入式系统应用的高低端:
以4位、8位单片机或为控制器(MCU)为核心的嵌入式系统,早已广泛的应用于工业控制、军事、航空航天、家电等各个领域,极大地推动了IT技术的发展。
目前这些属于最低端应用的嵌入式系统。
这些低端应用市场范围非常广泛,局部带动了低端应用。
即将来临的32位浪潮:
随着嵌入式系统的不断发展,当应用越来越复杂、使用范围越来越广时,8位处理器已经无法满足的需要,此时32位SoC为高性能嵌入式系统开发提供了功能丰富的硬件平台,也为实时嵌入式操作系统的广泛应用提供了硬件基础。
因此,以32位处理器作为高性能嵌入式系统开发的核心已是嵌入式技术发展的必然趋势。
32位向ARM转移,形成ARM市场主导地位:
在嵌入式微处理器中,虽然有多种嵌入式处理器可供选择,但是ARM处理器核以其低功耗、高性能等突出优点已在32位嵌入式应用中稳居第一。
ARM已成为移动通信、手持计算、多媒体数字消费等嵌入式解决方案事实上的标准。
优良的性能和广泛的市场定位极大地增加和丰富了ARM的资源,加速了ARM处理器面向各种应用的系统芯片的开发和发展。
2.嵌入式系统与Internet的融合:
为适应嵌入式分布处理结构和应用上网需求,面向21世纪的嵌入式系统要求配备标准的一种或多种网络通信接口。
针对外部联网要求,嵌入设备必需配有通信接口,相应需要TCP/IP协议簇软件支持;
由于家用电器相互关联(如防盗报警、灯光能源控制、影视设备和信息终端交换信息)及实验现场仪器的协调工作等要求,新一代嵌入式设备还需具备IEEE1394、USB、CAN、Bluetooth或IrDA通信接口,同时也需要提供相应的通信组网协议软件和物理层驱动软件。
为了支持应用软件的特定编程模式,如Web或无线Web编程模式,还需要相应的浏览器,如HTML、WML等。
3.未来嵌入式系统的发展趋势
近几年,在消费电子、工业应用、军事国防、网络设备等领域的嵌入式应用,为中提供了难得的发展机遇。
另外,嵌入式技术又不断地刺激新的技术的产生——信息家电、医疗电子病历、微小型智能武器等方面应用也日益广泛,应用深度也进一步加强。
互联网的普及、微电子加工工艺的提高、3C技术的普遍融合、使用者需求的增多、信息服务应用的生活化、技术的渗透性和融合性、设备的关联性以及个性化服务的普遍需求。
因而,移动化处理信息,即随时随地的获取信息、处理信息等,成为信息社会把握先机而制胜的必然武器。
日益发展的嵌入式已能够满足人们随时随地利用任何设备和手段来接收、处理和发布信息的需求。
低成本、低功耗的消费电子和宽带、无线通信以及处理运算的高效计算结合技术将进一步刺激和加速嵌入式技术的发展,造就更广阔的市场空间。
1、嵌入式系统的设计可以分成三个阶段:
分析、设计和实现
2、目前使用的嵌入式操作系统主要有WindowsCE/WindowsMobileLinux、uCos、和Symbian
3、XScale微处理器使用的是ARM公司ARMV5TE版内核和指令集。
4、微处理器有两种总线架构,使用数据和指令使用同一接口的是冯诺依曼,分开的指令和数据接口、取指和数据访问可以并行进行的是哈佛结构
5、ARM微处理器有七种工作模式,它们分为两类非特权模式、特权模式。
其中用户模式属于非特权模式
6、ARM核有两个指令集,分别是ARM、Thumb
7、ARM微处理器复位后,PC(R15)的地址通常是0X0,
初始的工作模式是supervisor
8、在ARM体系构架中对复杂的内存管理是通过系统控制协处理器cp15和MMU(存储管理部件)来进行的。
当系统发生DataAbort(数据)异常和PrefetchAbort(指令领取)异常时,异常处理程序透过嵌入式操作系统的内存管理机制,通过MMU交换物理内存和虚拟内存的页面,以保证程序正常执行。
9、构建嵌入式系统开发环境的工具链有多种,其中开放源码的工具链是GNU工具链,ARM公司提供的工具链是ADS工具链
1、写一条ARM指令,完成操作r1=r2*4(4分)
MOVR1,R2,
LSL#3
2、初始值R2=5,R3=4,R4=3,执行指令SUBSR2,R3,R4,LSR#2后,寄存器R2,R3的值分别是多少?
(4分)
R2=3,R3=4
3、有如下程序段,画出程序流程图,并回答执行程序以后R0的值是多少。
(8分)
numEQU2
start
MOVr0,#1
MOVr1,#6
MOVr2,#3
BLarithfunc
stop
Bstop
arithfunc
CMPr0,#num
MOVHSpc,lr
ADRr3,JumpTable
LDRpc,[r3,r0,LSL#2]
JumpTable
DCD(.WORD)DoA;
注意:
使用ADS开发工具用伪指令DCD
DCD(.WORD)DoS;
使用GNU开发工具用伪指令.WORD
DoA
ADDr0,r1,r2
MOVpc,lr
DoS
SUBr0,r1,r2
MOVpc,lr
END
答:
R0为0执行DoA,R0为0执行DoS,流程图略。
R0=5。
4、有程序段如下,实现下面流程图,试补充编写ARM汇编代码。
程序段:
MOVr0,#15
MOVr1,#9
;
补充代码
Bstop
END
程序:
Start:
CMPr0,r1
SUBLTr1,r1,r0
SUBGTr0,r0,r1
BNEstart
1、嵌入式开发环境主要包括哪些组件?
嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括
●宿主机
●目标机(评估电路板)
●基于JTAG的ICD仿真器、或调试监控软件、或在线仿真器ICE
●运行于宿主机的交叉编译器和链接器、以及开发工具链或软件开发环境
●嵌入式操作系统
2、ARM核中什么寄存器用于存储PC?
R13通常用来存储什么?
R14通常用来存储什么?
R15用于程序计数寄存器PC,R13通常用来做堆栈指针寄存器,R14通常用来做链接寄存器,保存函数调用的返回地址
3、BootLoader在嵌入式系统中主要起什么作用?
完成哪些主要的工作?
BootLoader是在嵌入式系统复位启动时,操作系统内核运行前,执行的一段程序。
通过BootLoader,初始化硬件设备,建立内存和I/O空间映射图,为最终加载操作系统内核调整好适当的系统软硬件环境。
4、简述嵌入式系统的概念、组成及特点。
嵌入式系统是以应用为中心,以计算机技术为基础,采用可剪裁软硬件,适用于对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。
一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成。
其特点有
●嵌入式系统通常是面向特定应用的
●嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物
●嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余
●嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行
●为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中
●嵌入式系统本身不具备自举开发能力
5、搭建嵌入式开发环境,连接目标板,一般使用什么通信接口连接?
在Windows主机上使用什么软件建立连接?
在Linux主机上使用什么软件建立连接?
RS-232,以太网口、并口
在Windows主机上使用超级终端软件
在Linux主机上使用Minicom软件
6、进行基于ARM核的嵌入式系统软件开发时,调用如下函数:
intdo_something(intarg1,void*arg2,chararg3,int*arg4)
则这四个参数通过什么方式从调用程序传入被调函数?
基于ARM核的嵌入式系统软件开发时,调用函数和子程序通过R0——R3四个寄存器传递参数,超过四个参数使用堆栈传递。
因此arg1通过R0传入,arg2,通过R1传入,arg3通过R2传入,arg4通过R3传入。
1.用ARM汇编编写程序实现96位二进制加法的功能。
(R8R7R6)+(R11R10R9)=(R5R4R3)
AREAADDPCODEREADONLY
ENTRY
ADDSR3,R6,R9
ADCSR4,R10,R7
ADCR5,R8,R11
STOP………….
2.BootLoader程序实现的主要功能
BootLoader是系统加电后、操作系统内核或用户应用程序运行之前,首先必须运行的一段程序代码。
通过这段程序,为最终调用操作系统内核、运行用户应用程序准备好正确的环境。
3.解释下列一段程序实现的功能,并注释每句语句。
AREACOPYBS,CODE,READONLY
ENTRY
LDRR0,=SRC//将src的地址付给r0
LDRR1,=DST//将dst的地址赋给r1
MOVR2,#20r2=20
BCOPY
MOVSR3,R2,LSR,#3r2逻辑右移3位,值再赋给r3=2
BEQCWORD等于0等时候跳到cword
OCOPYLDMIAR0!
{R4-R11}赋值给r4到r11,块复制
STMIAR1!
{R4-R11}再由r4到r11写到目标地址
SUBSR3,R3,#1r3--
BNEOCOPY不等于0跳回ocopy复制两次
CWORD
ANDSR2,R2,#7剩下不足8个字符,如果等于0就结束
BEQSTOP程序
WCOPY
LDRR3,[R0],#4字符复制
STRR3,[R1],#4
SUBSR2,R2,#1
BNEWCOPY
STOP…………..
…………..
1.对一个字,存储时先存放低字节,再存放高字节(即低字节占低地址,高字节占高地址)。
则该种存储格式为____A_________
A,小端方式
B,大端方式
C,低端方式
D,高端方式
2.ARM公司是专门从事___B________
A,基于RISC技术芯片设计开发
B,ARM芯片生产
C,软件设计
D,ARM芯片销售
3.哪个不是ARM微处理器的特点__D__________
A,体积小,低功耗,低成本,高性能
B,大多数数据操作都在寄存器中完成
C,寻址方式灵活简单,执行效率高
D,指令长度不固定
4.ARM微处理器为____C_____________
A,16位RISC架构
B,32位CISC架构
C,32位RISC架构
D,64位RISC架构
5.ARM7系列微处理器是____A_______
A,三级流水线结构
B,四级流水线结构
C,三级流水线结构
D,三级流水线结构
6.ARM9系列微处理器是__C___________
A,三级流水线结构
C,五级流水线结构
7.对于ARM7TDMI系列微处理器,下列叙述哪个是错误的D
A,支持片上Debug
B,支持压缩指令集Thumb
C,内嵌硬件乘法器
D,嵌入式ICE,但不支持片上断点和调试点
8.下列叙述哪个是错误的B
A,ARM指令为32位的长度,Thumb指令为16位长度
B,Thumb代码与等价的ARM代码相比较,用ARM指令要比Thumb指令节省30%-40%
以上的存储空间
C,使用Thumb代码的系统,其功耗要低
D,Thumb指令的密度高
9.要使用WinCE或标准Linux嵌入式操作系统,ARM必须带有_A_________功能
AMMU
BMCU
CMMC
DMUM
10.ARM处理器支持以下__D_______数据类型
A,8位有符号和无符号字节
B,16位有符号和无符号字节
C,32位有符号和无符号字节
D,A,B,C都可以
11.在ARM体系结构中,字的长度为___B_________位
A16位
B32位
C64位
D128位
12.嵌入式操作系统使用的保护模式是在ARM的___C_______模式下工作
A系统模式
B禁止模式
C管理模式
D用户模式
13.ARM处理器正常的程序执行状态是在_D__________模式下
C管理模式
14.可以通过__B________异常中断机制仿真浮点向量运算
A指令预取中止
B未定义的指令
C软件中断(SWI)
D数据访问中止
15.在ARM状体下,异常IRQ,FIQ,预取中止的返回,使用的语句是__B_______
AMOVPC,R14
BSUBSPC,R14,#4
CSUBSPC,R14,#8
DSUBSPC,R14#1
16.在所有工作模式下,__A______都指向同一个物理寄存器,即各模式共享
AR0-R7
BR0-R12
CR8-R12
DR13,R14
17.寄存器R13在ARM指令中常用来表示__A__________
A堆栈指针
BPC指针
C子程序返回指针
D当前程序状态
18.___C_________用作程序计数器(PC)
A寄存器R13
B寄存器R14
C寄存器R15
D寄存器R16
19.当异常发生时,寄存器__A__________用于保存CPSR的当前值,从异常退出时则可由它来恢复CPSR.
ASPSR
BR13
CR14
DR15
20.若处理器预取指令的地址不存在,或该地址不允许当前指令访问,存储器会向处理器发出中止信号,但当预取的指令被执行时,就产生_B__________
A数据中止异常
B指令预取中止异常
C软件中断
D未定义指令异常
21.可使用___C______异常机制实现系统功能调用
C软件中断
D未定义指令异常
22.系统复位进入的工作模式是__A_________
A管理模式
B未定义模式
C中止模式
D定义模式
23.下列哪个叙说是错误的B
A满递增堆栈表示堆栈指针指向最后压入的数据,且由低地址向高地址生成
B只有跳转指令可以根据CPSR中条件码的状态有条件的执行
C指令ADDRO,R1,R2的执行效果是将寄存器R1和R2的内容相加,其结果存放在寄
存器R0中
D直接向寄存器R15写入跳转地址值,可以实现程序的跳转
24.下列哪条指令是错误的B
AADDR0,R0#0x3f
BMOVR0,#0x3ff
CLDRR0,[R1]
DMOVR1,RO,LSL#3
25.能实现把立即数0X3FF5000保存在RO中的指令是__A___________
ALDRR0,=0X3FF5000
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 习题