单片机应用技术课后习题答案任务1-7北邮(高职).docx

上传人:太** 文档编号:72753790 上传时间:2023-02-13 格式:DOCX 页数:49 大小:66.79KB
返回 下载 相关 举报
单片机应用技术课后习题答案任务1-7北邮(高职).docx_第1页
第1页 / 共49页
单片机应用技术课后习题答案任务1-7北邮(高职).docx_第2页
第2页 / 共49页
点击查看更多>>
资源描述

《单片机应用技术课后习题答案任务1-7北邮(高职).docx》由会员分享,可在线阅读,更多相关《单片机应用技术课后习题答案任务1-7北邮(高职).docx(49页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、单片机应用技术课后习题答案任务L7北邮学习任务一课后习题答案1什么是单片微型计算机?答:单片微型计算机是将计算机的基本部件微型化并集成到一块 芯片上的微型计算机,是计算机微型化的典型代表之一,通常片内都 含有CPU、ROM、RAM、并行I/O、串行I/O、定时器/计数器、中断 控制、系统时钟及系统总线等。2单片机的发展经历了哪几个阶段?答:单片机初级阶段(19741976年),芯片化探索阶段(1976 1978年),8位单片机成熟阶段(19781982年),从SCM向MCU 过渡阶段(19831990年),MCU百花齐放阶段(1990年一至今)。 3单片机可分为几个系列?简述每个系列的主要特性

2、。答:单片机按系列可分为80C51系列、PIC系列和AVR系列等。PIC系列单片机是Micro Chip公司的产品,与51系列单片机不 兼容。DPIC系列单片机最大的特点是从实际出发,重视产品的性能与 价格比,发展多种型号来满足不同层次的应用要求。2)精简指令使其执行效率大为提高。3)产品上市零等待(Zero time to market)。4) PIC有优越开发环境。5)其引脚具有防瞬态能力,通过限流电阻可以接至220V交流电 开始的区域,为了不占用工作寄存器ROR7的地址,一般在编程时 应设置SP的初值(最好在30H7FH区域)。8程序状态字寄存器PSW的作用是什么?其中状态标志有哪几位?

3、它 们的含义是什么?答:PSW是保存数据操作的结果标志,其中状态标志有CY (PSW.7):进位标志,AC (PSW.6):辅助进位标志,又称半进位标 志,F0、Fl (PSW.5、PSW.1):用户标志;OV(PSW.2):溢出标志; P (PSW.0):奇偶标志。9什么是堆栈?堆栈有何作用?为什么要对堆栈指针SP重新赋值? SP的初值应如何设定?答:堆栈是一种数据结构,所谓堆栈就是只允许在其一端进行数 据写入和数据读出的线性表。其主要作用有两个:保护断点和保护现场。堆栈区的设置原则上可以在内部RAM的任意区域,但由于MCS- 51单片机内部RAM的00H1FH地址单元已被工作寄存器R0-R

4、7占 用,20H2FH为位寻址区,故堆栈一般设在30H7FH (对于8032系 列芯片可为30HOFFH)的区域内。单片机复位后,SP的内容为07H, 堆栈事实上由08H单元开始,考虑到08H-1FH单元分别属于13组 的工作寄存器区,则最好把SP值改置为1FH或更大的值。10开机复位后,CPU使用的是哪组工作寄存器?它们的地址如何? CPU如何指定和改变当前工作寄存器组?答:开机复位后使用的是0组工作寄存器,它们的地址是 00H-07H,对程序状态字PSW中的RS1和RSO两位进行编程设置, 可指定和改变当前工作寄存器组。RSI、RSO=OOH时,当前工作寄存 器被指定为0组;RS1、RSO

5、=O1H时,当前工作寄存器被指定为1组; RSI、RS0=10H时,当前工作寄存器被指定为2组;RSK RSO=11H 时,当前工作寄存器被指定为3组。HMCS-51的时钟周期、机器周期、指令周期是如何定义的?当振荡 频率为12MHz时,一个机器周期为多少微秒?答:时钟周期也称为振荡周期,定义为时钟脉冲的倒数,是 计算机中最基本的、最小的时间单位。CPU取出一条指令至该指令执行完所需的时间称为指令周期, 因不同的指令执行所需的时间可能不同,故不同的指令可能有不同的 指令周期。机器周期是用来衡量指令或程序执行速度的最小单位。它的 确定原则是以最小指令周期为基准的,即一个最小指令周期为一个机 器周

