第七章习题单片机原理与应用第二版习题答
单片机原理及应用教程(第2版)各章习题参考答案

3.简答题 (1) 单片机与微处理器的联系与区别: 微型计算机技术形成了两大分支:微处理器(MPU)和微控制器(MCU,即单片机)。
·2·
单片机原理及应用教程(第 2 版)
MPU是微型计算机的核心部件,它的性质决定了微型计算机的性能。通用型的计算机 已从早期的数值计算、数据处理发展到当今的人工智能阶段,它不仅可以处理文字、字符、 图形、图像等信息,而且还可以处理音频、视频等信息,并向多媒体、人工智能、虚拟现 实、网络通信等方向发展。它的存储容量和运算速度正在以惊人的速度发展,高性能的32 位、64位微型计算机系统正向大、中型计算机挑战。 MCU主要用于控制领域。由它构成的检测控制系统应该具有实时的、快速的外部响应 的功能,应该能迅速采集到大量数据,并在做出正确的逻辑推理和判断后实现对被控对象 参数的调整与控制。单片机直接利用了MPU 的发展成果,也发展了16 位、32 位、64 位 的机型,但它的发展方向是高性能、高可靠性、低功耗、低电压、低噪声和低成本。目前, 单片机仍然是以8 位机为主,16 位、32 位、64 位机并行发展的格局。单片机的发展主要 还是表现在其接口和性能不断满足多种多样检测对象的要求上,尤其突出表现在它的控制 功能上,用于构成各种专用的控制器和多机控制系统。 单片机与微型计算机的联系与区别: 从组成方面,微型计算机(通用机)通常将 CPU、RAM、 I/O 口、ROM 等部件以芯 片形式安装在主板上; 单片机则将上述部件被集成到单芯片中。 从功能方面,通用计算机擅长于数据运算、采集、处理、存储和传输;单片机的专长 则是测控,往往嵌入某个仪器/设备/系统中,使其达到智能化的效果。 (2) 集成度高、体积小;面向控制、功能强;抗干扰能力强;功耗低;使用方便;性 能价格比高;容易产品化;等等。 (3) 单片机内部一般包括中央处理器 CPU、随机存储器 RAM、只读存储器 ROM、输 入/输出接口电路、定时器/计数器以及串行通信接口等。 中央处理器 CPU 是单片机的核心部件,实现运算器、控制器的功能以及中断控制等; RAM 一般作为数据存储器,用来存储数据,暂存运行期间的数据、中间结果、堆栈、位 标志和数据缓冲等;ROM 一般作为程序存储器,用于存放应用程序;并行 I/O 口,使用上 不仅可灵活地选择输入或输出,还可作为系统总线或控制信号线,从而为扩展外部存储器 和 I/O 接口提供了方便;串行 I/O 用于串行通信;定时器/计数器用于产生定时脉冲,以实 现单片机的定时控制。 (4) 由于单片机功能的飞速发展,它的应用范围日益广泛,已远远超出了计算机科学 的领域。小到玩具、信用卡,大到航天器、机器人,从实现数据采集、过程控制、模糊控 制等智能系统到人类的日常生活,现已广泛应用于国民经济的各个领域,主要包括工业过 程控制、智能仪表、机电一体化产品、智能化接口、家用电器等领域。 (5) MCS-51系列;AT89系列;PIC系列;M68HC11系列;MCS-96系列;8XC196KX 系列;MSP430系列;SPCE系列;M68300系列;SH系列;TX99/TX49系列单片机等。
单片机原理及应用(第二版)一至七章课后答案 张毅刚

第1章单片机概述参考答案1.答:微控制器,嵌入式控制器2.答:CPU、存储器、I/O口、总线3.答:C4.答:B5.答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。
而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。
嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。
目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。
嵌入式微处理器相当于通用计算机中的CPU。
与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。
而嵌入式微处理器仅仅相当于单片机中的中央处理器。
为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。
6.答:MCS-51系列单片机的基本型芯片分别:8031、8051和8071。
它们的差别是在片内程序存储器上。
8031无片内程序存储器、8051片内有4K字节的程序存储器ROM,而8751片内有集成有4K字节的程序存储器EPROM。
7.答:因为MCS-51系列单片机中的“MCS”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。
8.答:相当于MCS-51系列中的87C51,只不过是AT89S51芯片内的4K字节Flash 存储器取代了87C51片内的4K字节的EPROM。
9.单片机体积小、价格低且易于掌握和普及,很容易嵌入到各种通用目的的系统中,实现各种方式的检测和控制。
单片机在嵌入式处理器市场占有率最高,最大特点是价格低,体积小。
DSP是一种非常擅长于高速实现各种数字信号处理运算(如数字滤波、FFT、频谱分析等)的嵌入式处理器。
由于对其硬件结构和指令进行了特殊设计,使其能够高速完成各种复杂的数字信号处理算法。
单片机原理及应用第二版(张毅刚主编)课后习题答案.pdf

