嵌入式系统设计复习资料

上传人:豆浆 文档编号:25744580 上传时间:2017-12-17 格式:DOC 页数:9 大小:59.50KB
返回 下载 相关 举报
嵌入式系统设计复习资料_第1页
第1页 / 共9页
嵌入式系统设计复习资料_第2页
第2页 / 共9页
嵌入式系统设计复习资料_第3页
第3页 / 共9页
嵌入式系统设计复习资料_第4页
第4页 / 共9页
嵌入式系统设计复习资料_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《嵌入式系统设计复习资料》由会员分享,可在线阅读,更多相关《嵌入式系统设计复习资料(9页珍藏版)》请在金锄头文库上搜索。

1、1. 嵌入式系统基本含义是什么?为什么说单片机是典型的嵌入式系统?嵌入式系统(Embedded System) :面向测控对象,嵌入到实际应用系统中,实现嵌入式应用的计算机称之为嵌入式计算机系统,简称嵌入式系统(Embedded System) 。 嵌入式系统是面向测控对象,嵌入到实际应用系统中的计算机系统的统称。嵌入式系统通常有 4 种:工控机;通用 CPU 模块;嵌入式微处理器(Embedded Processor) ;嵌入式微控制器(Embedded Microcontroller) 。前两者是基于通用计算机系统,即将通用计算机系统用于测控对象。后两者是基于芯片形态的计算机系统,其中嵌入

2、式 MCU 是在通用 CPU 基础上发展,增加满足测控对象要求的外围接口电路,用于测控领域。而嵌入式 MCU 则是在嵌入式系统的概念广泛使用后,给传统 MCU 定位的称呼。所以,可以说 MCU 是最典型的、最广泛的嵌入式系统。3比较 MCU 与 CPU 的区别与联系。 从总体上说,通用计算机系统主要用于数值计算、信息处理,兼顾控制功能,而嵌入式计算机系统主要用于控制领域,兼顾数据处理。 与单纯的高速海量计算要求不同,通信、测控、数据传输等领域主要表现在:直接面向控制对象; 嵌入到具体的应用体中, 而不以计算机的面貌出现; 能在现场可靠地运行;体积小,应用灵活;突出控制功能,特别是对外部信息的捕

3、捉与丰富的输入输出(I/O)功能等。由此可以看出,满足这些要求的计算机与满足高速数值计算的计算机是不可兼得的就 MCU 组成而言,虽然它只是一块芯片,但包含了计算机的基本组成单元,仍由运算器、控制器、存储器、输入设备、输出设备五部分组成,只不过这些都集成在一块芯片上,这种 结构使得 MCU 成为具有独特功能的计算机。 2简述 MCU 的基本组成及应用领域,简述嵌入式系统的特点。 MCU 的基本组成:由运算器、控制器、存储器、输入设备、输出设备五部分组成。MCU 应用领域:通信、测控、数据传输等领域。 嵌入式系统的特点: (1)嵌入式系统资源受限 (2)嵌入式系统开发需要专用工具和特殊方法 (3

4、)嵌入式系统要求较高可靠性和稳定性 (4)嵌入式系统有实时约束 (5)嵌入式系统通常极其关注成本 (6)嵌入式系统大多要求低功耗 (7)嵌入式系统专用性很强 (8)嵌入式系统技术含量高 (9)嵌入式系统具有很长生命周期6嵌入式系统中 RAM 的作用是什么? 嵌入式系统中,RAM 用来存放用户数据和堆栈空间。实际编程时,可以把 SP 从第 0 页移出,也就是初始的 SP 在 RAM 的最高地址处,由于 M68HC08 系列单片机的进栈指令是使 SP1,所以是堆栈数据向低地址方向依次堆放,安排用户数据时,可以从 RAM 的最低地址向更高地址空间安排,这样从两头向中间使用,可以尽量避免两种数据交叠,

5、发生错误。但是,用户数据不宜安排过多,要给堆栈留有足够的空间,否则运行时可能产生错误若内存安排较满,必须精确计算堆栈最大可能深度,以保证程序的正常执行。 7大端和小端的含义是什么?在实际程序设计中,关于大端和小端要注意什么问题? 所谓大端是指高字节存储在低的地址中,而低字节则存在高地址中;小端则恰好相反,把低字节存在低地址中,而高字节存在高地址中。在实际程序设计中,关于大端与小端应注意,采用小端模式的 CPU 对操作数的存放方式是从低字节到高字节,而大端模式对操作数的存放方式是从高字节到低字节。1指出下列指令中的源操作数和目的操作数的寻址方式。 (1) MOV #$80 , $80 (2) M

