第七章可编程接口芯片可编程接口概术可编程接口概术可编程并行输入/输出接口芯片可编程并行输入/输出接口芯片8255A8255A可编程定时/计数器接口芯片可编程定时/计数器接口芯片82538253可编程接口概术可编程接口概术一个简单的具有输入功能和输出功能的一个简单的具有输入功能和输出功能的可编程接口可编程接口电路如下图,它包括一个输入接口电路如下图,它包括一个输入接口,其组成主要是八位的三态门;一个输出接口,其组成主要是八位的三态门;一个输出接口,其组成主要是八位的锁存器;另外还有八位,其组成主要是八位的锁存器;另外还有八位的多路转换开关及控制这个开关的寄存器的多路转换开关及控制这个开关的寄存器FFFF。。输入接口输出接口寄存器FF多路转换开关I/O线数据总线8888控制信息方式控制字命令寄存器数据端口控制端口用户对寄存器用户对寄存器FFFF写入的内容称为命写入的内容称为命令字或令字或方式控制字方式控制字,而寄存器,而寄存器FFFF称为称为命命令寄存器令寄存器,相应的端口称为,相应的端口称为命令端口或命令端口或控制端口,控制端口,对可编程芯片对可编程芯片初始化初始化过程实过程实际上就是对芯片的控制端口写入各种命际上就是对芯片的控制端口写入各种命令字的操作过程。令字的操作过程。目前常用的可编程芯片有如下几种:目前常用的可编程芯片有如下几种:8255A8255A并行并行I/OI/O接口接口82538253计数器计数器//定时器定时器82518251串行串行I/OI/O8259A8259A中断控制器中断控制器7.1可编程并行输入/输出接口芯片8255A一、功能一、功能8255A8255A是一种通用的可编程并行是一种通用的可编程并行II//OO接接口芯片,广泛用于几乎所有系列的微型机系统口芯片,广泛用于几乎所有系列的微型机系统中,如中,如80868086、、MCS51MCS51、、Z80CPUZ80CPU系统系统等。等。8255A8255A具有具有33个带锁存或缓冲的数据端口个带锁存或缓冲的数据端口,可与外设并行进行数据交换。用户可用程序,可与外设并行进行数据交换。用户可用程序来选择多种操作方式,通用性强。使用灵活,来选择多种操作方式,通用性强。使用灵活,可为可为CPUCPU与外设之间提供并行输入/输出通与外设之间提供并行输入/输出通道。道。二、8255A的内部结构A口B口C口二、8255A的内部结构并行输入/输出端口A组和B组控制数据总线缓冲器读/写控制电路三、8255A的管脚分配11、与外设连接的管脚、与外设连接的管脚我们已经知道我们已经知道8255A8255A有三个数据端口,每个有三个数据端口,每个端口是端口是88位的,由此可推算与外设相连接的管脚位的,由此可推算与外设相连接的管脚共有共有2424位。其中位。其中AA口有口有PAPA77——PAPA00八个八个I/OI/O引脚引脚,,BB口有口有PBPB77——PBPB00八个八个I/OI/O引脚,引脚,CC口有口有PCPC77——PCPC00八个八个I/OI/O引脚。特别地对于引脚。特别地对于PCPC77——PCPC00,其中,其中可有若干根复用线可用于“联络”信号或状态信可有若干根复用线可用于“联络”信号或状态信号,其具体定义与端口的工作方式有关。号,其具体定义与端口的工作方式有关。PA0…PA7PB0…PB7PC0…PC722、与、与CPUCPU连接的管脚连接的管脚包括数据线包括数据线DD77—D—D00,读写控制线和,,读写控制线和,复位线复位线RESETRESET,以及和,以及和CPUCPU地址线相连地址线相连接的片选信号、端口地址控制线接的片选信号、端口地址控制线AA00和和AA11。。D0…D7A0A1/CS/WR/RDRESET33、电源线和地线、电源线和地线8255A8255A的电源引脚为的电源引脚为VVCCCC和和GNDGND。。VVCCCC为电为电源线,一般取+源线,一般取+5V5V。。GNDGND为电源地线为电源地线。。四、8255与8086CPU的接口连接方法连接方法同同RAMRAM相似,取相似,取M/IO=0M/IO=0举例举例设计设计88位位I/OI/O接口,使接口,使82558255地址为地址为0300H0300H举例举例设计设计1616位位I/OI/O接口,使接口,使82558255地址为地址为0300H0300H五、8255A的工作方式及编程11、、8255A8255A的工作方式的工作方式8255A8255A有三种工作方式,它们是:有三种工作方式,它们...