1.答:系统连接简单:I2C总线系统的基本结构如图12-7。
I2C总线系统直接与具有I2C总线接口的各种扩展器件(如存储器、I/O芯片、A/D、D/A、键盘、显示器、日历/时钟)连接。
I2C总线对各器件寻址采用纯软件的寻址方法,无需片选线的连接,这样就大大简化了总线数量,系统各部件之间的连接只需两条线。
数据传输速率较高:在标准I2C普通模式下,数据的传输速率为100kbit/s,高速模式下可达400kbit/s。
2.答:I2C总线的起始信号和终止信号都由主机发出,在起始信号产生后,总线就处于占用状态;在终止信号产生后,总线就处于空闲状态。
由图12-9见起始信号和终止信号的规定。
(1)起始信号(S)。
在SCL 线为高电平期间,SDA线由高电平向低电平的变化表示起始信号,只有在起始信号以后,其他命令才有效。
(2)终止信号(P)。
在SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。
随着终止信号的出现,所有外部操作都结束。
3.答:无论I2C总线上的数据传输方向由寻址字节中的数据传输方向位规定:寻址字节器件地址引脚地址方向位DA3 DA2 DA1 DA0 A2 A1 A0 R/ =1,表示主机接收(读)。
R/ =0,表示主机发送(写)。
4.答:单片机对I2C总线中的器件寻址采用软件寻址,主机在发送完起始信号后,立即发送寻址字节来寻址被控的从机,寻址字节格式如题3所示。
7位从机地址即为“DA3、DA2、DA1、DA0”和“A2、A1、A0”。
其中“DA3、DA2、DA1、DA0”为器件地址,是外围器件固有的地址编码,器件出厂时就已经给定。
“A2、A1、A0”为引脚地址,由器件引脚A2、A1、A0在电路中接高电平或接地决定(见图12-12)。
5.答:I2C总线数据传送时,传送的字节数(数据帧)没有限制,每一字节必须为8位长。
数据传送时,先传送最高位,每一个被传字节后面都须跟1位应答位(一帧数据共9位),如图12-10。
《单片机原理及接口技术》第7章习题及答案

《单片机原理及接口技术》(第2版)人民邮电出版社第7章 AT89S51单片机的串行口思考题及习题71.帧格式为1个起始位,8个数据位和1个停止位的异步串行通信方式是方式。
答:方式1。
2.在串行通信中,收发双方对波特率的设定应该是的。
答:相等的。
3.下列选项中,是正确的。
A.串行口通信的第9数据位的功能可由用户定义。
对B.发送数据的第9数据位的内容是在SCON寄存器的TB8位中预先准备好的。
对C.串行通信帧发送时,指令把TB8位的状态送入发送SBUF中。
错D.串行通信接收到的第9位数据送SCON寄存器的RB8中保存。
对E.串行口方式1的波特率是可变的,通过定时器/计数器T1的溢出率设定。
对4.通过串行口发送或接收数据时,在程序中应使用。
A.MOVC指令B.MOVX指令 C.MOV指令 D.XCHD指令答:C5.串行口工作方式1的波特率是。
A.固定的,为f osc/32 B.固定的,为f osc/16C.可变的,通过定时器/计数器T1的溢出率设定D.固定的,为f osc/64答:C6.在异步串行通信中,接收方是如何知道发送方开始发送数据的?答:当接收方检测到RXD端从1到0的跳变时就启动检测器,接收的值是3次连续采样,取其中2次相同的值,以确认是否是真正的起始位的开始,这样能较好地消除干扰引起的影响,以保证可靠无误的开始接受数据。
7.AT89S51单片机的串行口有几种工作方式?有几种帧格式?各种工作方式的波特率如何确定?答:串行口有4种工作方式:方式0、方式1、方式2、方式3;有3种帧格式,方式2和3具有相同的帧格式;方式0的发送和接收都以fosc/12为固定波特率,方式1的波特率=2SMOD /32×定时器T1的溢出率方式2的波特率=2SMOD /64×fosc方式3的波特率=2SMOD /32×定时器T1的溢出率8.假定串行口串行发送的字符格式为1个起始位、8个数据位、1个奇校验位、1个停止位,请画出传送字符“B ”的帧格式。
单片机原理及接口技术(C51编程)(第2版)-习题答案 - 第7章习题解答

