《嵌入式技术基础与实践》习题参考答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1章概述习题参考答案

1.嵌入式系统的基本含义是什么?为什么说单片机是典型的嵌入式系统?

答:即MCU的含义是:在一块芯片上集成了中央处理单元(CPU)、存储器(RAM/ROM 等)、定时器/计数器及多种输入输出(I/O)接口的比较完整的数字处理系统。大部分嵌入式系统以MCU为核心进行设计。MCU从体系结构到指令系统都是按照嵌入式系统的应用特点专门设计的,它能很好地满足应用系统的嵌入、面向测控对象、现场可靠运行等方面的要求。因此以MCU为核心的系统是应用最广的嵌入式系统。

2.简述嵌入式系统的特点以及应用领域。

答:嵌入式系统属于计算机系统,但不单独以通用计算机的面目出现;嵌入式系统开发需要专用工具和特殊方法;使用MCU设计嵌入式系统,数据与程序空间采用不同存储介质;开发嵌入式系统涉及软件、硬件及应用领域的知识;嵌入式系统的其他特点,比如紧张的资源,较高稳定性要求,低功耗,低成本等。一般用于工业控制,智能家电,日常电子等领域。

4.比较MCU与CPU的区别与联系。

答:CPU是一个单独的PC处理器。而MCU,则有微处理器,存储器(RAM/ROM等)、定时器/计数器及多种输入输出(I/O)接口的比较完整的数字处理系统。所以可以这么说,MCU 是一个包含微处理器的嵌入式系统,而CPU紧紧是一个处理器而已。

第2章FreescaleS08微控制器习题参考答案

1.给出AW60 存储器映像的简要说明。

答:所谓存储器映像,是指地址$0000 ~ $FFFF这个64KB空间,哪些地址被何种存储器所占用,或者说AW60的RAM、Flash、I/O映像寄存器各使用$0000 ~ $FFFF这个64KB空间中的哪些地址。简单地说,就是$0000 ~ $FFFF这个64KB空间是如何分配的。

2.AW60的引脚主要分为哪几类?简要说明主要引脚的功能。

答:(1)电源类信号引脚(2)复位信号引脚(3)主要功能模块引脚。比如定时器,IRQ中断等。(4)其他,比如背景调试BKGD引脚

主要引脚:AW60最小系统连接的I/O口,以及各具体功能I/O口。

3.嵌入式系统中RAM和Flash作用分别是什么?答:一般来说RAM这个区域安排用户数据(主要是全局变量)和堆栈空间;Flash

要用于存储程序、常数、中断向量等。

4.给出AW60的硬件最小系统。答:AW60芯片的硬件最小系统包括电源及其滤波电路、复位电路、晶振电路及PLL滤

波电路、写入器接口电路。

5.指出下列指令中的源操作数和目的操作数的寻址方式。

(1) MOV #$80 , $80 (2) MOV $80,$A0

(3) MOV $80 , X+ (4) MOV X+ , $80

(5) LDA $80 , X

答:(1)立即寻址,直接寻址

(2)直接寻址,直接寻址

(3)直接寻址,无偏移量变址、变址加1寻址方式

(4)无偏移量变址、变址加1寻址方式, 直接寻址

(5)直接寻址,无偏移量变址、变址加1寻址方式

8.说明芯片初始化时堆栈指针的初始化方法。

答:SP是指向下一个栈地址的16位寄存器,堆栈指针SP采用递减的结构,即进栈

SP减1,出栈时SP加1。初始化时,SP的初值为$00FF(前置符号$表示十六进制数)。栈指针复位指令(RSP)可将SP的低8位置为$FF,而不影响高8位。

10.编写一段延时1000个指令周期的延时子程序。

答:DL1000;

MOV R7#248

DJNZ R7$

MOV R7#250

DJNZ R74

RET

第3章第一个样例程序及工程组织习题参考答案

1.什么叫通用I/O口?

