ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:25.39KB ,
资源ID:9115278      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9115278.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(嵌入式系统原理与应用习题解析.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

嵌入式系统原理与应用习题解析.docx

1、嵌入式系统原理与应用习题解析练习题 P141.选择题(1)A 说明:嵌入式系统的发展趋势表现在以下几方面:1.产品种类不断丰富,应用范围不断普及2.产品性能不断提高3.产品功耗不断降低,体积不断缩小4.网络化、智能化程度不断提高5.软件成为影响价格的主要因素(2)D说明:常见的嵌入式操作系统 : VxWorks ,Windows CE、uC/OS-II 和 嵌入式 Linux 。(3)A说明: VxWorks是美国 WindRiver 公司于 1983年开发的一种 32 位嵌 入式实时操作系统。2.填空题(1)嵌入式计算机(2)微处理器 外围电路 外部设备(3)板级支持包 实时操作系统 应用编

2、程接口 应用程序(4)嵌入式处理器 微控制器 数字信号处理器3.简答题(1)简述嵌入式系统的定义和特点答:定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,应 用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机 系统。特点:专用性强、实时性好、可裁剪性好、可靠性高和功耗低等。(2)简述计算机系统的发展历程 第一阶段大致在 20 世纪 70 年代前后,可以看成是嵌入式系统的萌芽 阶段;第二阶段是以嵌入式微处理器为基础, 以简单操作系统为核心的嵌入 式系统;第三阶段是以嵌入式操作系统为标志的嵌入式系统, 也是嵌入式应用 开始普及的阶段;第四阶段是以基于 Internet 为标志的嵌入

3、式系统,这是一个正在迅速 发展的阶段。(3)简述 MCU 和 DSP 的区别MCU 是微控制器, DSP 是数字信号处理器。MCU 相当于小型的电脑, 内部集成的 CPU、ROM、RAM 、I/O 总线, 所以集成度高是它的特点。DSP 是专用的信息处理器, 内部的程序是对不同的机器和环境进行特 别优化,所以处理速度是最快的。练习题1.填空题(1)ARM7 ARM9 ARM9E ARM10E ARM11(2)精简指令集计算机(3)Samsung ARM920T IIC 总线(4)BGA 显卡布线(5)(6) 8 128 1(7) S3C241064MB64MB2. 选择题(1) D (2)C(

4、3)A(4)B(5)B(6)C (7)D(8)C(9)C(10)B3. 简答题(1)ARM 和 S3C2410X 有什么关系S3C2410是韩国三星公司生产的嵌入式处理器 ,它采用了 ARM 公司的 ARM920T( 即 ARM9) 内核(2)ARM7 是 32 位 RISC 处理器,使用 3 级流水线,采用冯 诺依曼体系结构 ,不支持 MMU 。(3)ARM8 是 32 位 RISC 处理器,使用 5 级流水线,采用哈佛体系结 构,支持 MMU 。(4)S3C2410X 芯片有 27根地址线, 8 根片选线 (nGCS),32 根数据线。(5)S3C2410X 芯片内部集成了一个 LCD 控

5、制器, SDRAM 控制器,3 个通道 UART ,4 个通道 DMA ,4 个具有 PWM 功能的计时器和一个 内部时钟, 8 通道的 10 位 ADC。(6)ARM 体系结构有哪几种工作状态?又有哪几种运行模 式?其中哪些为特权模式?哪些为异常模式?并指出处理 器在什么情况下进入相应模式?工作状态:第 1 种:ARM 状态。处理器执行 32 位的字对齐的 ARM 指令。第 2 种: Thumb 状态。处理器执行 16 位的半字对齐的 Thumb 指令。运行模式:用户模式 (usr) 快速中断模式 (fiq) 外部中断模式 (irq)管理模式 (svc) 数据访问中止模式 (abt) 系统模

6、式 (sys)未定义指令中止模式 (und)在这 7种运行模式,除了用户模式外, 其他 6种处理器模式都为特权 模式。在这 6种特权模式中,除了系统模式外的其他 5 种特权模式又称为异 常模式。用户模式:非特权模式,也就是正常程序执行的模式,大部分任务在 这种模式下执行。在用户模式下,如果没异常发生,不允许应用程序 自行切换果没异常发生,不允许应用程序自行改变处理器的工作模 式,如果有异常发生,处理器会自动切换工作模式。快速中断模式: 支持高速数据传输和通道处理, 当一个高优 (fast)中断 产生时将会进入这种模式。外部中断模式: 也称为普通中断模式, 当一个低优先级中断产生时将 会进入这种

7、模式。 在这模式下按中断的处理器方式又分为向量中断和 非向量中断两种。通常的中断处理都在 IRQ 模式下进行。 管理模式: 是一种操作系统保护模式, 当复位或软中断指令执行时处 理器将进入这种模式。数据访问中止模式: 当存取异常时将会进入这种模式, 用来处理存储 器故障、实现虚拟存储或存储保护。系统模式:使用和 user 模式相同寄存器组的特权模式,用来运行特 权级的操作系统任务。未定义指令中止模式: 当执行未定义指令时会进入这种模式, 主要是 用来处理未定义的指令陷阱, 支持硬件协处理器的软件仿真, 因为未 定义指令多发生在对协处理器的操作上。(7)ARM 体系结构支持的数据类型?有多少寄存

8、器?如何组织? 支持的数据类型:1.字节(byte),各种处理器体系结构中,字节的长度均为 8 位。2.半字(half-word) ,在ARM 体系结构中,半字的长度为 16位。3.字(word),在 ARM 体系结构中,字的长度为 32 位。ARM 处理器共有 37个寄存器,其中 31个通用寄存器, 6 个状态寄 存器。(8)S3C2410 的存储控制器如何对内存空间进行管理? S3C2410X存储控制器为片外存储器提供控制信号。它将系统的存储 空间分成 8组(Bank),每组的大小为 128MB,共 1GB。(9)分析程序状态寄存器各位的功能描述,并说明 C、 Z、N、V在什么情况下进行置

9、 1 和清 0 状态寄存器 (PSR)的具体格式为V溢出标志位对于加 /减法运算指令,当操作数和运算结果为二进制补码表示的带 符号数时, V=1 表示符号位溢出,其它指令通常不影响 V 位。例如: 两个正数 (最高位为 0)相加,运算结果为一个负数 (最高位为 1),则符 号位溢出,相应 V=1.C-进位或借位标志位对于加法指令(包括比较指令 CMN ),结果产生进位,则 C1,表 示无符号数运算发生上溢出,其他情况下 C0; 在减法指令中(包括比较指令 CMP ),结果产生借位,则 C0,表 示无符号数运算发生下溢出,其他情况下 C1; 对于包含移位操作的非加 /减法运算指令, C 中包含最

10、后一次溢出位 的数值;对于其他非加 /减法运算指令, C 位的值通常不受影响。Z-结果为 0标志位 Z 1表示运算结果是 0,Z0 表示运算结果不是 零;对于 CMP指令, Z1 表示进行比较的两个数大小相等。N-符号标志位本位设置成当前指令运算结果的 bit31 的值。当两个补码表示有符号 整数运算时, N 1 表示运算的结果为负数, N0 表示结果为正数或 零。(10)ARM 指令可分为哪几类?说出哪几条指令是无条件执行的。ARM 指令可分为:数据处理指令,跳转指令,程序状态寄存器处理 指令,加载 /存储指令,协处理器指令,异常产生指令。 无条件执行指令: BLX 指令, BKPT 指令(

11、产生软件断点中断 )(11)如何实现两个 64 位数的加法操作,如何实现两个 64 位的减 法操作,如何求一个 64 位数的负数?实现 64 位数据加法运算:假设 R0和 R1存放了一个 64位数据(作为被加数), R0存放数据 的低 32位; R2和 R3中存放了另一个 64位数据(作为加数), R2 中存放低 32位数据。运算结果送回到 R1:R0中(R0 中存放低 32 位)。ADDSR0,R0,R2;低 32 位相加并影响标志位ADCR1,R1,R3;高 32 位相加再加上 C标志位(进位值) 实现 64 位数据减法运算:如果寄存器 R0 和 R1 中放置一个 64位的被减数,其中 R

12、0 中放置低 32位数值;寄存器 R2和 R3中放置一个 64位的减数,其中 R2中放 置低 32位数值。运算结果送回到 R1:R0中(R0 中存放低 32位)。 SUBSR0,R0,R2;低 32 位相减并影响标志位SBCR1,R1,R3;高 32位相减再减去 C 标志位的反码求一个 64 位数的负数:如果寄存器 R0 和 R1 中放置一个 64位数,其中 R0中放置低 32 位数 值;寄存器 R4 和 R5 中放置其负数,其中 R4 中放置低 32位数值。 RSBSR4,R0, #00减去低 32 位并影响标志位RSCR5,R1,#00减去高 32 位再减去 C标志位的反码4.程序题(1)

13、分析下列每条语句,并说明程序实现的功能。CMP R0, #0择题(1) B(2) A(3) C (4) D(5) A2.填空题(1) .so.a程序运行过程中编译过程中(2) LIo(3) $(4) $ ( CC、 CFLAGS等)(5)目标文件的完整名称 所有不重复的依赖文件,以空格隔 开 第一个依赖文件的名称、3.简答题(1)make 和 Makefile 之间的关系?答: make是一种命令,是根据 Makefile 文件的规则决定如何编译和 连接程序或其他的动作。(2)Makefile 的普通变量与预定义变量有什么不同?预定义变量 有哪些?它们分别表示什么意思? 答:普通变量:引用变量

14、时,只需在变量前面加上 $符;预定义变量: 已经定义好,直接引用即可。预定义变量有: $、$、$。$:表示完整的目标文件名; $:表示所有的依赖文件; $:表示依赖文件列表中的第一个文件。(3)GCC 编译器的常用参数有哪些?它们的功能分别是什么? 答:gcc 编译器的常用参数: -o,-I,-L,-E,-S,-c 功能: -o 表示编译成一个可执行程序; -I 表示指定头文件目录; -L 表示指定库文件目录选项; -E 表示对源代码进行预编译; -S 表示编 译成汇编代码; -c表示把.c 文件转换为以 .o为扩展名的目标文件。4.编程及调试题(1)根据要求编写 Makefile 文件。有

15、5 个文件分别是、, 具体代码如下。文件 include:存放、 src:存放、和 Makefile.3) 如果按照下面的目录结构存放文件,请改写 Makefile 文件 bin:存放生成的可执行文件 obj:存放.o 文件 include:存放、 src:存放和 Makefile src/src1:存放 src/src2:存放 说明:这可能只是其中一种方法,方法不唯一。我这种做法有一个缺 点就是需要修改和文件的内容,如修改 #include “ ./include/(2)按要求完成以下操作。1vi 编辑文件,其内容如下。2用 gcc o 编译,生成3用 gcc g o 编译,生成4比较和文件