6、OV $80,$A0 (3) MOV $80 , X+ (4) MOV X+ , $80 (5) LDA $80 , X (1)源操作数:立即寻址方式 IMM,目的操作数:直接寻址方式 DIR (2)源操作数:直接寻址方式 DIR,目的操作数:直接寻址方式 DIR (3)源操作数:直接寻址方式 DIR,目的操作数:变址加 1 寻址方式 DIX+ (4)源操作数:无偏移量、变址加 1 寻址方式 DIX+,目的操作数直接寻址方式 DIR (5)源操作数:8 位偏移量变址方式 IX1 3哪些指令影响堆栈指针?如何影响? (1) 堆栈操作指令 PSHA sp1 sp PULA sp+1 sp PSHH

7、 sp1 sp PULH sp+1 sp PSHX sp1 sp PULX sp+1 sp (2)SP 增加指令 AIX #opr8 (SP+#opr8) SP (3)转子程序指令 JSR 以及从子程序返回指令 RTS JSR 指令通过跳转转移到目标地址后,会将相应寄存器的值进栈,起到保护的功能。执行完子程序之后,执行 RTS 指令又会进行出栈操作来恢复寄存器的值。 (4)中断指令 SWI、RTI SWI 指令:PCL、PCH、X、A 、CCR 进栈 RTI 指令:CCR、A、X 、PCH 、PCL 出栈 4说明芯片初始化时堆栈指针的初始化方法。 复位时,SP 的初值为$00FF(前置符号$表

8、示十六进制),栈指针复位指令(RSP)可将 SP 的低 8 位置$FF,而不影响高 8 位。由于$00FF 位于第 0 页,因此实际编程时可以把 SP 从第 0 页移出,例如使之为$023F,也就是初始化的 SP 在 RAM 的最高地址处,由于 HC08 系列单片机的进栈指令是使 SP1,所以是堆栈数据向低地址方向依次堆放,这样堆栈使用的地址空间是$023F向更低地址方向。 1解释什么叫通用 I/O 口?说明电路上如何实现 I/O 口的输入、输出控制? 所谓通用 I/O,也记为 GPIO(General Purpose I/O),即基本的输入/输出,有时也称并行I/O,或普通 I/O。它是 I

9、/O 的最基本形式。大多数通用 I/O 引脚可以通过编程来设定工作方式为输入或输出,称之为双向通用 I/O。 作为通用输入引脚, MCU 内部程序可以通过端口寄存器读取该引脚, 知道该引脚是“1”(高电平) 或“0”( 低电平),即开关量输入。作为通用输出引脚,MCU 内部程序通过端口寄存器向该引脚输出“1”(高电平) 或“0”(低电平) ,即开关量输出。 2什么叫上拉电阻?它的作用是什么?如何选择上拉电阻的阻值?在哪些情况下使用上拉电阻? 解答: 若 MCU 的某个管脚通过一个电阻接到电源(Vcc)上,这个电阻被称为“上拉电阻” 。 通过接有上拉电阻,将不确定的信号通过一个电阻嵌位在高电平,

10、电阻同时起限流作用。根据实际情况,上拉电阻可以取值在 1K5M 之间,通常在 1K10K 之间,主要需要考虑以下几个因素: 驱动能力与功耗的平衡。 下级电路的驱动需求。 高低电平的设定。 频率特性。 使用上拉电阻的情况有: 当 TTL 电路驱动 CMOS 电路时,如果 TTL 电路输出的高电平低于 CMOS 电路的最低高电平(一般为 3.5V) ,这时就需要在 TTL 的输出端接上拉电阻,以提高输出高电平的值。 OC 门电路必须加上拉电阻,才能使用。 为加大输出引脚的驱动能力,有的单片机管脚上也常使用上拉电阻。 在 CMOS 芯片上,为了防止静电造成损坏,不用的管脚不能悬空,一般接上拉电阻产生