6、期。当振荡频率为12MHz时,一个机器周期1微秒12 MCS-51单片机的控制信号有哪些功能?答:是访问程序存储器控制信号。当端接低电平时,则不管芯片 内部是否有程序存储器,CPU只访问外部程序存储器。对8031来说, 因其内部无程序存储器,所以该引脚必须接地。当端接高电平时,CPU 访问内部程序存储器,但当PC (程序计数器)值超过某一值时,将 自动转向片外程序存储器1000H地址继续执行程序。是地址锁存允许信号。当CPU访问外部存储器或I/O接口时,ALE输出脉冲的下降沿用于锁存16位地址的低8位。在不访问外部存储器或I/O接口时,ALE端有周期性正脉冲输出,其频率为振荡频 率的1/6。但

7、是,每当访问外部数据存储器或I/O接口时,在第二个 机器周期中ALE只出现一次,即丢失一个ALE脉冲。片外程序存储器读选通信号。在CPU从外部程序存储器读取指 令(或常数)期间,每个机器周期两次有效,但在访问外部数据存储 器或I/O接口时,信号将不出现。端可以驱动8个TTL负载。13 MCS-51的片外程序存储器和片外数据存储器共处同一地址空间 为什么不会发生总线冲突?答:MCS-51的片外程序存储器和片外数据存储器共处同一地址 空间,地址范围都是0000HFFFFH(64KB),但不会发生总线冲突。 因片外程序存储器和片外数据存储器的读写控制信号不同,片外程序 存储器的读信号是,而片外数据存

8、储器的读信号为、写信号为,访问片 外程序存储器和片外数据存储器的指令也不同,所以它们不会发生总 线冲突。14简述MCS-51内部数据存储器的存储空间分配。答:内部数据存储器分为3个区域:1 .工作寄存器区(00H1FH);2 .位寻址区(20H2FH);3 .堆栈和数据缓冲器区(30H7FH或30H0FFH)。15位地址和字节地址有何区别?位地址20H具体在内存中什么位 置?答:MCS-51的位存储器由以内部RAM中20H-2FH单元和特殊 功能寄存器中地址为8的倍数的特殊功能寄存器两部分组成。其中每 个单元的每一位都有一个位地址映像,它们既可以像普通内部RAM 单元一样按字节存取,也可以对单

9、元中的任何一位单独存取。字节地址是内部RAM中和特殊功能寄存器中每个存储单元的地 址。位地址20H是内部RAM24H中的DO位。16 8051的4个I / O 口作用是什么? 8051的片外三总线是如何分配 的?答:MCS-51单片机有4个8位并行I/O端口,分别记作P0、P1、 P2、P3 口。在访问片外扩展存储器时,P0 口分时传送低8位地址和数 据,P2 口传送高8位地址。P1 口通常作为通用I/O 口供用户使用。 P3 口具有第二功能,为系统提供一些控制信号。在无片外扩展存储器的系统中,这4个口均可作为通用I/O端口 使用。在作为通用I/O端口使用时,这4个口都是准双向口。在访问片外扩

10、展存储器时,片外三总线的构成:P0 口传送低8位地址经锁存器所存构成低8位地址总线,高8 位地址总线由P2 口构成。P0 口作为单片机系统的低8位地址/数据线分时复用,在低8位地址锁存后,P0 口作为双向数据总线。由P3 的第二功能输出数据存储器的读、写控制信号与片外程序存储器读选通信号,访问程序存储器控制信号,地址锁存允许信号 构成控制总线。17汇编语句是由4个部分(字段)构成的,简述各部分的含义。答:汇编语句的4个部分为:标号:”操作码H操作数;注释 标号是用户设定的一个符号,表示存放指令或数据的存储单元地 址。标号由以字母开始的1一8个字母或数字串组成,以冒号结尾。 不能用指令助记符、伪

11、指令或寄存器名来作标号。标号是任选的,并 不是每条指令或数据存储单元都要标号,只在需要时才设标号。如转 移指令所要访问的存储单元前面一般要设置标号。一旦使用了某标 号定义一个地址单元,在程序的其它地方就不能随意修改这个定义, 也不能重复定义。操作码是指令或伪指令的助记符,用来表示指令的性质或功能。 对于一条汇编语言指令,这个字段是必不可少的。操作数给出参加运算(或其它操作)的数据或数据的地址。操作数 可以表示为工作寄存器名、特殊功能寄存器名、标号名、常数、表达 式等。这一字段可能有,也可能没有。若有两个或三个操作数,它们 之间应以逗号分开。注释字段不是汇编语言的功能部分,只是增加程序的可读性。