16、的大小,思考为什么?带调试选项 -g 的目标文件比较大。因为在 gcc 编译源代码时指定 -g 选项可以产生带有调试信息的目标代码。(3)使用 GDB 调试上面的程序1调试参数 -g 进行编译#gcc g o test2启动 GDB 调试,开始调试#gdb Gtest3使用 gdb 命令进行调试。略。(4)编写一个程序,将系统时间以 year-month-day hour:minute:second 格式显示在屏幕上,并将它保存在文件。练习题1.填空题(1)串口(2)115200 8 1 无 无(3)编程器 串口 网络接口(4)Bootloader(5)程序仿真调试 程序的烧写(6)zImag

17、e(7)启动加载模式 下载模式(8)汇编语言 C 语言(9)U-Boot Blob ARMBoot (或者 RedBoot vivi)(10)BusyBox(11)启动加载模式说明:按回车进入启动加载模式; 按回车外的任意键进入 vivi 的下载 模式。2.选择题(1)A (2) C (3) A (4) A (5) A3.简答题(1)简述嵌入式开发环境的搭建过程答: 1、交叉编译工具链的安装; 2、安装配置 TFTP 服务; 3、安装 配置 NFS 服务; 4、C-Kermit 的安装配置; 5、minicom 的安装配置;6、 windows 下超级终端的配置。(2)BootLoader 的