11、降低输入阻抗,提供泄荷通路。 芯片的管脚加上拉电阻来提高输出电平,从而提高芯片输入信号的噪声容限增强抗干扰能力。 提高总线的抗电磁干扰能力。管脚悬空就比较容易接受外界的电磁干扰。 长线传输中电阻不匹配容易引起反射波干扰,加上下拉电阻是电阻匹配,有效的抑制反射波干扰。 3A 口作为通用 I/O 时有几个寄存器? A 口作为通用 I/O 口时,具有三个寄存器,它们是: A 口数据方向寄存器(DDRA)、A 口数据寄存器(PTA)、A 口上拉电阻允许寄存器(PTAPUE)。4方向寄存器的作用是什么? 方向寄存器的八位分别控制着 I/O 口引脚 7引脚 0 是输入还是输出,若寄存器某一位为 0,则相应

12、引脚为输入;若寄存器某一位为 1,则相应引脚为输出。5让 PTA.2 输出“1” (高电平) ,需要进行哪些配置? A 口的数据方向寄存器 DDRA 的第二位,即 DDRA2 设置为 1,即设置 A 口的第二位为输出。再设置 A 口的数据寄存器 PTA 的第二位,即 PTA2 为 1。 6什么是 OC 输出?为什么 OC 输出的 I/O 口一定要上拉? OC 输出即集电极开路(open collector)输出,电路图如课本 410 所示。当左端的输入为“0” 时,D1 截止(即集电极 C 跟发射极 E 之间相当于断开) ,所以 Vcc 电源通过电阻 R2 加到 D2 上,D2 导通(即相当于

13、一个开关闭合) ;当左端的输入为“1”时,D1 导通,而 D2 截止(相当于开关断开) 。 如果不加入上拉电阻的话,当开关闭合时,输出直接接地,所以输出电平为 0;开关断开时,则输出端悬空了,即高阻态。这时电平状态未知,如果后面接一个电阻负载(即使很轻的负载)到地,那么输出端的电平就被这个负载拉到低电平了,所以这个电路是不能输出高电平的。加入上拉电阻后,如果开关闭合,则有电流从 R3 电阻及开关上流过,但由于开关闭合时电阻为 0(方便我们的讨论,实际情况中开关电阻不为 0,另外对于三极管还存在饱和压降) ,所以在开关上的电压为 0,即输出电平为 0;如果开关断开,则由于开关电阻为无穷大(同上,

14、不考虑实际中的漏电流) ,所以流过的电流为 0,因此在 R3 电阻上的压降也为 0,所以输出端的电压就是 5V 了,这样就能输出高电平了。1. C 的哪些特征使得它能够成为嵌入式系统中使用率最高的高级语言? C 语言作为一种通用的高级语言,语言简洁、紧凑,运算符丰富,具有现代化语言的各种数据结构,适用范围大,可移植性好,而且 C 语言可以允许直接访问物理地址,可以直接对硬件进行操作,程序生成代码质量高,程序执行效率高,这些特点完全适合与嵌入式系统编程要求,所以 C 语言在嵌入式系统中使用率很高。 2. 为什么要在嵌入式系统中使用无限循环? 嵌入式系统作为一个独立的计算机系统, 在系统启动之后要

15、保证其一直处于运行状态,所以为了保证系统持久运行,需要在系统中使用无限循环。 3给出下列各个表达式的整型值: (1) 6 & 2 (2) 6 & 2 (3) 3 | 6 (4) 3 | 6 (5) !(5) (6) (5) 答 (1)1 (2)6 (3)1 (4)7 (5)0 (6)4 4用 C 语言编写一个表达式,该表达式当且仅当整型变量 i 的第 5 位为 1 时为真。 (i&0x20)5 5假定 n 和 x 都声明为整型。编写一行 C 代码(不考虑 x 的当前值,并且不修改 x 的其他任何位)用于执行以下操作: (1) 设置 x 的第 n 位为 1。 (2) 将 x 的第 n 位清 0。 (3) 反转 x 的第 n 位。 答 (1)x|=13) & 0x0f (5) 00001111 x=x (6) 00001111 x = ! x (7) 00000000 x | =0x20 (8) 11111111 x & =0xF0 解答: (1) 11110101 (2) 10011001 (3)01011010 (4)00000101 (5)11110000 (6)00000000 (7)00100000

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号