12、言 简意赅的注释是汇编语言程序编写中的重要组成部分。18举例说明MCS-51单片机的7种寻址方式,各寻址方式的寻址空 间。1.立即寻址立即寻址方式的寻址空间为程序存储器。例如:MOV A, #3FH;3FHA2.直接寻址直接寻址方式中操作数存储的空间有三种:1.内部数据存储器的低128个字节单元(00H7FH)例如: MOV A, 30H; (30H) 一A指令功能是把内部RAM 30H单元中的内容送入累加器Ao位地址空间例如: MOV C, 00H;直接位00H内容一进位位特殊功能寄存器例如:MOV IE, #85H;立即数85H一中断允许寄存器IEo3 .寄存器寻址寄存器寻址方式的寻址空间

13、为工作寄存器和特 殊功能寄存器等。例如: MOV A, R6; (R6) 一A4 .寄存器间接寻址寄存器间接寻址空间为内部RAM 128字节, 外部RAM例如: MOV A, R0; ( (RO) )-A5 .变址寻址变址寻址空间为程序存储器。例如: MOVC A, A+DPTR ; (DPTR) + (A) 一A学习任务二课后习题答案1.单片机应用系统设计与开发过程分为几个阶段?答:单片机系统的传统开发过程一般可分为3步:(1)单片机系统原理图设计、选择元器件插件、安装和电气检测 等(简称硬件设计)。(2)单片机系统程序设计、汇编编译、调试和编程等(简称软件设 计)。(3)单片机系统实际运行

14、、检测、在线调试直至完成(简称单片机 系统综合调试)。2 .单片机开发系统由哪些部分组成?各部分的具体任务是什么? 答:主要有总体设计、硬件系统设计与调试、软件设计、仿真调试和 系统脱机运行检查5个部分组成(1)总体设计总体设计包括以下几方面:1)机型选择。 2)器件选择 3)软硬件功能划分。(2)硬件设计硬件的设计是根据总体设计要求,进行系统电路设计和PCB绘 制。(3)软件设计软件设计包括拟定程序的总体方案、画出程序流程图、编制具体 程序以及程序的检查修改等。(4)系统脱机运行检查系统应用程序调试合格后,利用程序写入器将应用程序固化到单 片机的程序存储器中,然后将应用系统脱离仿真器进行上电

15、运行检查。 由于单片机实际运行环境和仿真调试环境的差异,即使仿真调试合格, 脱机运行时也可能出错,所以这时应进行全面检查,针对可能出现的 问题,修改硬件、软件或总体设计方案。3 .应用系统可靠性设计方法有哪些?答:提高系统可靠性的措施如下:(1)采用抗干扰措施1)抑制电源噪声干扰:安装低通滤波器、减少印制板上交流电 引进线长度,电源的容量留有余地,完善滤波系统、逻辑电路和模拟 电路的合理布局等。2)抑制输入/输出通道的干扰:使用双绞线、光电隔离等方法和 外部设备传送信息。3)抑制电磁场干扰:电磁屏蔽。(2)提高元器件可靠性1)选用质量好的元器件并进行严格老化测试、筛选。2)设计时技术参数留有一

16、定余量。3)印制板和组装的工艺质量。4) E2ROM型和Flash型单片机不宜在环境恶劣的系统中使用。(3)采用容错技术1)信息冗余:通信中采用奇偶校验、累加和校验、循环码校验等措施,使系统具有检错和纠错能力。2)使用系统正常工作监视器(watchdog):对于内部有watchdog 的单片机,合理选择监视计数器的溢出周期,正确设计监视计数器的程序。对于内部没有watchdog的单片机,可以外接监视电路。4 .如何创建汇编语言原代码仿真文件?答:创建汇编语言原代码仿真文件需要如下4步:(1)源文件的建立(2)建立工程文件 (3)工程设置 (4)编译、连接5 .如何在原理图中进行汇编语言源代码仿

