周立功版嵌入式课后习题复习资料.docx
- 文档编号:6577568
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:11
- 大小:24.94KB
周立功版嵌入式课后习题复习资料.docx
《周立功版嵌入式课后习题复习资料.docx》由会员分享,可在线阅读,更多相关《周立功版嵌入式课后习题复习资料.docx(11页珍藏版)》请在冰豆网上搜索。
周立功版嵌入式课后习题复习资料
第一章嵌入式系统概述
一、举出3个课本中未提到的嵌入式系统的例子。
(红绿灯控制、数字空调、机顶盒)
二、什么是嵌入式系统?
特点是?
答:
嵌入式系统是嵌入到对象体系中的专用计算机应用系统。
英国电机工程师协会定义:
嵌入式系统为控制、检测或辅助某个设备、机器或工厂运作的装置。
(1)以技术角度定义:
以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
(2)从系统角度的定义:
嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。
术语嵌入式反映了这些系统通常是大系统中的一个完整的部分,称为嵌入的系统。
嵌入的系统中可以共存多个嵌入式系统。
特点:
1、嵌入式系统通常应用在为特定用户设计的系统中,具有功耗低、体积小、集成度高等特点。
将通用中由板卡完成的任务集成在了嵌入式内部。
2、嵌入式系统是将先进的计算机技术、半导体技术和电子技术于各个行业的具体应用相结合的产物。
所以是技术密集、资金密集、高度分散、不断创新的知识集成系统。
3、嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣,去除冗余。
4、为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或处理器芯片中,而不是存储于磁盘等载体中。
由于嵌入式系统必须有较高的时实性,因此对程序的质量,特别是可靠性有较高的要求。
5、嵌入式系统本身不具备自举开发能力,必须有一套专用的开发工具和环境才能进行开发。
三、什么叫嵌入式处理器?
嵌入式处理器分为哪几类?
答:
嵌入式处理器是嵌入式系统的核心,是控制、辅助系统运行的硬件单元,与普通台式计算机的微处理器相比,其工作稳定性更高,功耗较小,对环境(如温度、湿度、电磁场、震动等)的适应能力更强,体积更小,且集成的功能较多。
嵌入式处理器从应用角度,可以大致分为以下几类:
1.注重嵌入式处理器的尺寸、能耗和价格。
应用于新型电子娱乐等不注重计算的设备;
2.注重嵌入式处理器的性能。
应用于路由器等高速计算密集型的设备;
3.注重嵌入式处理器的性能、尺寸、能耗和价格。
应用于各种工业控制设备;
按照结构分类:
嵌入式微处理器();嵌入式微控制器();嵌入式处理器();嵌入式片上系统()。
嵌入式系统的分类也是以上答案(P5)。
四、什么是嵌入式操作系统?
为何要使用嵌入式操作系统?
答:
操作系统是计算机中最基本的程序。
操作系统负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;操作系统提供用户接口,使用户获得良好的工作环境;操作系统为用户扩展新的系统功能提供软件平台。
使用嵌入式操作系统原因之一就是因为其具有实时性。
使用嵌入式实时操作系统具有以下优点:
1.嵌入式实时操作系统提高了系统的可靠性。
2.嵌入式实时操作系统提高了开发效率,缩短了开发周期。
3.嵌入式实时操作系统充分发挥了32位的多任务潜力。
第二章7体系结构
一、基础知识
(1)7中的T、D、M、I的含义是什么?
(P19)
答:
T后缀:
高密度16位指令集扩展。
D后缀:
支持片上调试。
M后缀:
64位乘法指令。
I后缀:
硬件仿真功能模块。
(2)7采用几级流水线?
(P20)使用何种存储器编址方式?
答:
采用三级流水线,三个阶段分别为:
取指、译码、执行。
使用了冯
诺依曼结构,指令和数据共用一条32位总线。
(3)处理器模式和处理器状态有何区别?
(P2426)
答:
处理器模式指的是处理器在执行程序时,在不同时刻所处的不同状态。
处理器状态指的是处理器当前所执行的指令集。
(4)分别列举的处理器模式和状态。
答:
处理器模式:
7种,:
用户模式()和特权模式,特权模式包括系统模式()和异常模式,异常模式包括:
管理模式()、中止模式()、未定义模式()、中断模式()、快速中断模式()。
处理器状态:
状态为32位,这种状态下执行的是字方式指令,具有最完整的功能,处理器在系统上电时默认为状态。
状态为16位,这种状态下执行半字方式的指令。
(5)和分别使用哪个寄存器?
(P3132)
答:
程序计数器()使用R15寄存器,链接寄存器()使用R14寄存器。
(6)R13寄存器的通用功能是什么?
(P2930)
答:
处理器通常将寄存器R13作为堆栈指针(),用于保存堆栈的出入口处地址。
(7)寄存器中哪些位用来定义处理器状态?
答:
程序状态寄存器,
(8)描述一下如何禁止和的中断?
(P38)
答:
当控制位I置位时,中断被禁止,否则允许中断使能;
当控制位F置位时,中断被禁止,否则允许中断使能。
二.存储器格式
定义R0=0x12345678,假设使用存储指令将R0的值存放在0x4000单元中。
如果存储器格式为大端格式,请写出在执行加载指令将存储器0x4000单元的内容取出存放到R2寄存器操作后所得R2的值。
如果存储器格式改为小端模式,所得R2值又为多少?
低地址0x4000单元的字节内容分别是多少?
(P49)
三、处理器异常
请描述一下7产生异常的条件是什么?
各种异常会使处理器进入哪种模式?
进入异常时内核有何操作?
各种异常的返回指令又是什么?
答:
只要正常的程序被暂时中止,处理器就进入异常模式。
地址
异常
进入时的模式
进入时I的状态
进入时F的状态
返回指令
0x00000000
复位
管理
禁止
禁止
无
0x00000004
未定义指令
未定义
I
F
14
0x00000008
软件中断()
管理
禁止
F
14
0x0000000C
中止(预取)
中止
I
F
14,#4
0x00000010
中止(数据)
中止
I
F
14,#8
0x00000014
保留
保留
—
—
—
0x00000018
中断
禁止
F
14,#4
0x0000001C
快速中断
禁止
禁止
14,#4
第三章7()指令系统
一、基础知识
(1)7()有几种寻址方式(P53)?
“R1,[R0,#0x08]”属于哪种寻址方式?
答:
共有8种寻址方式:
寄存器寻址、立即寻址、寄存器移位寻址、寄存器间接寻址、基址寻址、多寄存器寻址、堆栈寻址、相对寻址。
R1,[R0,#0x08]属于基址寻址,意思是读取R0+0x08地址上的存储单元的内容,存入R1。
(2)指令的条件码有多少个(P60)?
默认条件码是什么?
答:
有16个,、、、、、、、、、、、、、、、,默认条件码是。
(3)指令中第2个操作数有哪几种形式(P58)?
列举5个8位图立即数。
答:
有3种形式:
8r——常数表达式。
——寄存器方式。
——寄存器移位方式。
5个8位图立即数:
0x3(0<<2)、0、00000000(00<<24)、200(08)、00000001(0x1F<<28)。
(4)指令的偏移形式有哪4种(P62)?
指令和指令有何区别?
答:
指令的偏移形式有4种,分别是:
零偏移、前索引偏移、程序相对偏移、后索引偏移。
指令是加载无符号字节数据,指令则是加载有符号字节数据。
就是读出指定地址的数据并存入指定寄存器,读出指定地址的数据,高24位符号位用于扩展,再存入指定寄存器。
(5)请指出指令与加载指令的区别及用途。
答:
指令的源操作数是常数或(带偏移量的)寄存器,用于寄存器之间的数据传送;指令的源操作数是地址,用于存储器到寄存器的数据传送。
(6)指令是如何执行的?
写一程序,判断R1的值是否大于0x30,是则将R1减去0x30。
(P71)
答:
指令将寄存器的值减去2的值,根据操作的结果更新中的相应条件标志位,以便后面的指令根据相应的条件标志来判断是否执行。
指令不保存运算结果,在进行两个数据的大小判断时,常用指令及相应的条码来操作。
程序:
{},2
R10x30;将R1与常数0x30比较
,;如果小于或等于0x30,则程序返回
R1,R1,#0x30;大于0x30,则将R1减去0x30,结果存回R1
(7)调用子程序是用B指令还是用指令?
请写出返回子程序的指令。
(P73)
答:
指令用于子程序调用。
,或者
(8)请指出伪指令的用法。
(P61)指令格式与加载指令的区别是什么?
答:
指令用于从内存中读取数据放入寄存器或者用于加载32位的立即数,还常用于加载芯片外围功能部件的寄存器地址,指令格式与加载指令的区别在于第二个数为地址表达式,伪指令的的参数有“=”号。
(9)状态与状态的切换指令是什么?
请举例说明。
答:
切换指令是指令。
指令跳转到指定的地址去执行程序。
若的0为1,则跳转时自动将中的标志T置位,即把目标地址的代码解释为代码;若的0为0,则跳转时自动将中的标志T复位,即把目标地址的代码解释为代码。
(10)状态与状态寄存器有区别吗(P28、P34、P35、P81)?
指令对哪些寄存器的访问受到一定限制?
答:
状态与状态的寄存器有区别:
1、由于指令集不包含和指令,如果用户需要修改的任何标志位,必须回到模式。
通过和指令来改变指令集模式,而且当完成复位()或者进入到异常模式时,将会被自动切换到模式。
2、访问R815的数据处理指令不能更新中的状态标志。
(指令集较指令集有如下限制:
只有B指令可以条件执行,其它指令都不能条件执行;分支指令的跳转范围有更多限制;数据处理指令的操作结果必须放入其中一个;单寄存器访问指令,只能操作R0~R7;和指令可以对R0~R7的任何子集进行操作;)
指令对R815寄存器访问受限。
(11)指令集的堆栈入栈、出栈指令是哪两条?
(P83)
入栈指令,出栈指令
(12)指令集的指令转移范围为何能达到
4?
其指令编码是怎样的?
(P85)
采用两条16位指令组合成22位半字偏移(符号扩展为32位),使指令转移范围为±4。
。
←4,←
2.有符号和无符号加法
下面给出A和B的值,可以先手动计算,并预测N、Z、V和C标志位的值。
然后修改程序清单3.1中R0、R1的值,将这两个值装载到这两个寄存器中(使用伪指令,如“R000000”),使其执行两个寄存器的加法操作。
调试程序,每执行一次加法操作就将标志位的状态记录下来,并将所得结果与预先计算得出的结果相比较。
如果两个操作数看作有符号数,如何解释所得标志位的状态?
同样,如果把两个操作数看作是无符号数,所得标志位又当如何理解?
(1)0000F(A)
+0x00001(B)
0x000000000110
如果两个操作数是有符号的,A是负数,B是正数,和是0,没有溢出,所以0。
如果两个操作数是无符号数,和是0,有进位,所以1。
(2)0x7(A)
+0x02345678(B)
0x823456771001
如果两个操作数是有符号数,A是正数,B是正数,和是负数,有溢出,所以1。
如果两个操作数是无符号数,没有进位,所以0。
(3)67654321(A)
+23110000(B)
0x0568F421 0000
如果两个操作数是有符号数,A是正数,B是正数,和是正数,没有溢出,所以0。
如果两个操作数是无符号数,没有进位,所以0。
第四章2000系列硬件结构
一、基础知识
1、2114可使用的外部晶振频率范围是多少(P115)(提示使用/不使用功能时(P116))?
答:
晶振频率范围:
1~30,若使用或功能时,输入时钟的频率不超过:
10~25。
2、请描述2210/2220的.14、P1.20、P1.26、1和0引脚在芯片复位时分别有什么作用?
(P95,P96,P119)并简单说明2000系列7微控制器的复位处理流程。
答:
P0.14为低电平时,强制片内引导装载程序复位后控制器件的操作,即进入状态。
P1.20当为低电平,使P1.25~P1.16复位后用作跟踪端口。
P1.26当为低电平,使P1.31~P1.26复位后用作一个调试端口。
当为低时,0与1一同控制引导和内部操作。
引脚的内部上拉确保了引脚未连接时呈现高电平。
外部复位输入:
当该引脚为低电平时,器件复位,口和外围功能进入默认状态,处理器从地址0开始执行程序。
复位信号是具有迟滞作用的电平。
3、2000系列7微控制器对向量表有何要求(提示向量表中的保留字)?
答:
向量表所有数据32位累加和为零(0x00000000~0x0000001C的8个字的机器码累加),才能脱机运行用户程序,这是2114/2124/2212/2214的特性。
4、如何启动2000系列7微控制器的功能?
(P122)相关电路应该如何设计?
答:
有两种情况可以使芯片进入状态:
(1)将芯片的P0.14引脚拉低后,复位芯片,可以进入状态;
(2)在芯片内部无有效用户代码时,自动进入状态。
5、2000系列7微控制器片内是多位宽度的接口?
(P145)它是通过哪个功能模块来提高的访问速度?
答:
128位宽度接口,通过存储器加速模块()来提高的访问速度。
6、若2210/2220的0存储块使用32位总线,访问0时,地址线A1、A0是否有效?
模块中的~4具有什么功能?
(P159)
答:
无效,(如果存储器组配置成16位宽,则不需要A0;8位宽的存储器组需要使用A0。
);字节定位选择信号。
7、2000系列7微控制器具有引脚功能复用特性,那么如何设置某个引脚为指定功能?
(P172)
答:
通过引脚功能选择寄存器的设定来设置某个引脚为指定功能。
8、、有什么不同?
向量和非向量有什么不同?
(P189)
答:
为快速中断,具有最高优先级,中断响应最快,常用于处理非常重要、非常紧急的事件,为普通中断。
向量具有中等优先级,对外部事件响应比较及时,常用于处理重要事件。
非向量优先级最低,中断延迟时间比较长,常用于处理一般事件中断。
9、在使能、禁止和时,为什么操作寄存器而不操作寄存器?
(P75,P189,P200)
答:
在用户模式下,无法修改,只有在特权模式下修改后,通过退出特权模式,然后恢复到,才能实现修改。
10、内核对、向量和非向量有什么不同?
(P200)
优先级最高,中断响应最迅速。
一旦发生中断,处理器进入模式,而且处理器为模式多设计了R8~R12这5个私有寄存器,加速的处理;向量具有中等优先级,处理中断比较迅速;非中断优先级最低。
11、向量中断能嵌套吗?
请结合体系结构进行阐述。
答:
能,但需要重新开中断。
12、的软件中断和内核的软件中断一样吗?
(P188)
内核本身只有快速中断和普通中断这2条中断输入信号线,只能接受2个中断。
如果处理2个以上的中断事件,就需要借助向量中断控制器()。
13、设置引脚为功能时,如何控制某个引脚单独输入/输出?
(P181)当前要知道某个引脚当前的输出状态时,是读取寄存器还是读取寄存器?
答:
通过方向寄存器来控制引脚单独输入/输出。
比如某引脚作输出时,将寄存器的相应位设置为1。
当前要知道某个引脚当前的输出状态时,读取寄存器,因为寄存器控制引脚输出高电平。
14、P0.2和P0.3口是
接口,当设置它们为时,是否需要外接上拉电阻才能输出高电平?
(P183)
答:
需要外接上拉电阻。
15、写出至少3种的应用实例。
(P183-187)
1、将P0.0设置为输出高电平。
2、使用控制蜂鸣器。
3、读取P0.0引脚的电平状态。
4、读取按键状态。
5、在多个口线上输出数据。
15、使用主模式时,引脚是否可以作为?
(P238)若不能,引脚应如何处理?
答:
不能,引脚应接上拉电阻。
16、2114的2个符合什么标准?
(P276)哪一个可用作通信?
(P278)哪一个具有接口?
答:
符合16C550工业标准。
0可用作通信,1具有接口。
17、介绍
和总线的特点,并分别介绍几款基于这两种总线的芯片。
(P238,P250)
答:
()是半导体公司推出的芯片间串行传输总线,它以2根连线实现了完善的双向数据传送,可以极为方便地构成多机系统和外围器件扩展系统。
总线采用了器件地址的硬件设置方法,通过软件寻址完全避免了器件的片选线寻址方法。
从而使硬件系统具有最简单而灵活的扩展方法。
基于
的芯片有2404和7290等。
总线(串行外设接口)总线系统是一种全双工同步串行外设接口,允许与各种外围设备以串行方式进行通信、数据交换。
一个总线可以连接多个主机和多个从机,但是在同一时刻只允许有一个主机操作总线。
基于总线的芯片有4003语音芯片和电能计量芯片7022等等。
18、2114具有几个32位定时器?
(P222)定时器是否可以作通用定时器使用?
(没讲)
答:
有2个32位定时器,分别是定时器0和定时器1。
定时器不能用作通用定时器使用。
19、2000系列7微控制器具有哪两种低耗模式?
如何降低系统的功耗?
(P89,P141)
答:
2个低功耗模式:
空闲模式和掉电模式;可以通过个别使能/禁止外部功能来优化功耗。
2.计算设置值
假设有一个基于2114的系统,所使用的晶振为11.0592石英晶振。
请计算出最大的系统时钟()频率为多少?
此时的M值和P值各为多少?
请列出计算公式,并编写设置的程序段。
解:
2214最大的系统时钟频率是60,=M*60
=11.0592所以5
=*55.296
又156<<320
(*2)
当取156时,1.3
当个取最高频率时即320时,2.67
所以2
程序清单:
8(323232)
{
8i;
32;
i=();
(i){
2:
(()-1)|(0<<5);
;
4:
(()-1)|(1<<5);
;
8:
(()-1)|(2<<5);
;
16:
(()-1)|(3<<5);
;
:
();
;
}
=1;
=;
=0;
=0x55;
((&(1<<10))0);
=3;
=0;
=0x55;
();
3、存储器重影射:
(1)2210/2220具有(D)种存储映射模式。
(P106,P139)
(A)3(B)5(C)1(D)4
(2)当程序已固化到片内,向量表保存在0x00000000起始处,则〔1:
0〕的值应该为(B)。
(P138139)
(A)00(B)01(C)10(D)11
(3)2000系列7微控制器存储器重映射的目标起始地址为(0x00000000),共有(16)个字。
(A)0x00000000,8(B)0x40000000,8
(C)0x00000000,16(D)0x7000,8
4、外部中断唤醒掉电设计
以下代码是初始化外部中断0,用它来唤醒掉电的2114,请填空。
(P214)
0=0x00000000;
1=(1&0)|0x01;设置口连接。
P0.16设置为0
&0x0E;设置0为电平触发模式
&0x0E;设置0为低电平触发
0x01;允许外部中断0唤醒掉电的
0x0F;消除外部中断标志
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 立功 嵌入式 课后 习题 复习资料
![提示](https://static.bdocx.com/images/bang_tan.gif)