第7章思考题及习题7参考答案一、填空1.如果采用晶振的频率为3MHz,定时器/计数器T x(x=0,1)工作在方式0、1、2下,其方式0的最大定时时间为,方式1的最大定时时间为,方式2的最大定时时间为。
答:32.768ms,262.144ms,1024µs2.定时器/计数器用作计数器模式时,外部输入的计数脉冲的最高频率为系统时钟频率的。
答:1/243.定时器/计数器用作定时器模式时,其计数脉冲由提供,定时时间与有关。
答:系统时钟信号12分频后,定时器初值4.定时器/计数器T1测量某正单脉冲的宽度,采用方式可得到最大量程?若时钟频率为6MHz,求允许测量的最大脉冲宽度为。
答:方式1定时,131.072ms。
5. 定时器T2 有3种工作方式:、和,可通过对寄存器中的相关位进行软件设置来选择。
答:捕捉,重新装载(增计数或减计数),波特率发生器,T2CON6. AT89S52单片机的晶振为6MHz,若利用定时器T1的方式1定时2ms,则(TH1)= ,(TL1)= 。
答:FCH,18H。
二、单选1.定时器T0工作在方式3时,定时器T1有种工作方式。
A.1种B.2种 C.3种D.4种答:C2. 定时器T0、T1工作于方式1时,其计数器为位。
A.8位B.16位C.14位D.13位答:B3. 定时器T0、T1的GATE x=1时,其计数器是否计数的条件。
A. 仅取决于TR x状态B. 仅取决于GATE位状态C. 是由TR x和INT x两个条件来共同控制D. 仅取决于INT x的状态答:C4. 定时器T2工作在自动重装载方式时,其计数器为位。
A.8位B. 13位C.14位D. 16位答:D5. 要想测量INT0引脚上的正单脉冲的宽度,特殊功能寄存器TMOD的内容应为。
A.87HB. 09HC.80HD. 00H答:B三、判断对错1.下列关于T0、T1的哪些说法是正确的。
A.特殊功能寄存器SCON,与定时器/计数器的控制无关。
单片机原理与应用及C51程序设计第7章习题答案