17、真调试?答:在原理图中进行汇编语言源代码仿真调试需要如下4步:(1)安装 vdmagdi.exe 插件(2) Proteus 的设置(3) Keil ision3 的设置(4) Proteus 与 KeilNVision3 联调6 .单片机的硬件调试主要内容有哪些?答:(1) Proteus电路设计。利用Proteus进行单片机系统硬件设计, 在ISIS平台上进行单片机系统电路设计、选择元器件、插接件、连接 电路和电气检测。(2) Keil源程序设计。在Keil平台上进行单片机系统程序设计、 编辑、汇编编译、调试,最后生成日标代码文件(*刈;或在ISIS平 台上进行单片机系统程序设计、编辑、汇

18、编编译、调试,最后生成目 标代码文件(* .hex)。(3) Proteus实时仿真。在ISIS平台上将目标代码文件加载到单 片机系统中,并实现单片机系统实时交互、协同仿真,它在相当程度 上反应了实际单片机系统的运行情况。(4) PCB与硬件的设计和制作。利用Proteus自动生成PCB板电 路图,并制作PCB板,安装元器件和接口,利用开发系统将上面生 成的.hex文件下载到单片机芯片,完成调试与设计。7 .单片机的软件设计步骤是什么?答:(1)程序的总体设计。这是指从系统高度考虑程序结构、数据 形式和程序功能的实现手法及手段。在拟定总体设计方案时,要求设 计者根据系统的总任务选用切合实际的程

19、序设计方法,画出程序的流 程图(2)程序的编制。程序流程图绘制成后,整个程序的轮廓和思 路已十分清楚。设计者就可统筹考虑和安排一些带有全局性的问题, 例如程序地址空间分配、工作寄存器安排、数据结构、端口地址和输 入/输出格式等,然后依照流程图来编制具体程序。(3)程序的检查和修改。一个实际的应用程序编好以后,往往 会有不少潜在隐患和错误,因此,源程序编好后在上机调试前进行静 态检查是十分必要的。静态检查采用自上而下的方法进行,发现错误 及时修改,可以加快整个程序的调试进程。(4)仿真调试。在硬件系统测试合格且应用程序通过汇编检查合格后,方能进入仿真调试。源,可直接与继电器控制电路相连,无须光电

20、耦合器隔离,给应用带来 极大方便。6)彻底的保密性。7)自带看门狗定时器,可以用来提高程序运行的可靠性。8)睡眠和低功耗模式。AVR单片机是1997年由ATMEL公司研发出的增强型内置Flash 的RISC(Reduced Instruction Set CPU)精简指令集高速8位单片机。 AVR单片机的主要特性1) AVR单片机以字作为指令长度单位,将内容丰富的操作数与 操作码安排在一字之中(指令集中占大多数的单周期指令都是如此), 取指周期短,又可预取指令,实现流水作业,故可高速执行指令。2) AVR单片机硬件结构采取8位机与16位机的折中策略,即采 用局部寄存器堆(32个寄存器文件)和单

21、体高速输入/输出的方案(即输 入捕获寄存器、输出比较匹配寄存器及相应控制逻辑)。提高了指令执 行速度(IMIPS/MHz),克服了瓶颈现象;同时又减少了对外设管理的 开销,相对简化了硬件结构,降低了成本。3) AVR单片机内嵌高质量的Flash程序存储器,擦写方便,支 持ISP和IAP,便于产品的调试、开发、生产、更新。4) AVR单片机的I/O线全部带可设置的上拉电阻、可单独设定 为输入/输出、可设定(初始)高阻输入、驱动能力强(可省去功率驱 动器件)等特性,使得I/O 口资源灵活、功能强大、可充分利用。5) AVR单片机片内具备多种独立的时钟分频器,分别供URAT、8. Keil C51编

22、译器除了支持基本数据类型之外,还支持哪些扩充数据 类型?答:bit:位类型,可以定义一个位变量,但不能定义位指针,也不能 定义位数组。sfr:特殊功能寄存器,可以定义AT89S51单片机的所有内部8位 特殊功能寄存器。sfr型数据占用一个内存单元,其取值范围是0255。sfrl6: 16特殊功能寄存器,可以定义AT89s51单片机的所有内 部16位特殊功能寄存器。sfrl6型数据占用两个内存单元,其取值范围 是 065535。sbit:可寻址位,可定义AT89S51单片机内部RAM中可寻址位 或特殊功能寄存器中的可寻址位。9. Keil C51编译器能够识别哪些存储器类型?答:存储器类型 da

23、ta、idatax bdata xdata、pdata 和 code10. C51中的AT89S51单片机的特殊功能寄存器如何定义?试举例说 明。答:sfr变量名二地址值举例:sfr Pl =0x90;11. C51中的AT89S51单片机的并口如何定义?试举例说明。答:对于AT89S51片内I/O 按特殊功能寄存器方法定义。例如:sfr P0=0x80;对于片外扩展I/O 口,则根据硬件译码地址,将其视为片外数据 存储器的一个单元,使用#define语句来定义。例如:#include #define PORTA XBYTE OxffcO12. C51中的AT89S51单片机的位单元如何定义?