18、结构分两部分,简述各部分的功能? 答:两部分:Stage1:用汇编语言编写,主要进行设备的初始化; Stage2: 用 C 语言编写,增强程序的移植性和可读性。(2)ARM 常用的 Bootloader 程序有哪些? 答: U-Boot, Blob, RedBoot,vivi(3)简述生成内核映像文件 zImage 的步骤。答: 1、 make config 进入命令行;2、 make menuconfig 内核裁剪;3、 make clean 清理以前已生成的目标文件;4、 make dep 编译变量的依赖关系;5、 make zImage 生成内核镜像文件 zImage。(4)BusyBo

19、x 工具的功能是什么?答:BusyBox 工具用来精简基本用户命令和程序, 它将数以百计的常 用 UNIX/Linux 命令集成到一个可执行文件中。(5)简述根文件系统的创建过程。答: 1、建立基本的目录结构;2、交叉编译 BusyBox;3、创建配置文件;4、利用 cramfs 工具创建根文件系统映像文件。练习题1.选择题(1)B (2)D (3)C (4)A (5)C (6)D2.填空题(1)内核态(2)字符设备 块设备(3)主设备号 次设备号(4)静态编译 动态编译(5)insmod 说明:用于加载模块化驱动程序的命令是 insmod;用于卸载已安装模 块化驱动程序的命令是 rmmod;

