MCS-51单片机的系统扩展.ppt

上传人:牧羊曲112 文档编号:6512352 上传时间:2023-11-08 格式:PPT 页数:38 大小:4.11MB
返回 下载 相关 举报
MCS-51单片机的系统扩展.ppt_第1页
第1页 / 共38页
MCS-51单片机的系统扩展.ppt_第2页
第2页 / 共38页
MCS-51单片机的系统扩展.ppt_第3页
第3页 / 共38页
MCS-51单片机的系统扩展.ppt_第4页
第4页 / 共38页
MCS-51单片机的系统扩展.ppt_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《MCS-51单片机的系统扩展.ppt》由会员分享,可在线阅读,更多相关《MCS-51单片机的系统扩展.ppt(38页珍藏版)》请在三一办公上搜索。

1、第5章 MCS-51单片机的系统扩展,程序存储器的扩展 外部数据存储器的扩展 外部I/O口的扩展,5.1程序存储器的扩展,1.外部程序存储器的扩展原理及时序,图5-1 MCS-51单片机程序存储器的扩展,:外部程序存储器“读取”控制。,访问外部程序存储器的时序如图5-2所示。,图5-2 从外部程序存储器取指令时序,2.地址锁存器,由于MCS-51单片机的P0口是分时复用的地址/数据总线,因此在进行程序存储器扩展时,必须利用地址锁存器将地址信号从地址/数据总线中分离开来。,图5-3为几种地址锁存储器的管脚配置图。,图5-3 地址锁存器,74LS373和8282都是透明的带有三态门的八D锁存器,可

2、简化成图5-4所示的结构。,图5-4 74LS373和8282结构图,3.EPROM扩展电路,紫外线擦除电可编程只读存储器EPROM可作为MCS-51单片机的外部程序存储器,其典型产品是Intel公司的芯片2716(2K8)、2732A(4K8)、2764A(8K8)、27128A(16K8)、27256(32K8)和27512(64K8)等。这些芯片上均有一个玻璃窗口,在紫外线下照射20分钟左右,存储器中的各位信息均变为1,此时,可以通过编程器将工作程序固化到这些芯片中。,2732A EPROM 2732A是4K8位紫外线擦除电可编程只读存储器,单5V供电,最大静态工作电流为100mA,维持

3、电流为35mA,读出时间最大为250ns。,2732A EPROM扩展电路,图5-7 2732A EPROM扩展电路,4.EEPROM扩展电路,EEPROM是电可擦除的可编程只读存储器,它既有EPROM编程后长期保存信息的特点,又可像静态RAM那样随机读写。由于这一特点,它在单片机系统中广泛地用作程序存储器和数据存储器。Intel 2864A是8K8位电擦除可编程只读存储器,单5V供电,最大工作电流160mA,最大维持电流60mA,典型读出时间250ns。2864A管脚配置如图5-8所示。,图5-8 2864A 管脚配置,图5-9 2864A EEPROM扩展电路,5.2外部数据存储器的扩展,

4、1.外部数据存储器的扩展方法及时序,图5-10 扩展外部RAM电路原理图,图5-11 读外部数据RAM时序,图5-12 写外部数据RAM时序,2.静态RAM 6264扩展,6264是8K8位的静态随机存储器芯片,它采用CMOS工艺制造,单一+5V供电,额定功耗200mW,典型存取时间200ns。,图5-14 扩展6264静态RAM,单片机在访问6264时,可以采用以下指令:MOVX DPTR,A A中内容传至外部RAM或 MOVX A,DPTR 外部RAM内容读至A中,5.3 外部I/O口的扩展,MCS-51单片机有4个8位并行I/O端口:P0,P1,P2和P3。由于P0是地址/数据总线口,P

5、2是输出高8位地址的动态端口,P3是双功能多用端口,因此在构成单片机系统后,通常只有P1静态口空出并具有通用功能。这对于复杂的单片机应用系统来说,往往不能满足应用上的要求,为此,常需要在单片机外部扩展输入/输出端口。,1.I/O口地址译码技术,线选法 全地址译码法,线选法,所谓线选法即是把单独的地址线(通常是P2口的某一根线)接到外围芯片的片选端上,只要该地址线有效(通常为低电平),就选中该芯片。,图5-15 线选法地址译码,图中6116为2K字节的数据存储器,还有I/O扩展芯片8255、8155、D/A变换器0832和定时/计数器8253。在外围芯片中除了片选地址外,还有片内地址,而片内地址