24、试举例说明。答:使用sbit来定义,sbit的用法有3种。(1) sbit位变量名二地址值;如sbit OV=OXd2;(2) sbit位变量名二特殊功能寄存器名称人变量位地址值;如 sbit OV=PSWA2 ;(3) sbit位变量名二特殊功能寄存器地址值人变量位地址值; 如 sbit OV=OxDOA2 ;13. Keil C51编译器支持哪两种类型的指针?这两种指针有什么区别? 答:C51支持“基于存储器”和“一般”两种指针类型。基于存储器的指针类型由C语言源代码中存储器的类型决定,并 在编译时确定,可以高效地访问对象且只需12字节。一般指针需占3个字节:存储器类型占1个字节,偏移量占

25、2个 字节。存储器类型决定对象所用的AT89S51存储空间,偏移量指向 实际地址。一个一般指针可访问任何变量而不管它在AT89S51存储 器中的位置。14. 如何实现用Keil C51与Proteus原理图进行高级语言源代码仿真调试?答:(1)通过Keil C51生成仿真文件(2)添加仿真文件 (3)系统调试学习任务三课后习题答案L发光二极管导通的条件是什么?在本单元中如何控制发光二 极管的亮灭。答:发光二极管导通的条件是:发光二极管的PN结加正向偏置, 即二极管正极加正向电压,其负极加负向电压,当正极和负极之间电 压超过0.3V以上时,发光二极管导通。在本单元中,由于单片机的结构原因,51系

26、列单片机对外提供负 载电流(拉电流)的能力很弱,如果外接多个负载(本项目中负载是 发光二极管),需要单片机对外提供的总电流会很大,超出它的供给 能力,所以驱动不了这些负载(这里就指外接的这些发光二极管不能 完全发光),还会造成单片机损坏。但单片机接受灌电流(单片机接 受负载输入的电流)的能力却很强,这样本项目中的8个发光二极管47220Q的限流电阻到Vs上。当需要哪个发光二极管点亮时,P0 口的相应位输出低电平0即可,熄灭时,相应位输出高电平1即可。2 .本单元中用到哪些类型的数据传送指令,举例说明?答:本单元中用到的数据传送指令有如下几种方式:MOV Pl, #0FFHMOV P2, #0F

27、FHMOV A, Pl ;(可以用ANL A, Pl指令来完成同 样的任务)MOV PO, A注释:前两条指令是对单片机的I/O端口进行初始化,主要 是由于51系列单片机的结构原因决定的。后两条传送指令的用途 是:读取端口 P1的输入值,再把这一数值送给P0端口输出。3 .查阅相关资料,说明为什么在读51系列单片机的并行端口之 前要先对端口初始化(置1) ?答:51系列单片机在并行口 PO、Pk P2或P3作输入数据的端 口时,先给此8位并行口送去全1,然后再读这些并行端口,才能保 证读入的数据不会出错。这是由于单片机在设计之初存在的一个缺陷, 同学们可以通过分析学习任务一中图1-10单片机并

28、行端口结构得出 结论,以P0 口为例:当P0 口作为数据输入时,仅从外部存储器(或I/O)读入信息, 对应的“控制”信号为0, MUX接通锁存器的0端。当P0 口从外部读 取数据时,必须先给P0端口写入0FFH,使下方场效应管截止,上方 场效应管由于控制信号为0也截止,从而保证数据信息的高阻抗输 入,从外部存储器输入(或从I/O读取)的数据信息直接由PO.X引脚 通过输入缓冲器BUF2进入内部总线。如果下方的场效应管导通接地, 这时读入的数据就始终是0,就不能把高电平正确读入了。4 .利用伟福仿真软件WAVE进行程序编译并仿真时,需要哪些 步骤?答:用伟福仿真软件WAVE进行程序编译并仿真时,