20、用于查看已安装的模块化驱动程序的 命令是 lsmod。3.简答题(1)简述驱动程序的主要功能。答: 1、对设备初始化和释放; 2、数据传送; 3、检测和处理设备出 现的错误。(2)简述驱动程序的组成。答: 1、自动配置和初始化子程序; 2、服务于 I/O 请求的子程序; 3、 中断服务子程序。(3)简述设备驱动程序与应用程序的区别。 答:1、设备驱动程序工作在内核态下,而应用程序工作在用户态下; 2、设备驱动程序从 module_init() 开始,将初始化函数加入内核初始 化函数列表中, 在内核初始化时执行驱动的初始化函数, 从而完成驱 动的初始化和注册,之后驱动便停止工作,等待应用程序的调

21、用;而 应用程序从 main()函数开始执行。3、应用程序可以和 GLIBC 库连接,因此可以包含标准的头文件;驱 动程序不能使用标准的 C库,因此不能调用所有的 C 库函数。(4)简述设备文件、驱动文件、主设备号和次设备号之间的关 系。答:驱动程序加载到内核后有一个主设备号。在 Linux 内核中,主设 备号标识设备对应的驱动程序, 告诉 Linux 内核使用哪一个驱动程序为该设备(也就是/dev下的设备文件 )服务,而次设备号则用来标识具体且唯一的某个设备。(5)简述字符设备驱动程序提供的常用入口点及各自的功能。 答:open入口点:对将要进行的 I/O 操作做好必要的准备工作, 如清 除

22、缓冲区等。 如果设备是独占的, 即同一时刻只能有一个程序访问此 设备,则 open 子程序必须设置一些标志以表示设备处于忙状态。 close入口点:当设备操作结束时,需要调用 close 子程序关闭设备。 独占设备必须标记设备可再次使用。 read入口点:当从设备上读取数据时,需要调用 read 子程序。 write 入口点:向设备上写数据时,需要调用 write 子程序。 ioctl 入口点: 主要用于对设备进行读写之外的其他操作, 比如配置设 备、进入或退出某种操作模式等, 这些操作一般无法通过 read 或 write 子函数完成操作。(6)简述逐次逼近型 ADC 的结构及工作原理。 答

23、:逐次逼近型 ADC 通常由比较器,数模转换器 (DAC) ,寄存器和 控制逻辑电路组成。工作原理:初始化时,先将寄存器各位清空。转换时,先将寄存器的 最高位置 1,再将寄存器的数值送入 DAC ,经 D/A 转换后生成模拟 量送入比较器中与输入的模拟量进行比较, 若 VsVi ,则该位的 1 被 保留,否则被清除;然后再将次高位置 1,再将寄存器的数值送入 DAC,经D/A 转换后生成的模拟量送入比较器中与输入模拟量进行 比较,若 VsVi ,则该位的 1 被保留,否则被清除;重复上述过程, 知道最低位,最后寄存器中的内容即为输入模拟值转换成的数字量。5.编程题S3C2410X通过 GPG3

