1.4k likes | 1.57k Views
第九章 单片机 I/O 接口扩展及应用. 本章要点: n I/O 接口的作用和功能及 I/O 接口的扩展方法 n 8255A 芯片的工作原理,使用 8255A 进行并口扩展的方法 n 8155 芯片的工作原理,使用 8155 进行并口扩展的方法 n 键盘的种类与接口技术 n LED 显示器的原理与接口技术 n LCD 显示器的原理与接口技术. 9.1 概述 1. 为什么要扩展 I/O 接口
E N D
第九章 单片机I/O接口扩展及应用 本章要点: nI/O接口的作用和功能及I/O接口的扩展方法 n8255A芯片的工作原理,使用8255A进行并口扩展的方法 n8155芯片的工作原理,使用8155进行并口扩展的方法 n键盘的种类与接口技术 nLED显示器的原理与接口技术 nLCD显示器的原理与接口技术
9.1 概述 1.为什么要扩展I/O接口 单片机系统是一个特殊的微机系统,它也需要与外围设备一起工作。微型计算机与外围设备的信息交换称为数据的输入/输出(I/O),将计算机CPU与外围设备连接起来的电路称为接口电路。接口电路组成计算机的输入/输出系统。输入/输出系统把微机与外围设备连接起来,形成一个完备的计算机系统。
MCS—5l系列单片机本身有4个简单I/O口P0~P3。对于片内有ROM/PROM的8051/8751来说,4个I/O口均可以作为通用输入/输出口使用,对于8031单片机来说,P0和P2口必须作为片外程序存储器地址线使用,只有2个口可以当作通用输入/输出口使用。对于功能比较复杂的单片机系统,显然输入/输出口是不够用的,需要扩展I/O口。另一个方面,外围设备与单片机在运行速度上是有很大差异的,要把快速的单片机和慢速的外设(如打印机)连接起来协调工作,就需要在单片机与外设之间构造一个缓冲桥梁,而且,单片机的电气特性与外设的电气特性也是有区别的,也需要在单片机与外设之间构建一个桥梁,完成电气特性的转换,使得单片机与外设可以正常通信。这个“桥梁”,就是我们前面说的接口。因此,进行I/O口的扩展和设计接口电路是必须的。
很多接口电路都被设计成标准接口芯片,使用者可以根据系统的需要,选择适当的芯片与单片机连接起来,然后,通过编写适当的软件控制其工作,以达到用户的需要。很多接口电路都被设计成标准接口芯片,使用者可以根据系统的需要,选择适当的芯片与单片机连接起来,然后,通过编写适当的软件控制其工作,以达到用户的需要。
2.CPU寻址外围设备的方式 CPU寻址外设的方式有两种:存储器映像方式和I/O口单独编址方式。 (1)存储器映像方式 在这种方式下,CPU将接口和存储器同等看待,将存储器的地址空间划出一部分供I/O口使用,每一个外设端口占用一个存储器地址。CPU可以用访问存储器的指令访问I/O端口。从外围设备输入一个数据,和从存储器读一个数据的操作是相同的;将一个数据从CPU送到外设,与将一个数据存入存储器的操作是相同的。MCS-51系列单片机采用存储器映像方式。
(2)I/O口单独编址方式 在这种方式中,I/O接口的地址和存储器的地址是分别独立的,互不干涉,它们的地址有可能是重复的。CPU使用专用指令来操作I/O端口。这种方式的优点是I/O口地址不占用存储器的存储空间,控制简单;其缺点是控制程序相对复杂,功能不强。早期的Z80单板机就是采用这种编址方式。
3. I/O接口扩展方式 I/O接口扩展方式主要有两种:总线扩展法和串行口扩展法。总线扩展又可分为简单I/O接口扩展和可编程I/O接口扩展。 扩展I/O接口常用芯片有TTL、CMOS锁存器、三态门等芯片,如74系列的373、244等,常用来扩展简单I/O接口。可编程芯片常用8255A、8155等,利用程序对芯片进行设置,软硬件结合实现对I/O接口的扩展。 单片机与外部设备之间传送数据的方法很多,下面主要介绍其中的三种。
9.1.1 程序传送 程序传送也称查询传送。当CPU与外部设备工作不同步时,很难做到传送正确。为了保证每次传送正确,通常必须在程序控制下进行。也就是:在传送前,必须去查询一下外设的状态,当外设准备好了才传送;若未准备好,则CPU等待。这样,接口除了负责数据传送外,还要负责传送状态信息。查询式输入和输出的程序流程图分别如图9-1及图9-2所示。
图9-1 查询式输入程序流程图 图9-2 查询式输出程序流程图
例如,CPU通过程序传送方式与打印机连接,如图9-3所示。 例如,CPU通过程序传送方式与打印机连接,如图9-3所示。 图中数据口的地址为FFH,状态口接到8031的P1端口,CPU通过查询程序查询P1.0的状态;若BUSY=1(忙),表示打印机尚未完成前一数据的打印而要求CPU继续等待;当BUSY=0(闲),表示打印机可以接受数据。编程如下:
MOV A,#DATA LOOP:JB P1.0 LOOP MOV R0,#0FFH MOVX @R0,A 程序传送主要优点是:能较好地协调外设与CPU之间定时的差别,且用于接口的硬件较少。主要缺点是:CPU必须作程序等待循环,以不断测试外设的状态,直至外设为传送数据准备就绪为止,这种循环等待方式很花费时间,大大降低了CPU的运行效率。
9.1.2 中断传送 程序传送很浪费CPU的时间,而且一般外设的输入或输出一个数据的速度是很慢的,如打印机、键盘等,其响应时间都在毫秒级以上,在这段时间里,CPU可以执行大量的指令。为了提高CPU的运行效率,可以采用中断传送方式。 例如,CPU通过中断传送方式与打印机连接,如图9-4所示。 图9-4 CPU通过中断传送方式和打印机连接示意图
编程如下: PUSH A MOV A,#DATA MOV R0,#0FFH MOVX @R0,A POP A RETI 中断传送方式就是当CPU需要输入或输出数据时,执行一条指令,发出启动外设工作的命令,然后CPU继续执行主程序。当外设准备就绪或空闲时,由外设向CPU发出中断请求,CPU就暂停原程序的执行,转去执行输入或输出操作,待输入输出操作完成后再返回,CPU继续执行原程序。中断传送不仅大大提高CPU的效率,而且可以实现CPU与外设同时工作。
9.1.3 直接存储器传送 中断传送虽然大大提高了CPU的运行效率,但它仍是由CPU通过程序传送,需要执行许多条指令,所以传送一个数据都要花费一定时间。这对于一个高速输入输出设备,以及成组成批交换数据的情况,例如磁盘与内存之间的信息交换,就显得速度太慢了。 我们希望用硬件在外设与内存间直接进行数据交换(即DMA)而不通过CPU。这样,数据传送的速度的上限就只取决于存储器的工作速度。但是,通常系统的地址总线、数据总线及控制总线都是由CPU管理的。在DMA方式时,就需要CPU把这些总线让出来,而由DMA控制器来接管。DMA的工作原理图如图9-5所示。
图9-5 DMA工作原理图 图中的DMA控制器要能对数据交换进行控制,必须具备以下功能: 1.能向CPU发出总线请求信号。 2.当CPU发出总线响应信号后,DMA控制开始接管对总线的控制,进入DMA传送方式。 3.发出地址信息,能对存储器寻址及能修改地址指针。 4.能发出读或写等控制信息。 5.能决定传送的字节数,及判断DMA传送是否结束。 6.发出DMA结束信号,总线重交CPU管理,使CPU恢复正常工作状态。 通常DMA的工作流程如图9-6所示。
图9-6 DMA工作流程图 需要说明的是:MCS-51不具备DMA功能,但它可以参与到单板机Z80系统中,成为双CPU系统。
9.2 单片机简单I/O扩展 对于简单的单片机系统,可以直接利用P0~P3口与外围设备进行通信,或者使用TTL芯片、CMOS芯片或三态门电路与外围设备进行通信。根据实际情况,这些I/O口一般通过P0口进行扩展。由于P0口是分时复用,所以构成输出口时,接口芯片应具有锁存功能;构成过程输入口时,根据输入数据是常态还是暂态,要求接口芯片应该能够三态缓冲或锁存选通。 9.2.1 简单输入口扩展 外设输入的数据和状态信号,可以通过数据输入三态缓冲器传给单片机。通常使用的典型芯片是74LS244,该芯片为双4位三态数据缓冲器,其引脚如图9-7 所示。输入端引脚1A1~1A4、2A1~2A4,输出端引脚1Y1~1Y4、2Y1~2Y4,输出允许信号1G和2G分别控制两个4位三态数据缓冲器的输出,低电平时允许输出,高电平时为高阻状态。 使用74LS244扩展简单输入接口的电路如图9-8所示。8个数据输出端1Y1~1Y4、2Y1~2Y4与单片机的数据总线相连,8个数据输入端1A1~1A4、2A1~2A4与外设相连。加到输出允许信号和上的负脉冲,将数据输入端的数据送到数据输出端,与CPU的和地址译码信号相连。
74LS244:8 输入3态缓冲电路,把8个输入分成2组,4个一组。 H=高电平 L=低电平 Z=高阻 G=0 的时候,输入->输出 G=1的时候,输出为高阻态
图9-8 74LS244扩展简单输入接口 图9-7 74LS244引脚图 这样扩展口的地址为:7FFFH。输入数据的指令: MOV DPTR, #7FFFH MOVX A, @DPTR
9.2.2 简单输出口扩展 下面以锁存器74LS377芯片为例,介绍简单输出接口扩展电路。 74LS377芯片是一个具有使能控制端的8位锁存器。其信号引脚如图9-9所示。使能端OE=0时,加到74LS377引脚CLK的脉冲信号的上升沿将D0~D7引脚上出现的数据写入锁存器锁存。使能端OE=1或CLK=0时,锁存器输出锁存的内容。 扩展简单输出接口的连接电路如图9-10所示。8个数据输入端D7~D0与单片机数据总线相连,8个数据输出端Q7~Q0与外设相连。使能端与地址总线的译码信号,若扩展系统中无其他片外数据存储器或I/O口电路,端可以接地,一直有效。时钟端CLK与单片机写信号相连。每当执行MOVX @Ri,A指令,在写信号的上升沿,单片机将累加器A的内容通过数据总线锁存在74LS377中,并向外设输出。
图9-10 74LS377扩展简单输出接口 图9-9 74LS377引脚图 P2.5决定74LS377地址为:DFFFH,输出指令: MOV DPTR ,#0DFFFH MOVX @DPTR,A
9.3 8255A可编程通用并行接口芯片 9.3.1 可编程I/O接口扩展概述 为完成一些较复杂的接口动作,仅靠上述的一些简单芯片不能满足要求。此情况下可以选用可编程的接口芯片,这些芯片的功能可以由CPU通过程序来控制,因此可以使用一个接口芯片执行多种不同的接口功能,使用十分灵活方便。同时可以与微处理器和外设直接连接,不需要或只需外加很少的硬件。 可编程的接口芯片较多,功能各异,常用的可编程接口芯片如: 8255A:可编程并行I/O接口片; 8155:可编程的RAM和I/O接口芯片; 8279/78:可编程键盘/显示器接口芯片; 8250、8251:可编程串行通信接口芯片; 8237:可编程DMA控制器芯片; 8253:可编程定时/计数器接口芯片; 8295:点阵式打印机控制接口芯片等等。 9.3.2 8255A的逻辑结构和信号引脚 1.8255A的结构
图9-11 8255A逻辑结构图 8255A的结构框图如图9-11所示。它由以下几个部分组成:
(1)I/O端口A、B、C: 8255A有三个8位(又称两个8位、两个4位)并行口,即为PA、PB、PC,它们都可以选择输入或输出工作方式,但在功能和结构上有些差异。 PA口有一个8位数据输出锁存器和缓冲器,一个8位数据输入锁存器。PB口有一个8位数据输出锁存缓冲器,一个8位的数据输入输出缓冲器;PC口有一个8位的输出锁存缓冲器,一个8位输入缓冲器。PA口和PB口作为输入输出口,PC口可作为输入输出口,也可传送PA、PB口选通方式操作时的状态控制信号。 (2)A组和B组控制电路: 这是两组根据CPU命令控制8255A工作方式的控制电路,A组控制PA口和PC4~7,B组控制PB和PC0~3。
(3)双向三态数据总线缓冲器 :这是8255A和CPU数据总线的接口,CPU和8255A之间的命令、数据和状态的传送部分是通过双向三态总线缓冲器传送的,D0~D7控CPU的数据总线。 (4)读写和控制逻辑 :A0、A1、CS为8255A的端口选择信号与片选信号,RD、WR为对8255A的读写控制信号,这些信号分别和CPU的地址线和读写信号线相连接,实现CPU对8255A口选择和数据传送。这些控制信号的组合可以实现CPU对8255A的PA口、PB口、PC口和控制口的选择。
2.8255A各引脚功能 8255A的引脚配置如图9-12所示,各功能如下: (1) D0~D7—双向三态数据总线。 (2)PA0~PA7—A端口线。 (3)PB0~PB7—B端口线。 (4)PC0~PC3—C端口低四位线。 (5)PC4~PC7—C端口高四位线。 (6)A1A0—地址线。 A1A0=00时,选择端口A。 A1A0=01时,选择端口B。 A1A0=10时,选择端口C。 A1A0=11时,选择控制寄存器; (7)RD —读控制线。RD=0时,CPU可以把端口A、B、C的数据读人。 (8)WR —写控制线。WR=0时,CPU可以把数据写入端口A、B、C或者控制寄存器中。 (9)CS—片选信号。CS=0时,该片被选中,允许工作。 • (10)RESET—复位输入信号。高电平有效。复位后,控制寄存器被清除,各端口被置成输入方式。
3.8255A与MCS—51单片机的连接 8255A与MCS—51单片机的连接很简单,如图9-13所示。 图9-13 8255A与MCS-51连接电路 (1) 8255A数据线D0~D7与MCS—51单片机P0.0~P0.7直接相连。 (2) 8255A RESET与MCS—51单片机RESET相接,MCS—51单片机复位时,8255A也同时复位。 (3) 8255A的WR、RD线与MCS—51单片机WR、RD相接。 (4) 8255A的片选线通常与MCS—51单片机的P2.7相接,决定8255A口地址。 (5) 8255A 的A1A0通常接74LS373的输出端Q1Q0,以决定8255A内部4个端口地址。
(6) 8255A的A口、B口、C口端线接外围设备,作为扩展的并行I/O口。 按图9-13 连接,8255A的A口、B口、C口地址(设无关位为1)分别为: A口—7FFCH B口—7FFDH C口—7FFEH 控制口—7FFFH 9.3.3 8255A的工作方式及数据I/O操作 1.方式0 基本的输入输出方式。在这种工作方式下,A、B、C三个端口都可由程序选定为输入输出的方式,但不能既作输入又作输出。端口C可以分成二部分,即高四位和低四位可分别设置传送方式,如高四位设置为输入,低四位设置为输出,也可都作输入或输出。但这种方式没有用于应答式的联络信号线。
基本功能为: (1)两个8位端口(A,B)和两个4位端口(C)。 (2)任一个端口可作输入或输出。 (3)输出是锁存的。 (4)输入是不锁存的。 方式0时,任一端口都可由简单的传送指令来读或写,用于无条件传送十分方便,这时不需要状态信息,三个端口都可作数据口。在MCS-51系统中,只须执行MOVX A,@DPTR和MOVX @DPTR,A类指令,便可完成输入输出操作。 若将方式0用作查询方式输入或输出接口电路,则A口和B口分别作数据端口用,而C口的某些位可传送这两个数据端口的控制和状态信息。
2.方式1 选通的输入输出方式。此时端口A、端口B由编程可分别设定为输入或输出口。而端口C传送联络信号。A口的动作可通过C口的高四位进行控制。B口的动作可通过C口的低四位进行控制。 主要功能为: (1)用—个或两个选通I/O端口。 (2)每一个端口包含8位数据线、3条控制线(是固定的,不能用编程改变)提供联络信号。 (3)任一端口都可作输入或输出口。 (4)若只有一个端口工作于方式1,余下13位可工作在方式0(C口5位)。 (5)若两个端口都工作于方式1,端口C还剩下二位可作为基本输入或输出方式。
1)方式1输入 图9-14 为8255A工作方式1输入时A口功能图。 在方式1输入情况下,控制信号定义如下: (Strobe input选通输入) 由外部输入,低电平有效。有效时,将外部输入的数据锁存到所选端口的输入锁存器中。对A组来说,指定端口C的第4位(PC4)。用来接收向端口A输入的A信号;对B组来说,指定端口C的第2位(PC2)用来接收向端口B输入的B信号。 图9-14 8255A工作方式1输入时A口功能
IBF(Input Buffer Full输入缓冲器满触发器) 向外部输出,高电平有效。IBF有效时,表示由输入设备输入的数据已占用该端口的输入锁存器,它实际上是对信号的回答信号,待CPU读取数据时,RD有效,将输入数据读入CPU,其上升沿置IBF为“0”,表示输入缓冲器已空,外设可继续输入后续数据。对A组来说,指定端口C的第5位(PC5)作为从端口A输出的IBFA信号;对B组来说,指定端口C的第l位(PC1)作为从端口B输出的IBFB信号。
INTR(Interrupt Request中断请求) 向CPU输出,高电平有效。在A组和B组控制电路中分别设置一个内部中断触发器INTEA和INTEB,前者由 A(PC4)控制置位,后者由 B(PC2)控制置位。当任一组中 的有效,则置IBF为“1”,表示当前输入缓冲器已满,并由后沿置“1”各组的INTE,于是,输出INTR有效,向CPU发出中断请求信号。待CPU响应这一中断请求,可在中断服务程序中安排读取数据后置IBF为“0”,外设才可继续输入后续数据。
图9-15 8255A工作方式1输出时B口 2)方式1输出 图9-15为8255A工作方式1输出时B口功能图。 在方式1输出情况下,控制信号定义如下: OBF(Output Buffer Full 输出缓冲器满触发器) 向外部输出,低电平有效。OBF有效时,表示CPU已将数据写入该端口正等待输出。当CPU写数据时,WR有效,表示将数据锁存到数据输出缓冲器,由WR的上升沿将OBF置为有效。对于A组,系统规定端口C的第7位(PC7)用作从端口A输出的OBFA信号;对于B组,规定端口C的第1位(PC1)用作从端口B输出的OBFB信号。
图9-15 8255A工作方式1输出时B口 ACK(Acknowledge外部应答信号) 由外部输入,低电平有效。ACK有效,表示外部设备己收到由8255A输出的8位数据,它实际上是对OBF信号的回答信号。对于A组,指定端口C的第6位(PC6)用来接收向端口A输入的ACKA信号;对于B组,指定端口C的第2位(PC2)用来接收向端口B输入的ACKB信号。
图9-15 8255A工作方式1输出时B口 INTR 中断请求信号。向CPU输出,高电平有效。对于端口A,内部中断触发器INTEA由PC6(ACKA)置位,对于端口B,INTEB由PC2(ACKB)置位。当ACK有效时,OBF被复位为高电平,并置“1”相应端口的INTR,于是INTR输出高电平,向CPU发出输出中断请求,待CPU响应该中断请求,可在中断服务程序中安排传送指令继续输出后续字节。对于A组,指定端口C的第3位(PC3)作为由端口A发出的INTRA信号;对于B组,指定端口C的第0位(PC0)作为由B口发出的INTRB信号。
图9-16 8255A工作于方式2时的功能 3.方式2 双向方式。只有端口A可编程为双向方式,通过C口的高5位进行控制,A口既可作输入也可作输出。PC0~PC2及PB口可工作于方式0。这种方式,使外设可在单一的8位总线上,既能发送,也能接收数据(双向总线I/O)。工作时可用程序查询方式,也可工作于中断方式。图9-16为8255A工作于方式2的功能图。主要功能: (1)方式2只用于端口A; (2)一个8位的双向总线端口(A)和一个5位控制端口(C); (3)输入和输出是锁存的: (4)5位控制线用作端口A的控制和状态信息。
INTR(中断请求) 高电平有效。在输入和输出方式时,都可用来作为向CPU的中断请求信号。对应C口PC3。 OBF(输出缓冲器满) 低电平有效。是对外设的一种命令信号,表示CPU已把数据输至端口A。对应C口的PC7。 ACK(响应信号) 低电平有效。ACK的有效沿启动端口A的三态输出缓冲器,送出数据;否则,输出缓冲器处在高阻状态。ACK的上升沿是数据已输出的回答信号。对应C口PC6。 INTEl(与输出缓冲器相关的中断屏蔽触发器) 由PC6的置位/复位控制。 STB(选通输入) 低电平有效。这是外设供给8255A的选通信号,它把输入数据选通至输入锁存器。对应C口PC4。 INTE2(与输入缓冲器相关的中断屏蔽触发器) 由PC4的置位/复位控制。 IBF(输入缓冲器满) 高电平有效。它是一个状态信号,指示数据已进入输入锁存器。在CPU未把数据读走前,IBF始终为高电平,阻止输入设备送来新的效据。对应C口PC5。
D7 D6 D5 D4 D3 D2 D1 D0 标志位 A口方式 A口I/O选择 C口高4位I/O B口方式 B口I/O选择 C口低4位I/O 9.3.4 8255A控制字及初始化编程 8255A在使用前,必须首先向控制字寄存器写入控制字,说明各口的工作方式,或对C口的各位进行置位或复位。 1.方式控制字 方式控制字的约定如表9-1: 表9-1 方式控制字 D7=1是方式控制字标志 D6、D5=00,A口工作于方式0;D6、D5=01,A口工作于方式1; D6、D5=10,A口工作于方式2; D4=0选择A口为输出,D4=1,选择A口为输入; D3=0选择C口的高4位为输出,D3=1为输入; D2=0选择B口工作于方式0,D2=1选择B口工作方式1; D1=0选择B口为输出,D1=选择B为输入; D0=0选择C口的低4位为输出,D0=1为输入。
设控制字寄存器地址为7FFFH,以下为初始化程序:设控制字寄存器地址为7FFFH,以下为初始化程序: MOV DPTR,#7FFFH MOV A,#95H ;控制字为10010101 MOVX @DPTR,A ;设控制字寄存器地址为7FFFH 则8255A的A口工作于方式0输入。B口工作于方式1输出,C口的高4位作为输出,低4位作为输入。 2.C口置位复位控制字 C口的置位复位控制字约定如表9-2,必要时可利用它对C口任一位进行置1或置0。
2.C口置位复位控制字 C口的置位复位控制字约定如表9-2,必要时可利用它对C口任一位进行置1或置0。 表9-2 C口置位复位控制字 其中D7=0是C口置位复位控制字的标志,D3、D2、D1是作为被操作位的选择字,例如要对PC2进行置位,D3、D2、D1的值应为010。D0是表示操作内容,置位操作D0=1,复位操作D0=0。例如要使PC7置1,初始化程序应为: MOV DPTR,#7FFFH;送控制口地址 MOV A,#0FH MOV @DPTR,A ;控制字为00001111
D7=0是C口置位复位控制字的标志, D3、D2、D1是作为被操作位的选择字,例如要对PC2进行置位,D3、D2、D1的值应为010。 D0是表示操作内容,置位操作D0=1,复位操作D0=0。例如要使PC7置1,初始化程序应为: MOV DPTR,#7FFFH;送控制口地址 MOV A,#0FH MOV @DPTR,A ;控制字为00001111
端口 工作方式 开中断应1的位 端口 工作方式 开中断应置1位 A口 方式1、输入 PC4 B口 方式1、输出 PC2 方式1、输出 PC6 A口 方式2、输入 PC4 B口 方式1、输入 PC2 方式2、输出 PC4 C口的置位复位控制字还可以实现以A、B口进行开放中断或禁止中断的操作;开中断时应对相应位置1。规定如表9-3。例如A口工作于方式1,输入方式,开中断时应将D3D2D1置100(PC4),置1操作应将D0置1,对应控制字应为09H。 表9-3 中断允许置1位
9.4 8155可编程并行接口芯片 9.4.1 8155基本结构及工作方式 8155芯片含有256个字节8位的RAM,两个8位、一个6位的可编程并行I/O口和一个14位定时计数器。是一种多功能接口芯片,与MCS-51单片机接口简单,因而是微机应用系统中广泛使用的芯片。 1.8155基本结构 图9-17 为8155结构组成框图。
256×8位的静态RAM。 (2)并行I/O接口部分 1)A口:8位可编程I/O口PA7~PA0。 2)B口:8位可编程I/O口PB7~PB0。 3)C口:6位可编程I/O口PC5~PC0。 4)命令寄存器:8位寄存器,只允许写入。 5)状态寄存器:8位寄存器,只允许读出。 (3)定时/计数器部分 具有l 4位的二进制减法定时/计数器。 8155采用40引脚双列直插式封装,单一+5V工作电源。 (1)RAM部分
8155的各引脚功能如下: RE5ET 复位输入信号,高电平有效。在RESET端出现约5μs脉宽的正脉冲时,8155被初始复位。复位后A口、B口和C口均置为输入方式,定时/计数器停止工作。 ALE 地址锁存允许信号。在ALE信号的下降沿把AD0~AD7上的8位地址信号、片选信号以及IO/(I/O端口/RAM)选择信号都锁存到8155的内部锁存器。 AD0~AD7双向三态地址/数据线,8位。地址可以是8155内部RAM单元地址或I/O口地址,AD0~AD7上的地址由ALE下降沿锁存到8l55内部地址锁存器。数据为输入或输出的信息,也就是由ALE信号来区别AD0~AD7上出现的是地址信息还是数据信息。 IO/ I/O端口和RAM选择信号。当IO/=1时,AD0~AD7的地址为8155 I/O口地址,选择I/O端口;当IO/=0时,AD0~AD7的地址为8155内部RAM单元地址,选择RAM存储单元。