第7章习题答案7-1 键抖动对单片机系统有何影响?有哪些消除抖动的方法?答:由于按键是机械开关结构,所以当用手按下其中一个键时,往往会出现所按键在闭合位置和断开位置之间发生跳几下后才会稳定到闭合状态的情况。
在释放一个键时,也会出现类似的情况,这就是键的抖动,抖动的持续时间不一,但通常不会大于10ms。
若抖动问题不解决,就会引起对闭合键的多次读入。
对于键抖动最方便的解决方法就是当发现有键按下后,不是立即进行扫描,而是延时大约10ms后再进行。
由于一个键按下的时间一般会持续上百毫秒,所以延迟10ms后再扫描处理并不迟。
另外一种办法就是使用硬件电路(如触发器)进行消抖。
7-3 自己设计一个3×3的矩阵键盘的硬件电路,试编制相应的键盘扫描程序。
(注:为结合开发板的情况),我以开发板上的4×4键盘为例进行说明:解:只考虑了键盘的处理,并没有考虑显示#include "regx52.h"#define uchar unsigned char#define uint unsigned intstatic const char c_keyCode[16]={0x01,0x02,0x03,0x0a, /*键盘1,2,3,A*/0x04,0x05,0x06,0x0b, /*键盘4,5,6,B*/0x07,0x08,0x09,0x0c, /*键盘7,8,9,C*/0x0e,0x00,0x0f,0x0d}; /*键盘*,0,#,D*/ uchar ScanKeys(void); /*扫描键盘模块*/void Delay (uchar value); /*10ms延时*/void main(void) /*主程序入口*/{while(1){ScanKeys();}}uchar ScanKeys(void) /*扫描键盘模块*/ {uchar scanV alue;P3_2 = 0;P3_3 = 0;P1=0xf0;if ((P1&0xf0)!=0xf0) /*有键按下*/{Delay(1); /*延时10ms以消除抖动*/P1=0xf0;if ((P1&0xf0)==0xf0) /*有键按下*/{return 0xee;}else{P1=0xfe;scanV alue=P1;switch (scanV alue){case 0xee: iScan=0x01;break; //键"a"case 0xde: iScan=0x02;break; //键"1"case 0xbe: iScan=0x03;break; //键"2"case 0x7e: iScan=0x0a;break; //键"3"}P1=0xfd;scanV alue=P1;switch (scanV alue){case 0xed: iScan=0x04;break; // 键"4case 0xdd: iScan=0x05;break; // 键"5case 0xbd: iScan=0x06;break; // 键"6case 0x7d: iScan=0x0b;break; // 键"b}P1=0xfb;scanV alue=P1;switch (scanV alue){case 0xeb: iScan=0x07;break; // 键"7case 0xdb: iScan=0x08;break; // 键"8case 0xbb: iScan=0x09;break; // 键"9case 0x7b: iScan=0x0c;break; // 键"c}P1=0xf7;scanV alue=P1;switch (scanV alue){case 0xe7: iScan=0x00;break; // 键"0case 0xd7: iScan=0x0d;break; // 键"dcase 0xb7: iScan=0x0e;break; // 键"ecase 0x77: iScan=0x0f;break; // 键"f}}// P1=0xf0;while ((P1&0xf0)!=0xf0);//防止键按住不放return iScan;}return 0xee;}void Delay (uchar value) /*10ms延时*/{uchar i,j;while (value--){for(j=20; j>0;j--)for(i=250;i>0;i--);}}7-4 结合开发板的情况,在6个数码管上从右到左依次显示一个“3”,直到出现6个“3”为止,延时时间设为1秒。
单片机第7章习题答案

第7章习题答案1.通常8031给用户提供的I/O口有哪几个?为什么?答案:MCS-51系列单片机虽然有4个8位I/O口P0、P1、P2、P3,但4个I/O口实际应用时,并不能全部留给用户作系统的I/O口。
因为当单片机在外部扩展了程序存储器、数据存储器时,就要用P0和P2口作为地址/数据总线,而留给用户使用的I/O口只有P1口和一部分P3口。
(不做系统扩展,都可以用作I/O口)2.在MCS-51单片机应用系统中,外接程序存储器和数据存储器的地址空间允许重叠而不会发生冲突,为什么?外部I/O接口地址是否允许与存储器地址重叠?为什么?答案:因为单片机访问外部程序存储器与访问外部数据存储器(包括外部I/O口)时,会分别产生PSEN与RD/WR两类不同的控制信号,因此外接程序存储器和数据存储器的地址空间允许重叠而不会发生冲突。
外部扩展I/O口占用数据存储器地址空间,与外部数据存储器统一编址,单片机用访问外部数据存储器的指令来访问外部扩展I/O口。
因此外部I/O接口地址是否允许与程序存储器地址重叠不允许与数据数据存储器地址重叠。
3.在通过MOVX指令访问外部数据存储器时,通过I/O口的哪些位产生哪些控制信号?答案:MCS-51对外部数据存储器的访问指令有以下4条:1)MOVX A, @Ri2)MOVX @Ri, A3)MOVX A, @DPTR4)MOVX @DPTR, A访问外部数据存储器指令在执行前,必须把需要访问的存储单元地址存放在寄存器Ri (R0或R1)或DPTR中。
CPU在执行1)、2)指令时,作为外部地址总线的P2口输出P2锁存器的内容、P0口输出R0或R1的内容;在执行3)、4)指令时,P2口输出DPH内容,P0口输出DPL内容。
写时(/WR P3.6)有效;读时(/RD P3.7)有效。
4.外部存储器的片选方式有几种?各有哪些特点?答案:外部存储器的片选方式有线选法和译码法两种。
线选法的特点是连接简单,不必专门设计逻辑电路,但是各个扩展芯片占有的空间地址不连续,因而地址空间利用率低。
单片机原理及应用第2版(徐泳龙编)课后习题参考答案