29、需要如下步 骤:(1)打开WAVE仿真软件,选择“新建文件”,输入软件程序。(2)保存新建文件,扩展名必须为(.ASM或.asm)。(3)选择“新建项目。加入刚保存的新建文件。(4)保存新建项目,系统自动添加项目名称的扩展名。(5)仿真器设置中,在“语言”选项里选“伟福汇编器”。(6)在“项目”菜单中选“编译”或按F9键,进行程序编译。(7)根据编译提示信息进行修改,直到编译成功,生成可执行 的十六进制文件(Hex)。(8)打开CPU窗口和外设端口,“单步运行”或设置好断点进行 “连续运行”。5 .单片机程序设计时,程序的结构主要分哪几种,各有什么特点?答:3种基本程序结构组成,分别是顺序结构

30、、分支结构、循环 结构。顺序结构程序设计的特点:程序简单明了,结构清晰,往往是构 成复杂结构程序的基础。但这种结构编写出来的程序,在修改时效率低,程序冗长,占用存储空间大。分支结构程序设计的特点:根据实际问题设定条件,通过对条件 是否满足的判断,产生一个或多个分支,以决定程序的流向。分支程 序的特点就是程序中含有条件转移指令,在智能化判断方面分支结构 有明显优势,正确合理地运用条件转移指令是编写分支程序的关键。循环结构程序设计的特点:实际应用系统中,对同一组操作要重 复执行许多次的情况,这种有规律可循又反复出现的问题,可以采用 循环结构设计的程序来解决。这样可以使程序简短、条理清晰、运行 效率

31、高,占用存储空间少。6 .结合本学习任务中手动控制彩灯电路图,编写程序段,实现当开关S3闭合时,8个彩灯分成两组,实现每组(4个)彩灯交替闪 烁,间隔500ms。宏.口 ORG 00H;读Pl 之前,对其进;对P0初始化;读开关状态,MOV Pl, #0FFH行初始化MOV P0, #0FFHLOOP: MOV A, PlJNBACC.2, FLASH ;第3个开关闭合,转FLASH程序MOV P0, A;不是第3开关闭合,就输出开关当前状态LCALLDEL500ms;延时500MsSJMP LOOPFLASH :闪烁程序MOV A, #0FHRETURN : MOV P0, A;最高4位灯点

32、亮LCALL DEL500msMOV A, #0F0HMOV P0, ALCALL DEL500ms;最低4位灯点亮SJMP FLASHDEL500ms :;延时500ms子程序MOV R3, #5LOOP3 : MOV R4, #200LOOP2 : MOV R5, #250LOOP1 : DJNZ R5, LOOP1DJNZR4, LOOP2DJNZR3, LOOP3RETEND7 .简述把编译好的程序下载到单片机中的过程。(1)把单片机从电路板上取下,放到编程器上。(2)打开编程器软件,在“操作”菜单下选单片机型号。(3)打开编译好的可执行文件(.Hex)到文件缓冲区。(4)点击“运行”

33、中的“开始”按钮,把程序下载到单片机中,把调试好的程序下载到单片机中,通电运行联合调试,观察电路是否达到设计要求。如果出现问题,先从硬件电路连接开始查找,测 试相关管脚是否与设计相符。8.写一份本任务的学习总结。学习总结(略)学习任务四课后习题答案L算术运算指令都包括哪几种指令?答:算术运算指令共有24条,算术运算主要是执行加、减、乘、 除法四则运算。另外AT89S51指令系统中有相当一部分是进行加、 减1操作,BCD码的运算和调整,都归类为运算指令。(1)不带进位的加法指令ADD (Addition) (4条)(2)带进位加法指令 ADDC (Addition with Carry) (4

34、条)(3)带借位减法指令 SUBB (Subtraction with Borrow) (4 条)(4)加 1 指令 INC (Increment) (5 条)(5)减 1 指令 DEC (Decrement) (4 条)(6)乘法指令 MUL (multiply) (1 条)(7)除法指令 DIV (divide ) (1 条)(8)十进制调整指令DA (1条)2.BCD码进行加法运算后,为什么要进行十进制调整?答:BCD码在进行加法运算时会出现结果错误现象,出错原因在 于BCD码共有16个编码,但只用其中的10个,剩下6个没用到。 这 6 个没用到的编码(1010, 1011, 1100,

35、 1101, 1110, 1111)为无 效编码。在BCD码加法运算中,凡结果进入或者跳过无效编码区时, 结果出错。因此1位BCD码加法运算出错的情况有两种: 加结果大于9,说明已经进入无效编码区。加结果有进位,说明已经跳过无效编码区。无论哪种错误,都因为6个无效编码造成的。因此,只要出现上 述两种情况之一,就必须调整。方法是把运算结果加6调整,即十进 制调整修正。3 .移位寄存器74LS164在本单元应用中的作用是什么?工作中 与单片机哪些管脚相连?答:单片机的并行输出端口有限,在很多场合数据都是先从单片 机的串口输出,传送到显示电路时再通过功能芯片把一位一位串行的 数据转换成并行的数据一起

