第八章 输入输出扩展.doc_第1页
第八章 输入输出扩展.doc_第2页
第八章 输入输出扩展.doc_第3页
第八章 输入输出扩展.doc_第4页
第八章 输入输出扩展.doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第八章 I/O 口扩展8.1用TTL芯片扩展并行口输出接口的主要功能是进行数据保持,或者说是数据锁存。所以简单输出接口扩展的电路是锁存器。 TTL集成电路: 特性SN54/74(标准系列)SN 54H/74H(高速系列)SN54S/74S(肖特基系列)SN54LS/74LS(低功耗肖特基系列)平均传输延迟(ns)10639.5平均功耗(m w/每门)1022192最高工作频率 (MHz)355512545输入最大低电平(V)0.8输入最小高电平(V)2.02.02.02.0输出最大低电平(V)0.5输出最小高电平(V)2.7输入低电平时输出电流(mA)1.6220.4输入高电平时灌电流(A)40505020输出低电平时灌电流(mA)16 20 20 8 输出高电平时输出电流(mA)0.4 0.5 1 0.4 74LS373 输出控制使能G输入D输出LLLHHHLXHLXXHLQ0Z(高阻) 74LS273 CLRCLK输入D输出LHHH X LXHLXLHLQ074LS273 74LS374 输出控制时钟输入D输出LLLHLXHLXXHLQ0Z(高阻)74LS244 I0LIOH T(传输延迟)功耗74LS24474S244 24 mA 64 mA15 mA15 mA 12 ns 6 ns135 m w 538 m w1.简单输出接口扩展的典型电路芯片简单输出接口扩展通常使用74LS377,74LS373,74LS244等芯片.例如:74LS377该芯片是一个具有使能控制端的8D锁存器。其信号引脚排列如图7-10。图8-1 74LS377引脚图 其中 8D1D8位数据输入线 8Q1Q8位数据输出线 CK时钟信号,上升沿数据锁存 G使能控制信号 VCC+5V电源74LS377的逻辑电路如图7-11。图8-2 74LS377的逻辑电路图 74LS377是由D触发器组成,D触发器在上升沿输入数据,即在时钟信号(CK)由低变高正跳时,数据进入锁存器。74LS377的逻辑功能如表72所示表82 74LS377的逻辑功能GCKDQ1XXQ0011000X0XQ0从真值表可以看出:(1)若G=1,则不管数据和时钟信号(CK)是什么状态,锁存器输出锁存的内容(Q。)。(2)只有在G=0时,时钟信号才能起作用。即时钟信号正跳变时,数据进入锁存器。即输出端反映输入端状态。(3)若CK=0,则不论G为何状态,锁存器输出锁存的内容(Q。),而不受D端状态影响。2.输出接口扩展举例 扩展单输出接口只需一片74LS377,其连接电路如图7-12。 图8-3 74LS377作输出接口扩展 在扩展电路中,以MCS51的WR信号接CLK。因为在WR信号由低变高时,数据总线上出现的正是输出的数据,因此WR接CLK正好控制输出数据进入锁存器。此外74LS377的G信号端固定接地(有效),其目的是使锁存器的工作只受CLK(WR)信号的控制。 练习: 手上有一个不带输出控制的A/D转换芯片,要求你将它接到MCS51总线上.2 8255A作单片机的可编程IO扩展 上一节已讲述了只能实现数据锁存和缓冲功能的简单IO扩展。本节将讲述能实现复杂IO接口扩展的可编程并行接口芯片。这些芯片功能较强,其最大特点在于工作方式的确定和改变是用程序以软件方法实现,因此称之为可编程接口芯片。 在单片机IO扩展中常用的可编程接口芯片有: 8255A可编程通用并行接口芯片 8155带RAM和定时器计数器的可编程并行接口芯片8.2.1 8255A的逻辑结构和信号引脚。 8255A是可编程的并行输入输出接口芯片,通用性强且使用灵活,常用来实现MCS5l系列单片机的并行IO扩展。8255A是一个40引脚的双列直插式集成电路芯片,其引脚排列如图7-13。图8-4 8255A引脚图按功能可把8255A分为三个逻辑电路部分,即总线接口电路,口电路和控制逻辑电路图8-5 8255A的逻辑结构 8255A共有三个8位口,其中A口和B口是单纯的数据口,供数据IO使用。而C口则既可以作数据口,又可以作控制口使用,用于实现A口和B口的控制功能。因此在使用中常把C口分为两部分,即: C口高位部分(PC7PC4) C口低位部分(PC3PC0) 数据传送中A口所需的控制信号由C口高位部分提供,因此把A口和C口高位部分合在一起称之为A组;同样理由,把B口和C口低位部分合在一起称之为B组。8.2.2总线接口电路 总线接口电路用于实现8255A和单片机芯片的信号连接。其中包括:1.数据总线缓冲器 数据总线缓冲器为8位双向三态缓冲器,可直接和MCS51的数据线相连,与IO操作有关的数据、控制字和状态信息都是通过该缓冲器进行传送。2.读写控制逻辑 与读写有关的控制信号有: CS片选信号(低电平有效) RD读信号(低电平有效) WR写信号(低电平有效)A1、A0端口选择信号。8255A共有四个可寻址的端口(即A、B、C口和控制寄存器),用二位地址编码即可实现选择。在IO扩展连接时应把A1和A0直接与单片机的A1和A0相连。表7-3 8255A读/写控制表CSAARDWR所选端口操作00001A口读端口A00101B口读端口B01001C口读端口C00010A口写端口A00110B口写端口B01010C口写端口C01110控制寄存器写控制字1XXXX/数据总线缓冲器输出高阻抗 RESET复位信号(高电平有效)。复位之后,控制寄存器清除,各端口被置为输入方式。 读写控制逻辑用于实现8255A的硬件管理,其内容包括:芯片的选择,口的寻址以及规定各端口和单片机之间的数据传送方向。详见表73。8.2.3控制逻辑电路控制逻辑电路包括A组控制和B组控制,合在一起构成8位控制寄存器。用于存放各口的工作方式控制字。具体逻辑电路不再介绍。8.2.4 8031和8255A的接口8255A可以直接与MCS5l总线接口,其接口电路如图7-15所示。图中,8255A的片选信号CE及口地址选择线A1、A。分别由8031的P2。7和P0。1、P0。0经地址锁存后提供,所以,8255A的A口、B口、C口及控制口的地址分别为7FFCH、7FFDH、7FFEH、7FFFH。8255A的RD、WR分别与8031的RD、WR相连,8255A的RESET与8031的RST相连,都接到8031的复位电路上。图8-5 8255A和MCS5l总线接口电路图8.2.5 8255A的工作方式及数据IO操作1.8255A的工作方式 8255A共有三种工作方式,即方式0、方式1及方式2。(l)方式0基本输入输出方式 方式0下,可供使用的是两个8位口(A口和B口)及两个4位口(C口高位部分和低位部分)。四个口可以是输入和输出的任何组合。 方式0适用于无条件数据传送,也可以把C口的某一位作为状态位,实现查询方式的数据传送。(2)方式1选通输入输出方式 方式1下,A口和B口分别用于数据的输入输出。而C口则作为数据传送的联络信号。具体定义见表74。由表中可见A口和B口的联络信号都是三个,因此在具体应用中,如果A或B只有一个口按方式1使用,则剩下的另外13位口线仍然可按方式0使用。如果两个口都按方式1使用,则还剩下2位口线,这两位口线仍然可以进行位状态的输入输出。 C口位线方式1方式2输入输出输入输出PC7OBFAOBFAPC6ACKAACKAPC5IBFAIBFAPC4STBASTBAPC3INTRAINTRAINTRAINTRAPC2STBBACKBPC1IBFBOBFBPC0INTRBINTRB方式1适用于查询或中断方式的数据输入输出。STB : X选通输入,低电平有效,将数据打入输入锁存器.IBF : 输入缓冲器满,高电平有效,STB的下降沿置位,RD的上升沿复位.INTE : 中断请求许可,又PC4(PC2)的置位复位控制INTR : 中断请求, ,高电平有效, STB, IBF, INTE为高电平时产生.RD的下降沿复位.OBF : 输出缓冲器满, 低电平有效,由WR的上升沿置0(有效),由ACK的下降沿置1(无效).ACK : 外设应答,低电平有效,表示外设已取走数据.INTE : 中断请求许可,又PC6(PC2)的置位复位控制.INTR : 中断请求, ,高电平有效, ACK, OBF INTE为高电平时产生.WR的下降沿复位.(3)方式2双向数据传送方式 只有A口才能选择这种工作方式,这时A口既能输入数据又能输出数据。在这种方式下需使用C口的五位口线作控制线,信号定义如表74所示。方式2适用于查询或中断方式的双向数据传送。如果把A口置于方式2下,则B口只能工作于方式0。2.数据输人操作 用于输入操作的联络信号有: STB(Strobe)选通脉冲(输入),低电平有效。 当外设送来STB信号时,输入数据装入8255A的锁存器。 IBF(Input Buffer Full)输入缓冲器满信号(输出),高电平有效。 此信号有效,表明数据已装入锁存器,因此它是一个状态信号。INTR(INTrrupt Request)中断请求信号(输出),高电平有效。当IBF为高,STB信号由低变高(后沿)时,中断请求信号有效。向单片机发出中断请求。 数据输入过程说明: 当外设准备好数据输入后,发出STB信号,输入的数据送入缓冲器。然后IBF信号有效。如使用查询方式,则IBF即作为状态信号供查询使用;如使用中断方式,当IBF信号由低变高时,产生INTR信号,向单片机发出中断请求。单片机在响应中断后执行中断服务程序时读入数据,并使INTR信号变低,同时也使IBF信号同时变低。以此通知外没准备下一次数据输入。数据输入操作的信号关系如图7-16所示。3.数据输出操作 用于数据输出操作的联络信号有: ACK(ACKnowledge)外设响应信号(输入),低电平有效。 当外设取走输出数据,并处理完毕后向单片机发回的响应信号。 OBF(Output Buffe Full)输出缓冲器满信号(输出),低电平有效。当单片机把输出数据写入8255A锁存器后,该信号有效,并送去启动外设以接收数据。 INTR中断请求信号(输出),高电平有效。 数据输出过程说明: 外设接收并处理完一组数据后,发回ACK信号。该信号使OBF变高,表明输出缓冲器已空(实际上是表明输出缓冲器中的数据已无保留之必要)。如使用查询方式,则OBF可作为状态信号供查询使用;如使用中断方式,则当ACK信号结束时,INTR有效,向单片机发出中断请求。在中断服务过程中,把下一个输出数据写入8255A的输出缓冲器。写入后OBF有效,表明输出数据已到,并以此信号启动外设工作,取走并处理8255A中的输出数据。数据输出操作的信号关系如图7-17所示。图8-17 数据输出操作的信号关系8.2.6 8255A控制字及初始化编程 8255A是可编程接口芯片,因此以控制字形式对其工作方式以及C口各位的状态进行设置。为此共有两种控制字。即工作方式控制字和C口位置位复位控制字。1.工作方式控制字工作方式控制字用于确定各口的工作方式及数据传送方向。其格式如图7-18所示。 图7-18 8255A的工作方式控制字 对工作方式控制字作如下说明:A口有三种工作方式,而B口只有两种工作方式。在方式1或方式2下,对C口的定义(输入或输出)不影响作为联络线使用的C口各位功能。最高位(D7)是标志位,其状态固定为1,用于表明本字节是方式控制字。2.C口位置位复位控制字 在一些应用情况下,C口用来定义控制信号和状态信号,因此C口的每一位都可以进行置位或复位。对C口各位的置位或复位是由位置位复位控制字进行的。8255A的位置位复位控制字格式如图8-19所示。 图8-19 C口位置位复位控制字 D7是该控制字的标志,其状态固定为0。 在使用中,控制字每次只能对C口中的一位进行置位或复位。3.初始化编程 8255A初始化的内容就是向控制字寄存器写入工作方式控制字和C口位置位复位控制字。这两个控制字格式字因标志位的状态不同,因此8255A能加以区分。为此两个控制字按同一地址写入且不受先后顺序限制。 例如对8255A各口作如下设置:A口方式0输入,B口方式1输出,C口高位部分为输出低位部分为输入。设控制寄存器地址为3AH。 按各口的设置要求,工作方式控制字为10010101,即95H。则初始化程序段为: MOV RO,3AH MOV A,95H. MOVX RO,A 又如,设8255A的控制口地址为7FFFH,要求8255A的A口输入,B口输出,并采用中断请求,则初始化程序如下: MOV DPTR,7FFFH MOV A,OBCH;置A口输入,B口输出 MOVX DPTR,A MOV A,05H;置PC2(即INTEB)为1MOVX DPTR,A7.6 8155作单片机的可编程IO、RAM存储器和定时器计数器扩展 与8255A相比,8155具有更强的功能,因为它除能提供并行接口所需的各种电路之外,还包括有RAM存储器和定时器计数器。7.6.1 8155基本结构及工作方式:8155芯片为40引脚双列直插式封装,单一的十5V电源,其引脚排列如图7-20。其逻辑框图如图7-21。 图720 8155信号引脚图721 8155逻辑结构 8155具有三个可编程IO口,其中二个口(A和B)为8位口,一个口(C)为6位口。此外还有256单元的RAM和一个14位计数结构的定时器计数器。1.主要接口信号引脚 在与单片机接口的方面,8155提供如下信号: AD7AD0-地址数据复合线 ALE-地址锁存信号。除进行AD7AD0的地址锁存控制外,还用于把片选信号和IOM等信号进行锁存 RD-读选通信号 WR-写选通信号 CE-片选信号 IOM-IO与片内RAM选择信号。8155内部的IO口与RAM是分开编址的,因此要使用控制信号进行区分。IOM0,对片内RAM进行读写;IOM=1,对IO口进行读写。 RESET-复位信号。8155以600ns的正脉冲进行复位,复位后A、B、C口均置为输入方式。2.IO口及工作方式 8155的三个IO口,分别以PA、PB和PC称呼,其中PA和PB都是8位通用输入输出口,主要用于数据的IO传送,它们都是数据口,因此只有输入输出两种工作方式。而PC口则为6位口,它既可以作为数据口用于数据的IO传送,也可以作为控制口,用于传送控制信号和状态信号,对PA和PB的IO操作进行控制。因此PC口具有四种工作方式,即:输入方式,输出方式,PA口控制端口方式以及PA和PB口控制端口方式。 当以无条件方式进行数据输入输出传送时,由于不需要任何联络信号,因此这时PA、PB及PC都可以进行数据的输入输出操作。当PA或PB以中断方式进行数据传送时,所需的联络信号由PC提供,其中PC2PC。是为PA提供,PC5PC3是为PB提供。各联络信号的定义如表7-5所示。表7-5 PC口联络信号定义口位 方式作PA控制端口作PA和PB控制端口PC0AINTRAINTRPC1ABFABFPC2ASTBASTBPC3输出BINTRPC4输出BBFPC5输出BSTB 联络信号共有三个,其中: INTR-中断请求信号(输出),高电平有效。送给MCS51单片机的外中断请求。 IBF-缓冲器满状态信号(输出),高电平有效。 STB-选通信号(输入),低电平有效。数据输人操作时,STB是外设送来的选通信号;数据输出时,STB是外设送来的应答信号。3.RAM单元及I/O编址 8155共有256个RAM单元,加上六个可编址的端口。为此8155引入了八位地址AD7AD0,无论是RAM还是可编址端口都使用这八位地址进行编址。可编址的六个端口是:命令状态寄存器、PA口、PB口、PC口、定时器计数器低8位以及定时器计数器高8位;对它们只需使用AD2AD0即可实现编址,如表7-6所示。 表7-6 8155的可编程端口AD7AD6AD6AD4AD3AD2AD1AD0选择XXXXX000命令/状态寄存器XXXXX001PA口XXXXX010PB口XXXXX011PC口XXXXX100定时器/计数器低8位XXXXX101定时器/计数器高8位7.6.2 8155与MCS51单片机的连接8155与MCS51的连接比较简单,因为8155的许多信号与MCS5l兼容,可以直接连接。表7-7列出了这些信号的对应关系。 表7-7 8155与MCS51的兼容信号8155MCS-518155MCS-51AD7AD0P0RDRDALEALEWRWRRESETRST MCS51单片机可以与8155直接连接而不需要任何外加逻辑器件。8031与8155的接口方式如图7-22所示。图中,8031的P0口输出直接与8155的AD7AD。相连,既作低8位地址线又作数据总线,地址的锁存是直接用ALE在8155内部锁存。8031的P2.7和P2.0分别与8155的CE、IOM相连。当P2.7为低电平时,选中8155。这时,若P2.0=1,则访问8155的IO口;若P2.0=0,则访问8155的RAM单元。由此可知,8155的地址分配如下: (1)RAM字节地址:7E00H7EFFH。(2)IO口地址:A口地址为7F0lH,B口地址为7F02H,C口地址为7F03H,命令状态口地址为7F00H,定时器低8位地址为7F04H,定时器高8位地址为7F05H。图7-22 8031与8155的接口方式7.6.3 8155的命令状态字 8155有一个命令状态寄存器,实际上这是两个不同的寄存器,分别存放命令字和状态字。但由于对命令寄存器只能进行写操作,而对状态寄存器只能进行读操作。因此把它们编为同一地址,合在一起称之为命令状态寄存器。1.命令字 命令字共8位,用于定义端口及定时器计数器的工作方式。对命令寄存器只能写不能读。 命令字的格式如图7-23所示。图7-23 8155命令字格式2.状态字状态字也是8位(但实际只使用7位,最高位没定义)。用于寄存各端口及定时器计数器的工作状态。其格式如图7-24。图7-24 8155状态字格式7.6.4 8155的定时器计数器简介1.定时器计数器的计数结构 8155的定时器计数器是一个14位的减法计数器,由两个8位寄存器构成,如图7-25所示。以其中的低14位组成计数器,剩下的两个高位(M2M1)用于定义计数器输出的信号形式。D7D6D5D4D3D2D1D0M2M1T13T12T11T10T9T8D7D6D5D4D3D2D1D0T7T6T5T4T3T2T1T0图7-25 8155定时器计数器的计数结构其中T13T0为计数器的计数初值,M2、M1表示计数器的输出方式。2.定时器计数器的使用 8155的定时器计数器与MCS-51单片机芯片内部的定时器计数器,在功能上是完全相同的,同样具有定时和计数两种功能,但是在使用上却与MCS5l的定时器计数器有许多不同之处。具体表现在:8155内的定时器计数器是减法计数,而MCS51的定时器计数器却是加法计数。因此确定计数初值的方法是不同的。MCS51的定时器计数器有多种工作方式。而8155的定时器计数器则只有一种固定的工作方式,即14位计数,通过软件方法进行计数值加载。MCS-51的定时器计数器有两种计数脉冲。当定时工作时,由芯片内部按机器周期提供固定频率的计数脉冲;当计数工作时,从芯片外部引入计数脉冲。但8155的定时器计数器,不论是定时工作还是计数工作,都由外部提供计数脉冲,其信号引脚就是TIMER IN。MCS51的定时器计数器,计数溢出自动置位TCON寄存器的计数溢出标志位(TF),供用户以查询或中断方式使用;但8155的定时器计数器,计数溢出时向芯片外边输

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论