《单片机原理及应用》习题答案第一章计算机基础知识1-1微型计算机主要由哪几部分组成?各部分有何功能?答:一台微型计算机由中央处理单元(CPU)、存储器、I/O接口及I/O设备等组成,相互之间通过三组总线(Bus):即地址总线AB、数据总线DB和控制总线CB来连接。
CPU由运算器和控制器组成,运算器能够完成各种算术运算和逻辑运算操作,控制器用于控制计算机进行各种操作。
存储器是计算机系统中的“记忆”装置,其功能是存放程序和数据。
按其功能可分为RAM和ROM。
输入/输出(I/O)接口是CPU与外部设备进行信息交换的部件。
总线是将CPU、存储器和I/O接口等相对独立的功能部件连接起来,并传送信息的公共通道。
1-3什么叫单片机?其主要由哪几部分组成?答:单片机(Single Chip Microcomputer)是指把CPU、RAM、ROM、定时器/计数器以及I/O接口电路等主要部件集成在一块半导体芯片上的微型计算机。
1-4在各种系列的单片机中,片内ROM的配置有几种形式?用户应根据什么原则来选用?答:单片机片内ROM的配置状态可分四种:(1)片内掩膜(Mask)ROM型单片机(如8051),适合于定型大批量应用产品的生产;(2)片内EPROM型单片机(如8751),适合于研制产品样机;(3)片内无ROM型单片机(如8031),需外接EPROM,单片机扩展灵活,适用于研制新产品;(4)EEPROM(或Flash ROM)型单片机(如89C51),内部程序存储器电可擦除,使用更方便。
1-5写出下列各数的另两种数制的表达形式(二、十、十六进制)110001010011100100011110010010011111110110110011101101110101111 982003958516236291495 62H4E47H249H3F6CH1D5D71-6写出下列各数的BCD参与:59:01011001,1996:0001100110010110,4859.2:0100100001011001.0010389.41:001110001001.01000001第二章MCS-51单片机的硬件结构2-18052单片机片内包含哪些主要逻辑功能部件?答:8052单片机片内包括:①8位中央处理器CPU一个②片内振荡器及时钟电路③256B数据存储器RAM。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题1.什么是 MCS-51 单片机的最小系统?答:所谓最小系统,是指一个真正可用的单片机的最小配置系统。
对于单片机内部资源已能够满足系统需要的,可直接采用最小系统。
2.简述存储器扩展的一般方法。
答:存储器芯片与单片机扩展连接具有共同的规律。
即不论何种存储器芯片,其引脚都呈三总线结构,与单片机连接都是三总线对接。
另外,电源线接电源线,地线接地线。
3.什么是部分译码法?什么是全译码法?它们各有什么特点?用于形成什么信号?答:部分译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后,剩余的高位地址线仅用一部分参加译码。
部分译码使存储器芯片的地址空间有重叠,造成系统存储器空间的浪费。
全译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后,剩余的高位地址线全部参加译码。
这种译码方法中存储器芯片的地址空间是唯一确定的,但译码电路要相对复杂。
译码形成存储器芯片的片选信号线CE 。
4.采用部分译码为什么会出现地址重叠情况,它对存储器容量有何影响?答:部分译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后,剩余的高位地址线仅用一部分参加译码。
参加译码的地址线对于选中某一存储器芯片有一个确定的状态,而与不参加译码的地址线无关。
也可以说,只要参加译码的地址线处于对某一存储器芯片的选中状态,不参加译码的地址线的任意状态都可以选中该芯片。
正因为如此,部分译码使存储器芯片的地址空间有重叠,造成系统存储器空间减少。
5.存储器芯片的地址引脚与容量有什么关系?答:容量 ( Q) 与地址线数目 (N) 满足关系式:Q=2N。
6.MCS-51 单片机的外部设备是通过什么方式访问的?答: MCS-51 单片机扩展的外部设备与片外数据存储器统一编址,即外部设备占用片外数据存储器的地址空间。
按片外数据存储器的访问方式访问。
7.何为键抖动?键抖动对键位识别有什么影响?怎样消除键抖动?答:按键时,无论按下键位还是放开键位都会产生抖动,如果对抖动不作处理,必然会出现按一次键而输入多次,为确保按一次键只确认一次,必须消除按键抖动。
消除按键抖动通常有硬件消抖和软件消抖两种方法。
(2)8.矩阵键盘有几种编码方式?怎样编码?答:通常有以下两种方法进行编码;(1)用连接键盘的顺序排列编码。
9.简述对矩阵键盘的扫描过程。
I/O线的二进制组合进行编码。
答:矩阵式键盘的工作过程可分为两步:第一步是CPU 首先检测键盘上是否有键按下;第二步是识别哪一个键按下。
(1)检测键盘上是否有键按下的处理方法是:将列线送入全扫描字,读入行线的状态来判别。
(2)识别键盘中哪一个键按下的处理方法是:将列线逐列置成低电平,检查行输入状态,称为逐列扫描。
10.共阴极数码管与共阳极数码管有何区别?答:共阴极结构, 8 段发光二极管的阴极端连接在一起,阳极端分开控制,使用时公共端接地,要使哪根发光二极管亮,则对应的阳极端接高电平;共阳极结构,8 段发光二极管的阳极端连接在一起,阴极端分开控制,使用时公共端接电源,要使哪根发光二极管亮,则对应的阴极端接地。
11.简述 LED 数码管显示的译码方式。
答:所谓译码方式是指由显示字符转换得到对应的字段码的方式。
对于示器,通常的译码方式有硬件译码方式和软件译码方式两种。
12.简述LED动态显示过程。
LED数码管显答: LED 动态显示是将所有的数码管的段选线并接在一起,用一个 I/O 接口控制,公共端不是直接接地 ( 共阴极 )或电源 ( 共阳极 ) ,而是通过相应的 I/O 接口线控制,工作过程为:第一步使右边第一个数码管的公共端 D0 为 1,其余的数码管的公共端为 0,同时在 I/O(1) 上发送右边第一个数码管的字段码,这时,只有右边第一个数码管显示,其余不显示;第二步使右边第二个数码管的公共端 D1 为 1,其余的数码管的公共端为 0,同时在 I/O(1) 上发送右边第二个数码管的字段码,这时,只有右边第二个数码管显示,其余不显示,依此类推,直到最后一个,这样 4 个数码管轮流显示相应的信息,一次循环完毕后,下一次循环又这样轮流显示,从计算机的角度看是一个一个地显示,但由于人的视觉暂留效应,只要循环的周期足够快,则看起来所有的数码管就都是一起显示的了,这就是动态显示的原理。
13. 使用 2764(8KB8) 芯片通过部分译码法扩展24KB 程序存储器,画出硬件连接图,指明各芯片的地址空间范围。
答:使用 2764( 8K8)芯片通过部分译码法扩展24KB 程序存储器,须要 3 块。
采用线译码,P2.5 与第一片2764 的 CE 相连,P2.6 与第二片2764 的 CE 相连,P2.7 与第三片 2764的 CE 相连,硬件连接如下:P2.7P2.6P2.5P2.4~P2.05ALEG74LS58585 88373A0~A7A0~A78031OE A0~A7CE CE CEA8~A12A8~A12A8~A122764(1)2764(2)2764(3)D0~D7OE D0~D7OE D0~D7OE P08888EA PSEN地址空间如下:第一片:1100 0000 0000 0000~1101 1111 1111 1111 ;即 C000H~DFFFH ;第二片:1010 0000 0000 0000~1011 1111 1111 1111 ;即 A000H~BFFFH ;第三片:0110 0000 0000 0000~0111 1111 1111 1111 ;即 6000H~7FFFH ;14. 使用 6264(8KB 8) 芯片通过全译码法扩展 24KB 数据存储器,画出硬件连接图,指明各芯片的地址空间范围。
答:使用 6264( 8K 8)芯片通过全译码法扩展 24KB 程序存储器,须要 3 块。
采用 138 译码器译码,硬件连接如下:74LS138 VccG1 GG2Y3G2C Y2P2.7Y1BP2.6A Y0 P2.5P2.4~P2.05ALEG74LS5888585 373A0~A7CE A0~A7CE A0~A7CE8031OEA8~A12A8~A12A8~A126264(1)6264(2)OE6264(3)D0~D7OE D0~D7D0~D7OE P08888EA PSEN地址空间如下:第一片:0000 0000 0000 0000~0001 1111 1111 1111 ;即 0000H~1FFFH ;第二片:0010 0000 0000 0000~0011 1111 1111 1111 ;即 2000H~3FFFH ;第三片:0100 0000 0000 0000~0101 1111 1111 1111 ;即 3000H~5FFFH ;15.试用一片74LS373 扩展一个并行输入口,画出硬件连接图,指出相应的控制命令。
答 :硬件电路图如下:74LS373 的输入端为扩展的输入口,输出端接8051 的数据总路线 P0口,控制端接高电平,输出允许由片外数据存储器读信号RD 和 P2.0 控制。
当片外数据存储器读信号 RD 和 P2.0 同为低平时从74LS373 中读入输入的数据。
P0.0Q0 D 0P0.1Q174LS D 1P0.2Q2 D 2P0.3Q3373 D 3P0.4Q4 D 4P0.5Q5 D 5P0.6Q6 D 6P0.7Q7 D 78051OE G+5V+R DP2.0输入数据的命令如下:MOV DPTR, #0FE00HMOVX A ,@DPTR16.用 8255A 扩展并行 I/O ,实现把 8 个开关的状态通过 8 个二极管显示出来,画出硬件连接图,用汇编语言和 C 语言分别编写相应的程序。
答:硬件电路图如下:8051 与 8255 的连接略,设8255 的 A, B,C 和控制控口的地址为 7F00H, 7F01H, 7F02H , 7F03H 。
8255 的 A 口接 8 个开关, B 口接 8 个发光二极管。
PA 0PA 1PA 2PA 3PA 4系统总线PA5PA 6PA 780518255APB0PB1PB2PB3PB4PB5PB6PB7程序如下:汇编程序ORG 0000HLJMP MAINORG 0100HMAIN : MOV DPTR , #7F03HMOV A ,#90HMOVX@DPTR ,ALOOP : MOV DPTR , #7F00HMOVX A ,@DPTRMOV DPTR , #7F01HMOVX@DPTR, ASJMP LOOPSJMP $ENDC语言程序:#include <reg51.h>#include <absacc.h>main(){unsigned char i;XBYTE[0x7f03]=0x90;while(1){i=XBYTE[0x7f00];XBYTE[0x7f01]=i;}}+5VK 0L0K 7 L7+5V}17.用汇编语言编写出定时扫描方式下矩阵键盘的处理程序。
该程序放于定时器的中断服务程序中。
定时器每10ms 中断一次,执行一次中断服务程序。
F1和 F2 标志位用片内 RAM的 50H 和 51H 单元。
ACALL KS1JNZ LK1MOV50H,#0;无键按下, F1 的 F0 标志清0 结束MOV51H,#0SJMP OUTLK1: CJNE 50H,#1,OUT1;有键按下检查 F1标志是否为1,不为 1 置 1 结束。
CJNE 51H,#01,OUT;再检查 F2 标志是否为 1 ,为 1 说明已处理按键则结束。
LK2: MOV R2,#0FEH; 扫描查询键码MOV R4,#00HLK4: MOV DPTR,#7F00HMOV A,R2MOVX @DPTR,AINC DPTRINC DPTRMOVX A,@DPTRJB ACC.0,LONEMOV A,#00HAJMP LKPLONE: JB ACC.1,LTWOMOV A,#08HAJMP LKPLTWO:JB ACC.2,LTHRMOV A,#10HAJMP LKPLTHR: JB ACC.3,NEXTMOV A,#18HLKP: ADD A,R4; 求键码放累加大器A,MOV51H,#1;F2 标志置 1,结束SJMP OUTNEXT: INC R4MOV A,R2JNB ACC.7,KENDRL AMOV R2,ASJMP LK4KEND:SJMP OUT;扫描完结束KS1: MOV DPTR,#7F00H; 检查有无按键MOV A,#00HMOVX @DPTR,AINC DPTRINC DPTRMOVX A,@DPTRCPL AANL A,#0FHRETOUT1:MOV 50H,#1OUT:18.用 C 语言编写出定时扫描方式下矩阵键盘的处理程序。