答:所谓通用I/O,也记为GPIO(GeneralPurposeI/O),即基本的输入/输出,有时也称并行I/O,或普通I/O,它是I/O的最基本形式。

2.什么叫上拉电阻与下拉电阻?它们的作用是什么?如何选择上拉电阻与下拉电阻的阻值?哪些情况下使用上拉电阻?哪些情况下使用下拉电阻?

答:通俗地说,若MCU的某个引脚通过一个电阻接到电源(Vcc)上,这个电阻被称为“上拉电阻”。与之相对应,若MCU的某个引脚通过一个电阻接到地(GND)上,则相应的电阻被称为“下拉电阻”;他们使得悬空的芯片引脚被上拉电阻或下拉电阻初始化为高电平或低电平;根据实际情况,上拉电阻与下拉电阻可以取值在1KΩ~10KΩ之间,其阻值大小与静态电流及系统功耗相关;当某个引脚需要初始化成高电平时可以通过上拉电阻接电源,当某个引脚要初始化低电平时可以通过下拉电阻接地。

3.什么是OC输出?为什么OC输出的I/O口一定要上拉?

答:OC输出,即开漏输出,即集电极开路。只有接了上拉电阻,才能输出高低电平,否则只能输出低电平了。

4.为什么在无操作系统的嵌入式系统软件主程序中使用无限循环?

答:由于程序都是顺序执行的。如果不使用无限循环,程序执行一遍代码,就不能在接受其他的任务操作了。在嵌入式系统中,这是致命的,如果一个嵌入式产品每次只能使用一次或只接受一次任务,那是无法想象的。但是使用了无限循环,就可以不停地监听任务,并执行。

5.找出样例子工程的机器码文件,解释S19文件的含义。

答:源文件经编译、连接后可获得目标码文件(.S19文件),它是FreescaleMCU的机器码文件,通过写入程序可将机器码下载到目标MCU内的Flash存储器,也可以通过光盘中苏州大学嵌入式系统研发中心开发的独立写入软件SD-Programmer-S08读出写入到Flash的S19的内容,观察实际写入到Flash的内容是否和S19的内容相同。该程序也可以擦写Flash。目标代码文件是以S记录格式表示的机器码文件。S记录格式是Freescale公司的十六进制目标代码文件,它将目标程序和数据以ASCII码格式表示,可直接显示和打印。目标文件由若干行S记录构成,每行S记录可以用CR/LF/NUL结尾。一行S记录由五部分组成,具体细节请参考书中3.4.4。

6.举例给出CW环境C语言工程文件的组织结构图。

答:以下是控制小灯闪烁的CW环境C语言工程文件的组织结构图。

7.分析Project.prm文件的功能。

答:Project.prm文件主要实现了芯片的RAM和ROM的定义,初始化RAM中的变量。初始化堆栈的大小。定义复位向量,即应用程序的默认入口。还包含了启动代码,是硬件复位后的函数入口

第4章基于硬件构件的嵌入式系统开发方法

3.为什么要将某些寄存器名和寄存器位在头文件中进行宏定义?

答:对MCU内的模块寄存器名和端口名进

行重定义,在其它的代码里面都将使用宏名

对模块寄存器和端口进行操作。这样,当底

层驱动程序移植到其它MCU时,只要修改

重定义语句就可以了。

4.为什么在设计底层硬件驱动构件

时,不能使用全局变量?

答:应用程序在使用底层构件时,严格禁止

通过全局变量来传递参数,所有的数据传递

都要通过函数的形式参数来接收。这样做不

但使得接口简洁,更加避免了全局变量可能

引发的安全隐患。

第5章串行通信接口SCI习题参考答案

1.简要阐述异步串行通信涉及的主要

基本概念。

答:串行通信至少涉及到以下几个基本概念:第一,每个字节之间是如何区分开的?第二,发送一位的持续时间是多少?第三,怎样知道传输是正确的?第四,可以传输多远?这些问题属于串行通信的基本概念。

2.表征串行通信速度的物理量是什么?串行通信的传输速度有限制吗?

相关文档
最新文档