6、是由低位地址线进行全译码选择的。根据图5-15中地址线连接方法,全部地址译码如表5-2所示。,表5-2 图5-15的线选法地址译码,全地址译码法,对于RAM或I/O容量较大的应用系统,当芯片所需的片选信号多于可利用的地址线时,常采取全地址译码法。它将低位地址线作为芯片的片内地址,用译码器对高位地址线进行译码,译出的信号作为片选线。一般采用74LS138作地址译码器。图5-16为全地址译码电路实例。,图5-16 全地址译码电路,表5-4 图5-16的全地址译码法地址,2.用缓冲器和锁存器扩展I/O端口,当单片机需要扩展的端口数量不多时,可利用缓冲器和锁存器直接在总线上扩展I/O端口。通常这种I/

7、O口都是通过P0口扩展的,由于P0口只能分时使用,故构成输出口时,接口芯片应具有锁存功能;构成输入口时,根据输入数据是常态还是暂态,要求接口芯片应能三态缓冲或锁存选通。数据的输入、输出由单片机的读/写信号控制。一种常见的电路如图5-17所示。,图5-17 用缓冲器和锁存器扩展I/O端口,例如,若把数据50H由74LS273输出,把74LS244上的信息输入到A中,按照图5-17的电路,程序如下:MOV R0,#0BFH;选中74LS273地址 MOV A,#50H MOVX R0,A MOV R0,#7FH;选中74LS244地址 MOVX A,R0,3.用串行口扩展I/O接口,74LS164

8、是8位串入并出的移位寄存器,可以实现将单片机串行输入数据并行显示到8个信号线上。同时由于是移位寄存器,74LS164可以多片连接。在多片74LS164接连的应用中,将第一片的串行数据输入(A、B)与单片机串口的P3.0相连,第二片的串行数据输入信号线与第一片的并行数据输出信号线最低位(Qh)相连,依次连接。所有CP脉冲短接后接入单片机串口的P3.1相连。图5-18将4片74LS164接连起来,通过单片机的串口在工作方式0下依次发送数据给4片74LS164,在移位脉冲的作用下,串行口发送缓冲器的数据一位一位地移入74LS164中。,图5-18 利用74LS164扩展并行输出口,下面是将RAM缓冲

9、区30H33H的内容经串行口由74LS164并行输出的子程序:START:MOV R7,04H;设置要发送的字节个数 MOV R0,30H;设置地址指针 MOV SCON,00H;设置串行口方式0SEND:MOV A,R0 MOV SBUF,A;启动串行口发送数据WAIT:JNB TI,WAIT;一帧数据未发送完,循环等待 CLR TI INC R0;取下一个数 DJNZ R7,SEND RET,4.并口扩展芯片8255A原理与应用,8255A可编程并行输入/输出接口芯片是Intel公司生产的标准外围接口电路。它采用NMOS工艺制造,用单一5V电源供电,具有40条引脚,采用双列直插式(DIP)

10、封装。它有A、B、C三个8位端口共24条I/O线,可以通过编程的方法来设定端口的各种I/O功能。,芯片引脚及其内部结构8255A的控制字与工作模式 MCS-51单片机和8255的接口,芯片引脚及其内部结构,图5-20 8255A内部结构示意图,(1)数据端口A、B、C 8255A有三个并行口,PA、PB和PC。都可以选择作为输入输出工作模式,但在功能和结构上有些差异:PA口:一个8位数据输出锁存器和缓冲器;一个8位数据输入锁存器。PB口:一个8位数据输出锁存器和缓冲器;一个8位数据输入缓冲器;PC口:一个8位数据输出锁存器和缓冲器;一个8位数据输入缓冲器。(2)A组和B组控制电路 这是两组根据

11、CPU写入的控制字控制8255A工作方式的控制电路。A组控制PA口和PC口的上半部(PC7PC4);B组控制PB口和PC口的下半部(PC3PC0);并可根据命令字对端口的每一位实现置位或复位。(3)双向三态数据缓冲器 这是8255A和CPU数据总线的接口,CPU和8255A之间的命令、数据和状态的传递都是通过双向三态总线缓冲器传送的。(4)读写控制逻辑电路 读写逻辑控制电路包括8255A的端口选择信号(A0、A1)和片选信号()以及读写控制信号(、),这些信号线分别和单片机的地址线和读写信号线相连接,实现单片机对8255A的端口选择和数据传送。其组合状态如表5-5所示。,8255A的控制字与工