36、送到显示数码管或其它设备上。移位寄存 器74LS164在本单元应用中的作用就是把串行数据转换为并行数据。 转换过程是串行的8位数据在8个时钟脉冲之后,被依次分配给 74LS164的Q0-Q7,这8位数据再并行地送给后面的电路,从而完成 串行到并行数据传输的转换。工作中与单片机管脚的连接见图4-19, 74LS164的1和2脚(A和B)一并连接到单片机的10脚(RXD)上,74LS164的8脚(CLK)接到单片机的11脚(TXD) o4 .写出下面这段程序的运行结果。MOV A, #79HMOV 20H, #18HADD A, 20H;79H+18H=91H (此时累加器 A=91H)DA A;

37、加法运算后进行十进制调整,调整后累加器A=97HSWAP A;累加器A低四位与高四位对调,对调后A=79H答:最终累加器A的值为79H。5 .利用查表指令编写程序,要求:单片机P1 口外接8位拨位开关,根据读取P1 口的键值,在P0 口输出该键值的平方。答:DBUFORGMOVMAIN: ACALLACALLAJMPKEY:MOVMOVEQU 30H0000H30H, #00DISPKEYMAIN;键值提取程序Pl,#0FFHCJNE A,#0FFH,K01A,PlI2C、SPI 使用。6)增强性的高速同/异步串口,具有硬件产生校验码、硬件检测 和校验帧错、两级接收缓冲、波特率自动调整定位(接

38、收时)、屏蔽 数据帧等功能,提高了通信的可靠性,方便程序编写,更便于组成分 布式网络和实现多机通信系统的复杂应用,串口功能大大超过MCS- 51/96单片机的串口,加之AVR单片机高速,中断服务时间短,故可 实现高波特率通讯。7)面向字节的高速硬件串行接口 TWI、SPIo TWI与12c接口 兼容,具备ACK信号硬件发送与识别、地址识别、总线仲裁等功能, 能实现主/从机的收/发全部4种组合的多机通信。SPI支持主/从机等 4种组合的多机通信。8) AVR单片机有自动上电复位电路、独立的看门狗电路、低电 压检测电路BOD,多个复位源(自动上电复位、外部复位、看门狗复 位、BOD复位),可设置的

