IO接口扩展电路设计

上传人:工**** 文档编号:474127139 上传时间:2023-02-23 格式:DOC 页数:8 大小:43KB
返回 下载 相关 举报
IO接口扩展电路设计_第1页
第1页 / 共8页
IO接口扩展电路设计_第2页
第2页 / 共8页
IO接口扩展电路设计_第3页
第3页 / 共8页
IO接口扩展电路设计_第4页
第4页 / 共8页
IO接口扩展电路设计_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《IO接口扩展电路设计》由会员分享,可在线阅读,更多相关《IO接口扩展电路设计(8页珍藏版)》请在金锄头文库上搜索。

1、I/O接口扩展电路设计 8051系列单片机如果系统不做任何扩展,P0P3接口可做I/O接口使用。只要稍微扩展系统,P0、P2接口则被用为地址线。P0接口还兼做数据线,P3接口常被专用线占用,只有Pl接口可做I/O接口。一个实际系统,只有8位IO接口往往是不够用的,所以I/O接口也需要扩展。本节重点介绍I/O接口扩展方法及应用实例。 I/O接口扩展方式主要有两种:总线扩展法和串行口扩展法。总线扩展又可分为简单I/O接口扩展和可编程I/O接口扩展。 扩展I/O接口常用芯片有TTL、CMOS锁存器、三态门芯片,如74系列的373、244、273、367等,这些常用来扩展简单I/O接口。可编程芯片常用

2、8255、8155等,利用程序对芯片进行设置,软硬件结合实现对I/O接口的扩展。 简单I/O接口扩展 在单片机应用系统中,利用TTL芯片、COMS锁存器、三态门等接口芯片把P0接口扩展,常选用74LS273、74LS373、74LS244等芯片。这些芯片价格低,结构简单,使扩展灵活方便。如图6-7所示是一个利用74LS273和74LS244,将8位P0接口扩展成简单的输入、输出口的电路。74LS273是8D锁存器扩展输出口,输出端接8个LED发光二极管,以显示开关状态,某位低电平时二极管发光。74LS244是缓冲驱动器,扩展输入口,它的8个输入端分别接8个按钮开关。74LS273与74LS24

3、4的工作受P2.0、RD、WR三条控制线控制。其工作原理如下。当P2.0=0,WR=0(RD=1)选中74LS273芯片,CPU通过P0接口输出数据锁存到74LS273,74LS273的输出端低电平位对应的LED发光二极管点亮;当P2.0=0,RD=0(WR=1)时选中74LS244,此时若无键按下,输入全为高电平,当某键按下时则对应位输入为“0”,74LS244的输入端不全为“1”,其输入状态通过P0接口数据线被CPU读入机内。总之,在图6-7中只要保证P2.0端低电平就有可能使扩展输入口或输出口工作。至于哪一个口工作受WR和RD控制线控制,二者不会同时为“0”,故在图6-7中,两个扩展芯片

4、可共用一个地址。扩展口地址确定原则,只要保证P2.0为“0” 。其他地址位或“0”或“1”即可。如地址用FEFFH(无效位全为“1”),用0000H(无效位全为“0”)。输出程序段:MOV A, #data ;数据AMOV DPTR, #0FEFFH ;I/O地址DPTRMOVX DPTR, A ;WR为低电平,数据74LS273口输出输入程序段:MOV DPTR, #OFEFFH ;I/O地址DPTRMOVX A, DPTR ;RD为低电平,74LS244接口数据读入内部RAM例 要求编程把按键状态通过图6-7中的发光二极管显示出来。程序LP: MOV DPTR, #0FEFFH ;输入口地

5、址DPTR MOV A, DPTR ;键状态送 A MOVX DPTR, A ;A 数据送显示输出口 SJMP LP ;(输入、输出公用一个地址)反复连续执行8255可编程并行I/O接口扩展与电路设计8255 是一个单片机系统常用的可编程芯片,利用指令设置各口的工作方式。为了对8255合理设置,灵活应用,有必要了解他的内部结构及工作原理。1.8255内部结构及引脚功能8255是一个有40引脚双列支插型可编程芯片,内部及引脚如图6-8所示。由图6-8可见,8255内部有3个并行的8位I/O接口,分别称为A口、B口、C口。扩展一片8255则可扩展24位并行端口。引脚功能介绍如下:(1) 接口线A、

6、B、C 3个I/O接口的引线端分别为:PA0PA7、PB0PB7、PC0PC7共24条端线。3个口皆为锁存/缓冲寄存器,A口、B口有锁存功能,C口无锁存功能。A、B、C 3口的工作方式由程序设置。A口可设置为输入或输出或双向方式工作。B口只能设置为输入或输出,不能双向方式工作。C口可设置为输入或输出口。它的特点是可分成高、低两个4位使用。上半部PC4PC7与A口组成一组叫A组;下半部PC0PC3与B口组成一组为B组,便于控制。 (2) 数据线8255是8位芯片,有8位数据线D0D7。数据线接于8051的P0接口,用以实现8255与CPU之间的数据传送。(3) 控制线控制线控制8255的读、写、

7、复位及片选等。RD:读入控制线,低电平有效,当其为低电平时CPU对8255进行读操作,此时8255相应口为输入口。WR:输出控制线,低电平有效,当WR为低电平时,CPU输出数据或命令到8255端口,此时8255相应口为输出口。RESET:复位端,高电平有效,8255内部寄存器全清0,24条I/O口线为高阻状态。CS:片选线,当CS为低电平时,CPU选中此8255芯片。(4) 地址线8255共占用4个口地址,为A、B、C口及控制口地址。这4个地址之间的选择由A0、A1两端口线控制。A0、A1通常接于单片机的地址线最低两位P0.O、P0.1,二者组合决定了4个端口地址,口地址选择方式如下:A1A0