12、作模式,8255A有3种工作方式,即模式0、模式1和模式2,这些工作方式可用软件编程来指定,其设定格式如图5-21所示,设定指令由单片机根据表5-5所示的地址选择表实现,其中8255A芯片的三个端口在模式0下被分成两组,在模式1和模式2下PC口为读写控制信号线,只有PA能工作在模式2下。此外,PC口还具有位控制功能,可以通过工作方式控制字将其任意一位置“1”或者清“0”,其控制方式见图5-22所示。,图5-21 8255A方式控制字设置,图5-22 PC口位操作控制字,(1)方式0(基本输入/输出方式)这种工作方式不需要任何选通信号,A口、B口及C口的高4位和低4位都可以设定为输入或输出。作为

13、输出口时,输出的数据均被锁存;作为输入口时,A口的数据能锁存,B口与C口的数据不能锁存。例如,欲设定PA口和PC口高四位工作在模式0输出以及PB口和PC口低四位工作在模式0输入方式的指令为:MOV DPTR,#8003H;控制字的地址为8003H MOV A,#83H;工作方式控制字为83H MOVX DPTR,A;设定工作方式控制字 在这种模式下,单片机可以对8255A的数据端口进行无条件读写,8255A三个I/O端口数据可得到锁存和缓冲。因此,8255A的模式0属于基本输入输出模式。,(2)方式1(选通输入/输出方式)在这种工作方式下,A口可由编程设定为输入口或输出口,C口的3位用来作为A

14、口输入/输出操作的控制和同步信号;B口同样可由编程设定为输入口或输出口,C口的另3位用来作为B口输入/输出操作的控制和同步信号。在方式1下A口和B口的输入数据或输出数据都能被锁存。C口的6条线作为控制和状态信号线,其定义如表5-6所示。,(3)方式2 方式2只有PA口才能设定。其控制信号定义见表56,在此工作模式下,PA为双向口。PA口为输入口时,其工作过程以及控制信号逻辑与模式1中PA为输入口相同,PA口作为输出模式时,其工作过程以及控制信号逻辑与模式1中PA为输出口相同。,MCS-51单片机和8255的接口,在图5-23中,8255的片选信号及口地址选择线A0、A1分别由单片机的P0.7和

15、P0.0、P0.1经地址锁存后提供,所以8255的A、B、C口及控制口地址分别为FF7CH、FF7DH、FF7EH、FF7FH。8255的复位端与单片机的复位端相连。,假设要求8255工作在方式0,且A口作为输入,B口、C口作为输出,则工作程序如下:MOV A,#90H;方式0,A口输入,B口、C口输出 MOV DPTR,#0FF7FH;控制寄存器地址DPTR MOVX DPTR,A;方式控制字送到控制寄存器 MOV DPTR,#0FF7CH;A口地址DPTR MOVX A,DPTR;从A口读数据 MOV DPTR,#0FF7DH;B口地址DPTR MOV A,DATA1 MOVX DPTR,

16、A;将DATA1从B口输出 MOV DPTR,#0FF7EH;C口地址DPTR MOV A,DATA2 MOVX DPTR,A;将DATA1从C口输出,图5-23 单片机和8255接口电路,8255的C口8位中的任一位,均可用指令来置位或复位。例如,如果想把C口的第5位PC4置1,相应的控制字为:00001001B09H,程序如下:MOV DPTR,#0FF7FH;控制寄存器地址DPTR MOV A,09H MOVX DPTR,A;PC41 如果想把C口的第5位PC4复位,相应的控制字为:00001000B08H,程序如下:MOV DPTR,#0FF7FH;控制寄存器地址DPTR MOV A,

17、08H MOVX DPTR,A;PC40,习题解答,1.容量为4K8b的存储器各有多少条数据线和地址线?答案:8条数据线、12条地址线2.画出单片机扩展片外16K字节程序存储器27128 EPROM的接线图。答案:,3.说明单片机扩展I/O端口常用的选址方法。答案:线选法:把单独的地址线(通常是P2口的某一根线)接到外围芯片的片选端上,只要该地址线有效(通常为低电平),就选中该芯片。全地址译码法:将低位地址线作为芯片的片内地址,用译码器对高位地址线进行译码,译出的信号作为片选线。,4.画出单片机扩展片外数据RAM 6116的接线图,并将6116中前20个数据送入单片机内以30H起始的数据单元,写出源程序。答案:,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号