版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章 CS-51单片机系统扩展第六章 CS-51单片机系统扩展MCS-51单片机系统扩展包括程序存储器扩展、数据存储器扩展、 I/O口扩展、定时/计数器扩展、中断系统扩展和串行口扩展。在本章中只介绍应用较多的程序存储器扩展、数据存储器扩展和I/O口扩展。6.1MCS-51单片机的最小系统所谓最小系统,是指一个真正可用的单片机最小配置系统。对于单片机内部资源已能满足系统需要的,可直接采用最小系统。MCS- 51单片机根据片内有无程序存储器最小系统分两种情况。6.1.1 8051/8751的最小系统8051/8751片内有4K的ROM/EPROM,因此,只需要外接晶体振荡器和复位电路就可构成最小
2、系统。如图所示。第六章 CS-51单片机系统扩展该最小系统的特点如下:(1) 由于片外没有扩展存储器和外设,P0、P1、P2、P3都可以作为用户I/O口使用。(2) 片内数据存储器有128字节, 地址空间00H7FH,没有片外数据存储器。(3) 内部有4KB程序存储器,地址空间0000H0FFFH,没有片外程序存储器,EA应接高电平。(4) 可以使用两个定时/计数器T0 和T1,一个全双工的串行通口,5个中断源。8XTAL187518051P08P1XTAL28P2RESETEAP38GND+5V+5V第六章 CS-51单片机系统扩展6.1.18031最小应用系统8031片内无程序存储器片,因
3、此,在构成最小应用系统不仅要外接 晶体振荡器和复位电路,还应外扩展程序存储器。高8位地址线A15P2ALEA8 A7G74LS3738031CEA0D7P02764D0OEEAPSEN第六章 CS-51单片机系统扩展该最小系统特点如下:(1) 由于P0、P2在扩展程序存储器时作为地址线和数据线,不能 作为I/O线,因此,只有P1、P3作为用户I/O口使用。(2) 片内数据存储器同样有128字节,地址空间00H7FH,没有片外数据存储器。(3) 内部有无程序存储器,但片外扩展了程序存储器,其地址空间随芯片容量不同而不一样。图6.2中使用的是2764芯片,容量为8K 字节,地址空间为0000H1F
4、FFH。由于片内没有程序存储器,只能使用片外程序存储器,EA只能接低电平。(4) 同样可以使用两个定时/计数器T0和T1,一个全双工的串行通口,5个中断源。第六章 CS-51单片机系统扩展6.2存储器扩展6.2.1 存储器扩展概述一、MCS-51单片机的存储器扩展能力MCS-51单片机地址总线宽度为16位,片外可扩展的存储器最 大容量为64KB,地址为0000HFFFFH。因为程序存储器和数据存储器是通过不同的控制信号和指令进行访问,允许两者的地址空间重叠,所以片外可扩展的程序存储器与数据存储器分别都为64KB。二、存储器扩展的一般方法不论何种存储器芯片,其引脚都呈三总线结构,与单片机连接都是
5、三总线对接。另外,电源线接电源线,地线接地线。1. 控制线:对于程序存储器,一般来说,具有输出允许控制线 OE, 它与单片机的PSEN信号线相连 。对于数据存储器,一般都有输出允许控制线OE和写控制线 WE,它们分别与单片机的读信号线RD 和写信号线WR相连。第六章 CS-51单片机系统扩展2、数据线:存储器芯片的数据线的数目由芯片的字长决定。连接时, 存储器芯片的数据线与单片机的数据总线(P0.0P0.7)按由低位到高位的顺序顺次相接。3、地址线:存储器芯片的地址线的数目由芯片的容量决定。容量(Q)与地址线数目(N)满足关系式:Q=2N。存储器芯片的地址线与单片机的地址总线(A0A15)按由
6、低位到高位的顺序顺次相接。一般来说,存储器芯片的地址线数目总是少于单片机地址总线的数目, 因此连接后,单片机的高位地址线总有剩余。剩余地址线一般作为译码线,译码输出与存储器芯片的片选信号线CS相接。片选信号线与单片机系统的译码输出相接后,就决定了存储器芯片的地址范围。译码有两种方法:部分译码法和全译码法。部分译码:所谓部分译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后,剩余的高位地址线仅用一部分参加译码。部分译码使存储器芯片的地址空间有重叠,造成系统存储器空间的浪费。第六章 CS-51单片机系统扩展如下图,存储器芯片容量为2K,地址线为11根,与地址总线的低11位A0A10相连,用于
7、选中芯片内的单元。地址总线的A11、A12、A13、A14根地址线参加译码的选中芯片,设这四根地址总线的状态为0100 时选中该芯片。地址总线A15不参加译码,当地址总线A15为0、1两种状态都可以选中该存储器芯片。当A15=0时,芯片占用的地址是00010000000000000001011111111111,即1000H17FFH。当A15=1时,芯片占用的地址是10010000000000001001011111111111,即9000H97FFH。部分译码法的一个特例是线译码。所谓线译码就是直接用一根剩 余的高位地址线与一块存储器芯片的片选信号CS相连。地址译码线与存储器芯片连接的地址
8、线A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A00010第六章 CS-51单片机系统扩展全译码:所谓全译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后,剩余的高位地址线全部参加译码。这种译码方法存储器芯片的地址空间是唯一确定的,但译码电路相对复杂。3扩展存储器所需芯片数目的确定若所选存储器芯片字长与单片机字长一致,则只需扩展容量。所需芯片数目按下式确定:系统扩展容量=芯片数目存储器芯片容量若所选存储器芯片字长与单片机字长不一致,则不仅需扩展容量, 还需字扩展。所需芯片数目按下式确定:系统扩展容量系统字长=芯片数目存储器芯片容量存储器芯片字长第六章CS-51
9、单片机系统扩展6.2.2程序存储器扩展一单片程序存储器的扩展+5V+5VP2.7VccP2.6VffA12 A11 A10 A9 A8A7 A6 A5 A4 A3 A2 A1 A0P2.5 P2.4 P2.3 P2.2 P2.1 P2.0P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 ALEVcc8D7D6D5D4D3D2D1D G8Q74LS3737Q6Q5Q4Q3Q2Q1Q8031 OED7D6D5 D4 D3 D2 D1 D0OE CEGNDEAPSENVss第六章 CS-51单片机系统扩展其8个重叠的地址范围为如下:0000000000000000000
10、1111111111111,即0000H1FFFH;00100000000000000011111111111111,即2000H3FFFH;01000000000000000101111111111111,即4000H5FFFH;01100000000000000111111111111111,即6000H7FFFH;10000000000000001001111111111111,即8000H9FFFH;10100000000000001011111111111111,即A000HBFFFH;11000000000000001101111111111111,即C000HDFFFH;1110
11、0000000000001111111111111111,即E000HFFFFH。二多片程序存储器的扩展P2.7 P2.6 P2.5P2.4P2.0ALE8031574LS373OEG85885A0A7A8A12CEA0A7A8A12 2764(2)CE2764(1)D0D78D0D7 8OEOE8P0PSENEA第六章 CS-51单片机系统扩展上图是通过线选法实现的两片2764扩展成16KB程序存储器。两片2764的地址线A0A12与地址总线的A0A12对应相连,2764的数据线D0D7与数据总线A0A7对应相连,两片2764的输出允许控制线连在一起与8031的PSEN相连。第一片2764的
12、片选线CS与8031地址总线的P2.7直接相连,第二片2764的片选线CS与8031地址总线的P2.7取反后 相连。其两片的地址空间分别为:第一片:000000000000000000001111111111111,即0000H1FFFH;001000000000000000011111111111111,即2000H3FFFH;010000000000000000101111111111111,即4000H5FFFH;011000000000000000111111111111111,即6000H7FFFH; 第二片:100000000000000001001111111111111,即80
13、00H9FFFH;101000000000000001011111111111111,即A000HBFFFH;110000000000000001101111111111111,即C000HDFFFH;111000000000000001111111111111111,即E000HFFFFH。G第六章CS-51单片机系统扩展VccG1 G2A G2B Y3Y274LS138CP2.7 P2.6 P2.5ALEY1B A Y0P2.4 P2.05G74LS373588588585A0A7A0A7A0A7OEA0A7CECECECE8031A8A12A8A12A8A12A8A122764(4) D
14、0D7 2764(2) D0D7 2764(1) D0D7 2764(3)D0D7 OEOEOEOE88888P0EAPSEN上图为采用全译码法实现的4片2764扩展成32KB程序存储器。8031剩余的高3位地址总线P2.7、P2.6、P2.5通过74LS138译码器形成4个2764的片选信号第六章 CS-51单片机系统扩展由于采用全译码,每片2764的地址空间都是唯一的。它们分别是:000000000000000000001111111111111,即0000H1FFFH;001000000000000000011111111111111,即2000H3FFFH;01000000000000
15、0000101111111111111,即4000H5FFFH;011000000000000000111111111111111,即6000H7FFFH。6.2.3 数据存储器扩展数据存储器扩展与程序存储器扩展基本相同,只是数据存储器控制信号一般有输出允许信号OE和写控制信号WE,分别与单片机的片外数据存储器的读控制信号RD和写控制信号WR相连,其它信号线的连接与程序存储器完全相同。下图是两片数据存储器芯片6264与8051单片机的连接。6264 是8K8的静态数据存储器芯片,有13根地址线,数据线8根,一根输出允许信号OE和一根写控制信号WE ,两根片选信号CE1和CE2 ,使用时都应为低
16、电平。第六章 CS-51单片机系统扩展P2.7P2.6P2.55P2.4P2.0ALEG74LS37385885OEA0A7 A8A12 CE1A0A7A8A12 CE18051CE2OECE22764(2)WE2764(1)D0D7D0D7OEWE888P0 RD WREAP2.7为低电平0,两片6264芯片的地址空间为:第一片:010000000000000000101111111111111,即4000H5FFFH; 第二片:001000000000000000011111111111111,即2000H3FFFH;P2.7为高电平1,两片6264芯片的地址空间为:第一片:1100000
17、00000000001101111111111111,即C000HDFFFH; 第二片:101000000000000001011111111111111,即A000HBFFFH;第六章 CS-51单片机系统扩展6.36.3.1 简单I/O口扩展输入/输出口扩展通常通过数据缓冲器、锁存器来扩展简单I/O接口。例如: 74LS373、74LS244、74LS273、74LS245等芯片都可以作简单I/O扩展。实际上,只要具有输入三态、输出锁存的电路,就可以用作I/O口扩展。下图是利用74LS373和74LS244扩展的简单I/O口,其中74LS373扩展并行输出口,74LS244扩展并行输入口。
18、74LS373是一个带输出三态门的8位锁存器,8个输入端D0D7,8个输出端Q0Q7,G为数据锁存控制端,G为高电平,则把输入端的数据锁存 于内部的锁存器,OE为输出允许端,低电平时把锁存器中的内容通过输出端输出。74LS244是单向数据缓冲器,带两个控制端1G和 2G ,当它们为低电平时,输入端D0D7的数据输出到Q0Q7。第六章CS-51单片机系统扩展+5VL0Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7OEP0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7D0 D1 D2 D3 D4 D5 D6 D7 GL174LS373L2L3L4L5L6L78051K0
19、 K1Q0 Q1 Q2 Q3 Q4 Q5 Q6D0 D1 D2 D3 D4 D5 D6 D774LS244K2K3+K4K5EAP2.0K6K7Q7RD1G+2G第六章 CS-51单片机系统扩展图中,扩展的输入口接了K0K7 8个开关,扩展的输出口接了L0L7 8个发光二极管,如果要实现K0K7开关的状态通过L0L7发光二极管显示,则相应的汇编程序为:LOOP:MOVDPTR,#0FEFFHMOVX MOVX SJMPA,DPTR DPTR,A LOOP如果用C语言编程,相应程序段为:#include/定义绝对地址访问#defineucharunsignedchar uchari;i=XBYT
20、E0xfeff; XBYTE0xfeff= i;第六章CS-51单片机系统扩展6.3.2 可编程I/O扩展(8255A)一8255A的结构与功能A组控制部件PA7PA0双向数据总线A组数据总线缓冲器PC7PC4D0D78位内部总线PC3PC0RDWRA1A0 RESET CS读/写控制部件B组PB7PB0B组控制部件B组端口BB组端口CA组端口CA组端口A第六章 CS-51单片机系统扩展8255A内部有3个可编程的并行I/O端口:PA口、PB口和PC口。其中C口又可分为两个独立的4位端口:PC0PC3和PC4PC7。A口和C口的高四位合在一起称为A组,通过图中的A组控制部件控制;B口和C口的低
21、四位合在一起称为B组,通过图中的B组控制部件控制。A口有三种工作方式:无条件输入/输出方式、选通输入/输出方式和双向选通输入/输出方式。B口有两种工作方式:无条件输入/输出方式和选通输入/输出方式。当A口和B口工作于选通输入/输出方式或双向选通输入/输出方式时,C口当中的一部分线用作A口和B口输入/输出应答信号线。数据总线缓冲器是一个8位双向三态缓冲器,是8255A与系统总线之间的接口,8255A与CPU之间传送的数据信息、命令信息、状态信息都通过数据总线缓冲器实现传送。读写控制部件接收CPU送来的控制信号、地址信号,经译码选中内部的端口寄存器,并指挥从这些寄存器中读出信息或向这些寄存器写入相
22、应的信息。8255A有4个端口寄存器:A寄存器、B寄存器、C寄存器和控制口寄存器,通过控制信号和地址信号对这4个端口寄存器的操作如表所示。第六章CS-51单片机系统扩展二8255A的引脚信号8255A共40引脚,采用双列直插式封装,如下图所示,各引脚信号 功能如下:D7D0:三态双向数据线,与单片机的数据总线相连,用来传送数据信息。CSA1A0RDWRI/O操作00001读A口寄存器内容到数据总线00101读B口寄存器内容到数据总线01001读C口寄存器内容到数据总线00010数据总线上内容写到A口寄存器00110数据总线上内容写到B口寄存器01010数据总线上内容写到C口寄存器01110数据
23、总线上内容写到控制口寄存器第六章 CS-51单片机系统扩展CS:片选信号线,低电平有效,用于选中8255A芯片。RD:读信号线,低电平有效,用于控制从8255A端口寄存器读出信息。WR:写信号线,低电平有效,用于控制向8255A端口寄存器写入信息。PA7PA0:A口的8根输入/输出信号线,用于与外部设备连接。PB7PB0:B口的8根输入/输出信号线,用于与外部设备连接。PC7PC0:C口的8根输入/输出信号线,用于与外部设备连接。RESET:复位信号线。VCC:+5V电源线。GND:地信号线。PA3 PA2 PA1 PA0RD CS GNDA1A0 PC7 PC6 PC5PC4 PC0 PC1
24、 PC2 PC3 PB0PB1PB2PA4 PA5 PA6 PA7WR RESET D0D1 D2 D3 D4 D5 D6 D7Vcc PB7 PB6 PB5 PB4 PB314023933843753663578255A3483393210311130122913281427152616251724182319222021第六章 CS-51单片机系统扩展三8255A的控制字8255A有两个控制字:工作方式控制字和C口按位置位/复位控制字。1工作方式控制字端口A 0:输出1:输入端口C高4位0:输出1:输入端口B 0:输出1:输入特征位1 A组工作方式位00:方式001:方式11X:方式2B组
25、工作方式位0:方式01:方式1端口C低4位0:输出1:输入D7位为特征位。D7=1表示为工作方式控制字。D6、D5用于设定A组的工作方式。D4、D3用于设定A口和C口的高4位是输入还是输出。D2用于设定B组的工作方式。D1、D0用于设定B口和C口的低4位是输入还是输出。D 7D 6D 5D 4D 3D 2D 1D 0第六章 CS-51单片机系统扩展2C口按位置位/复位控制字特征位00:复位1:置位这三位不用位选择位000:C口0位001:C口1位111:C口7位D7位为特征位。D7=0表示为C口按位置位/复位控制字。D6、D5、D4这三位不用D3、D2、D1这三位用于选择C口当中的某一位。D0
26、用于置位/复位设置,D0=0则复位,D0=1则置位。D 7D 6D 5D 4D 3D 2D 1D 0第六章 CS-51单片机系统扩展四8255A的工作方式1方式0方式0是一种基本的输入/输出方式。在这种方式下,三个端口 都可以由程序设置为输入或输出,没有固定的应答信号。方式0特点如下:(1) 具有两个8位端口(A、B)和两个4位端口(C口的高4位和C 口的低4位)。(2) 任何一个端口都可以设定为输入或者输出。(3) 每一个端口输出时是锁存的,输入是不锁存的。方式0输入/输出时没有专门的应答信号,通常用于无条件传送。例如:下图是8255A工作于方式0的例子,其中A口输入,B口输出。第六章CS-
27、51单片机系统扩展+5VK0系统总线K7L7+5VPA0 PA1 PA2 PA3 PA4 PA5 PA68255A PA7PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7L08051第六章 CS-51单片机系统扩展2方式1方式1是一种选通输入/输出方式。在这种工作方式下,端口A和B 作为数据输入输出口,端口C用作输入/输出的应答信号。A口和B口既可以作输入,也可作输出,输入和输出都具有锁存能力。方式1输入:无论是A口输入还是B口输入,都用C口的三位作应答信号,一位作 中断允许控制位。88PB0PB7PA0PA7STBAINTESTBBPC4IBFBIBFAPC5&PC3INTRA
28、INTRBPC6、PC7I/OA口输入B口输入INTEPC2PC1&PC0第六章 CS-51单片机系统扩展各应答信号含义如下:STB:外设送给8255A的“输入选通”信号,低电平有效。IBF:8255A送给外设的“输入缓冲器满”信号,高电平有效。INTR:8255A送给CPU的“中断请求”信号,高电平有效。INTE:8255A内部为控制中断而设置的“中断允许”信号。INTE由软 件通过对PC4(A口)和PC2(B口)的置位/复位来允许或禁止。方式1输出:无论是A口输出还是B口输出,也都用C口的三位作应答信号,一位作中断允许控制位。88PA0PA7PB0PB7ACKBINTEOBFAPC7OBFBPC6ACKAINTRA&PC3INTR
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- AI博士培养路径
- 泌尿系统感染辩证
- 2025 高中语文必修上册《哦香雪》香雪的乡村文化传承与创新课件
- 养蚕技术考试题库及答案
- 血型鉴定护理试题及答案
- 2025年临床执业医师《外科护理学》专项训练卷
- 医保基金使用内部管控培训试题及答案
- 徐州钳工考试题库及答案
- 医疗器械广告审查办法培训试题及答案
- 医疗争议第三方调解衔接制度
- 2026年国网江苏省电力有限公司高校毕业生招聘约825人(第二批)笔试模拟试题及答案解析
- 2026年春人音版(简谱)(新教材)小学音乐二年级下册教学计划及进度表
- 【四年级】【数学】【春季下】开学家长会:与数同行共话梦想【课件】
- 2026年陕西航空职业技术学院单招职业技能测试模拟测试卷学生专用
- 2026年及未来5年中国面粉加工行业市场发展现状及投资方向研究报告
- 2026年春季统编版小学道德与法治四年级下册教学计划
- 2026年春季北师大版(2024)小学数学二年级下册教学计划
- 2026年内蒙古建筑职业技术学院单招职业技能考试题库及参考答案详解(新)
- 互联网企业网络安全管理制度(标准版)
- 1.1时代为我搭舞台(课件)-中职思想政治《心理健康与职业生涯》高教版2023基础模块
- 打击诈骗犯罪 警民同心发力 (课件)
评论
0/150
提交评论