39、启动后延时运行程序,增强了嵌入式系统 的可靠性。9) AVR单片机具有多种省电休眠模式,且可宽电压运行 (52.7V),抗干扰能力强,可降低一般8位机中的软件抗干扰设计 工作量和硬件的使用量。10) AVR单片机技术体现了单片机集多种器件(包括FLASH程序 存储器、看门狗、EEPROMX同/异步串行口、TWh SPL A/D模数 转换器、定时器/计数器等)和多种功能(增强可靠性的复位系统、降低 功耗抗干扰的休眠模式、品种多门类全的中断系统、具有输入捕获和AJMPKOI:MOVMOVMOVMOVK02:MOVMOVCCJNEK03:MOVCJNEMOVRETK04:INCDJNZMOVAJMP

40、KEYR3,#9R2,#00HB,ADPTR,#K0TABA,R2A,A+DPTRA, B, K04A,PlA,#0FFH,K03A,R2R2R3,K02A,#0FFHKOTAB: DB0FFH,0FEH,0FDH,0FBH,0F7HDB 0EFH,0DFH,0BFH,7FHDISP:;显示输出平方值的程序MOVDBUF,AMOVR0,#DBUFKEYDP10: MOVMOVMOVCMOVDPTR,#SEGTABA,R0A,A+DPTRP0,ARETSEGTAB: DB0, 1,4,9,16;平方值表,按0-8的顺序存放DB25,36,49,64END6 .编写程序段,实现两个8位无符号数的乘

41、法程序,积存放在R2、R3中(R2存放高位)。答:MOV 30H,#35HMOV 40H,#89HMOV A,30HMOV B,40HMUL ABMOV R2,BMOV R3,AEND7 .已知(30H)=17H,(31H)=38H,分析下面这段程序的运行过程,在每条语句右边的空格中写出在执行完该语句后相应单元的结果。MOV A, 30HADD A, 31HDA A(A)二 17H(A) = 4FH(A) =55H8 .在本单元秒表系统制作中应用的74LS48其功能是什么?在 秒表数值输出过程中,是如何进行数值拆分显示的?结合秒表电路原 理图写出数值输出程序段。答:本单元中的74LS48起到并

42、行译码的作用,实现7段显示译 码器基本功能的输入(DCBA)和输出(ag)间的转换,即把单片 机输出的16进制数(或二进制数),编译成对应的10进制数的七段 数码管段码值,也就是数码管的字形编码,显示出常用的十进制数, 省去了软件编写转换程序的繁琐。学习任务五课后习题答案1 . AT89S51单片机中有几个定时/计数器?它们是由哪些特殊 功能寄存器组成的?答:AT89s51单片机内部有两个定时/计数器T0和T1,每个定 时/计数器都可以实现定时和计数功能,定时/计数器T0的基本部件 是两个8位寄存器TH0及TL0组合的16位加法计数器,用于对定时 或计数脉冲进行加法计数。定时/计数器T1也是由

43、两个8位寄存器TH1和TL1组合的16位加法计数器,用于对定时或计数脉冲进行加 法计数。2 . 51系列单片机定时/计数器TO和T1有哪几种工作方式?它 们有什么区别?答:51系列单片机定时/计数器TO和T1有4种工作方式,分别 为方式0、方式1、方式2和方式3。当方式控制寄存器TMOD中的 M1M0取不同值时,对应的工作方式不同,他们之间的区别见下表。M1M0方式说明00方式0TLi的低5位与THi的8位构成13位计数器0 1方式1TLi的8位与THi的8位构成16位计数器1 0方式2具有自动重装初值功能的8位计数器11方式3TO分成两个独立的计数器,T1可工作在方式0方式23 . AT89

44、S51单片机定时/计数器在定时或计数工作方式下,其计 数脉冲分别由谁提供?定时时间与哪些因素有关?答:当计数脉冲来自内部时钟脉冲,即机器周期(%42)时,定 时/计数器作定时器使用。定时时间与定时器的初始值有关,也与单片 机的晶振频率有关。当计数脉冲来自与外部引脚T0/T1上的输入脉冲时,定时/计数 器作计数器使用。如果在第一个周期检测到T0/T1引脚的脉冲信号为 1,第二个机器周期检测到T0/T1引脚的脉冲信号为0,即出现从高 电平到低电平的跳变时,计数器加1。由于检测到一次负跳变需要两 个机器周期,所以最高的外部计数脉冲的频率不能超过时钟频率的 1/24,并且要求外部计数脉冲的高电平和低电

45、平的持续时间不能小于 一个机器周期。4 .利用单片机的定时/计数器,编写延时300ms的两个发光二极 管闪烁程序,模拟汽车在紧急情况下的“双闪”。晶振为 12MHz,控制端口自定。答:设单片机的晶振频率f =12MHz,单片机的机器周期与采用 的晶振频率有关,晶振频率的倒数就是单片机的时钟周期,单片机的 一个机器周期等于12个时钟周期,所以一个机器周期 T=l/12MHzxl2=lus,由前面定时器的学习可知,定时器T0和T1工 作在方式1时M的值为65536,所以方式1的最大定时为65.536mso 如果要定时50ms,每计数一次需要lus,所需计数值的计算方法:C=定时时间/机器周期=t/

46、T=50ms/lus=50000计数初值为:Tc=M-C=65536-50000=15536=3CB0HORG 00HMOV TMOD, #01H;置TO工作在方式1定时MOV THO, #3CH ;置TO定时50ms初值,送TO的MOV TLO, #0B0H;置TO定时50ms初值,送TO的低8位。CLR TFOSETB TROMOV R4, #6;闪烁 300ms 的初值,50msx6=300msMOV A, #7EHWAIT:MOV PO, AJNB TFO, WAIT2;CLR TFOMOV THO, #3CH;MOV TLO, #0B0HDJNZ R4, WAITCPL AMOV R4, #6;DJNZ R2, WAITEND5 .简述交通灯发展史。答:1868年12月10日,信号灯家族的第一个成员就在伦敦议 会大厦的广场上诞生了,由当时英国机械师德哈设计、制造的灯柱高 7米,身上挂着一盏红、绿两色的提灯-煤气交通信号灯,这是城市 街道的第一盏信号灯。1914年,在美国的克利夫兰市才率先使用“电 气信号灯”。第一盏名副其实的三色灯(红、黄、绿三种标志)于1918 年诞生。

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

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