24、端口来控制 LED 的亮和灭 ,具体电路如 图,请为该字符设备设计一个驱动程序和应用程序 ,应用程序能够根据用户需要来控制 LED 的 择题(1)C(2)D说明: TinyOS是 UC Berkeley ()开发的开放源代码(3)C2.填空题(1)X Windows ,Micro Windows , MiniGUI(或者 Qtopia Core , Qt/Embedded , OpenGUI )(2)X Window Server , Xlib ,帧缓存3.问答题(1)简述嵌入式 GUI 的特点。 答:1、轻型,占用资源少。嵌入式 GUI 要求是轻量型的,这主要是 受限于嵌入式硬件资源。2、可

25、配置。由于嵌入式设备的可定制性,要求相应的 GUI 系统也是 可以定制的,所以嵌入式 GUI 一般都具有可裁剪性。3、高性能。耗用系统资源较少,能在硬件性能受限的情况下、尤其 是 CPU 资源较少的情况下达到相对较快的系统响应速度,同时减少 能源消耗。4、高可靠性。系统独立,能适用于不同的硬件,在高性能的同时保 证高可靠性。(2)简述 Qt/X11 和 Qtopia Core 的异同点。 答:相同点: 都是嵌入式 GUI,也就是在嵌入式系统中为特定的硬件 设备或环境而设计的图形用户界面系统。Qt/X11 与 Qtopia Core最大的区别在于 Qt/X11 依赖于 X Window Serv

26、er或 Xlib ,而 Qtopia Core是直接访问帧缓存。它们所依赖的底 层显示基础是不同的,从而导致了体系结构上的差异。(3)简述信号与槽的作用。 答:信号:当某个信号对其客户或所有者发生的内部状态发生改变, 信号被一个对象发射。 只有定义过这个信号的类及其派生类能够发射 这个信号,当一个信号被发射时,与其相关联的槽将会被立刻执行。 槽:槽是普通的 C+成员函数, 可以被正常调用, 它们唯一的特殊性 就是很多信号可以与其相关联。 当与其相关联的信号被发射时, 这个 槽就会被调用。槽可以有参数,但槽的参数不能有缺省值。4.编程题编写 Qtopia Core 程序:在窗口建立两个按钮,单击

27、 Show Text 按钮时在单行文本框中显示 Hello World! ;单击 Quit 按钮时关闭窗口。练习题1.选择题(1)A (2)B2.填空题(3)A(1)可定制性好 供高级语言调用支持 SQL 查询语句 提供接口函数, 实时性好(2)自包含 跨平台 无数据类型3.问答题(1)常见的嵌入式数据库有哪些?嵌入式数据库和其他数据 库的主要区别是什么?答:常见的嵌入式数据库有 mSQL,Berkeley DB,SQLite。 数据处理方式的不同, 嵌入式数据库属于程序驱动式, 其他数据库属 于引擎响应式。逻辑模式的不同, 其他数据库基本上采用关系模型, 而嵌入式数据库 除采用关系模型外,还

28、会采用网状模型或两者的结合体。 优化重点不同,其他数据库由于面向通用的应用,优化的重点是:高 吞吐量、高效的索引机制、 详尽的查询优化策略。而嵌入式数据库是 面向特定应用的, 并且资源有限, 优化的重点是: 实时性、开销大小、 系统性能、可靠性、可预知性和底层控制能力。关键技术不同, 嵌入式数据库的很多关键技术与其他数据库不同, 如 备份恢复、复制与同步、事务和安全性等。(2)简述 SQLite 数据库的特点。答:SQLite 的特点包括: 无需安装和管理配置, 存储在单一磁盘文件 中的一个完整的数据库; 数据库文件可以再不同字节顺序的机器间自 由地共享,支持数据库大小最大为 2TB;包括 TCL 绑定,同时通过 Wrapper 支持其他语言的绑定;独立,没有额外依赖;支持多种开发 语言,支持事件,不需要配置、安装。(4)在SQLite 中有哪些数据类型? 答:SQLite支持 NULL,INTERGER,REAL,TEXT 和BLOB 数据 类型。4.编程题

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1