8、=00,选择A口;A1A0=01,选择B口;A1A0=10,选择C口;A1A0=11,选择控制口。除这两位外,其他位状态还与硬件接线有关,各口具体地址,结合实际电路才能确定。2.方式选择及方式控制字(1) 8255工作方式8255有3种工作方式:方式0、方式1,方式2。方式0时,A、B、C三口都可作基本的输入或输出口;方式1时,A、B口可作选通输入或输出,C口部分作专用联络线;方式2时,A口为双向口,C口部分为专用联络线,B口无此方式。8255的C口专用功能如表6-3所列。 (2) 方式选择 8255的方式选择由方式控制字决定。方式控制字是8255内部方式控制寄存器的状态字,它由指令写入控制寄

9、存器中A、B、C口控制位为“1”,对应口为输入方式,若为“0”则为输出方式。例如,控制字状态为10010101B,表示A组为方式0(D6D5=00),A口为输入方式(D4=1),C口上半部为输出方式(D3=0);B组方式1(D2=1)中,B口为输出(D1=0),C口下半部为输入方式(D0=1)。D7=0只能对C口位操作,位操作内容由控制寄存器相应位状态决定。例如,若控制字为01H,即控制寄存器格式为00000001B,表示C口位操作(D7=0),将PC0位置“1”(D3D2D1=000,DO=l置“1”),同理若控制字为0EH则把C口最高位PC7置“0”即复位。8255扩展电路及地址设置 如图

10、6-9所示是8051单片机扩展一片8255的电路图。图中,74LS373是地址锁存器。8255的地址线AI、A0经74LS373接于P0.1、P0.0;片选端CS经74LS373与P0.7接通,其他地址线悬空;8255的控制线RD、WR直接接于8051的RD和WR端;数据线DB接于P0口。18255地址口确定图6-9中8255只有3根线接于地址线。片选CS、地址选择端A1、A0。分别接于P0.7,P0.1、P0.0其他地址线全悬空。显然只要保证P0.7为低电平时,选中该8255,若P0.1、P0.0再为“00”选中8255的A口,同理P0.1、P0.0为“01”、“10”、“11”分别选中B口

11、、C口及控制口。若地址口用16位表示,其他无用端全设为“1”,则8255的A、B、C及控制口地址分别可为 FF7CH、FF7DH、FF7EH、FF7FH,无用位为“0”则4个地址为0000H、0001H、0002H、0003H,只要保证CS、A1、A0的状态,无用位设为“0”或“1”无关。掌握了确定地址的方法,使用者可灵活选择地址。 28255初始化 使用8255芯片时,首先要对它初始化。所谓初始化,也就是对8255的3个端口的工作方式预先设置。设置控制字经控制口写入。 例如图6-9电路,欲设置8255的A、B、C口全为输出状态,控制字为80H。程序:MOV DPTR, #0003H ;825

12、5控制口地址DPTRMOV A, #80H ;控制字送AMOVX DPTR, A ;控制字写入控制寄存器 利用这几条指令对8255初始化后,A、B、C 3个口才能作为输出口使用。当然改变控制字,则可改变3个端口的工作方式。8155可编程I/O接口扩展设计8155可编程接口芯片与8255的使用方法类似,只是二者在结构与功能上有所不同。18155结构及引脚 8155 内部也有3个I/O接口A、B、C口,与8255的主要区别是C口只有6位,I/O接口共22位,比8255多一个14位可编程定时/计数器,还多256B的静态RAM。8155共40引脚,双列直插式封装,如图6-10所示。(1) I/O接口线

13、PA0PA7,PB0PB7,PC0PC5分别为A、B、C 3个I/O接口引线端。A、B、C口多用于与外设之间的数据传送;C口还可以作为A、B口的控制线。(2) 地址数据线 8155的低8位地址线和数据线共用AD0AD7,故称为地址数据线。当ALE=1时,输入的是地址信息,否则是数据信息。当与8051单片机连接时,ALE下降沿到,将P0接口输出的低8位地址信息及CE、IO/M状态都锁存到8155内部寄存器。因此8155的AD0AD7直接与P0接口相联,低8位地址不需要外接锁存器,这点与8255不同。(3) 控制线 ALE:地址锁存线。ALE=1表示给8155输入的是地址信息,当ALE下降沿时,把

14、地址锁存到8155中。IO/M:RAM与I/O接口的选择线。IO/M=0选中8155内部RAM区,IO/M=1 选择3个I/O接口、定时/计数器和命令寄存器。CE:片选线,RD:读控制线,WR:写控制线。 TIMERIN:定时计数器外部脉冲输入端。TIMEROUT:定时/计数器输出端。2. 8155功能及操作 8155具有3种功能,下面介绍具体操作。 (1) 作I/O接口使用IO/M=1时8155作I/O接口使用。各口的工作方式通过内部控制寄存器设置。8155工作于I/O口时,各方式具体功能如表6-4所列。表6-48155 I/O接口工作方式及功能 PC2 PC1方式功 能 0 0方式1A、B口定义为基本输入/输出口;C口为输入口 1 1方式2A、B口定义为基本输入/输出口;C口为输入口 0 1方式3A口为选通输出,B口基本输入/输出PC3PC5输出,PC0PC2作A口选通控制PC0;AINTR,PC1,ABF,PC2,ASTB 1 0方式4A口、B口都作为选通输入/输出方式PC0PC2控制A口,同方式3PC3PC5控制B口,PC3;BINTR,PC4:BBFPC5:BSTB 2)状态寄存器格式8155有一个状态寄存器,它锁存I/O接口和定时器当前状态供单片机查询。状态寄存器和控制寄存器共用一个地址,所不同的是状态寄存器只能

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号