首页 理论教育 单片机应用技术-扩展可编程I/O接口

单片机应用技术-扩展可编程I/O接口

时间:2023-10-17 理论教育 版权反馈
【摘要】:表8.58155的I/O接口地址分配表8155 I/O接口的工作方式是由内部的命令寄存器控制的。图8.118155选通方式的组态6.采用8155扩展并行I/O接口8155与MCS-51的连接同样遵循三总线相连的原则。图8.12所示为用线选连接法扩展的8155芯片。8031的P2.7接8155的信号,P2.0接8155的选择线,这

单片机应用技术-扩展可编程I/O接口

扩展并行I/O接口另一种常用方法是采用I/O接口芯片来实现扩展,I/O接口芯片的种类很多,下面介绍常用的Intel公司研制的可编程多功能并行I/O接口芯片8155。

1.8155的内部结构和引脚功能

8155的内部结构如图8.9所示,内部有A、B、C3个I/O接口、256个字节的RAM和1个14位定时/计数器。其中A口和B口为8位I/O接口,C口为6位I/O接口。8155是40引脚的双列直插式芯片,采用+5V电源,内部带有地址锁存器,因此可以和P0口直接相连。

8155的引脚如图8.10所示,引脚功能如下:

图8.9 8155的内部结构

图8.10 8155的引脚排列

AD0~AD7(8条):三态的地址/数据总线。与单片机的低8位地址/数据总线(P0口)相连。单片机与8155之间的地址、数据、命令与状态信息都是通过这个总线口传送的。

控制总线(8条)::片选信号线,低电平有效。:8155的RAM存储器或I/O口选择线。当时,则选择8155的片内RAM,AD0~AD7上地址为8155中RAM单元的地址(00H~FFH);当时,选择8155的I/O口,AD0~AD7上的地址为8155 I/O口的地址。ALE:地址锁存允许信号,用来锁存AD0~AD7上出现的地址信号。:读选通信号,控制对8155的读操作,低电平有效。:写选通信号,控制对8155的写操作,低电平有效。ALE、和RESET4个引脚在使用时,只需和MCS-51芯片的同名信号直接相连即可。T/IN:定时/计数器脉冲输入端。:定时/计数器输出端。

I/O总线(22条):PA0~PA7为通用I/O线,用于传送A口上的外设数据。PB0~PB7为通用I/O线,用于传送B口上的外设数据。PC0~PC5:有两个作用,既可作为通用的I/O口,也可作为PA口和PB口的控制信号线,这些可通过程序控制。

电源线(2条):VCC:+5V电源输入线,GND为接地线

2.8155的命令/状态寄存器及I/O接口的工作方式

8155内部归属于I/O的有7个寄存器,分别是命令、状态寄存器、A口寄存器、B口寄存器、C口寄存器、计数器低8位寄存器和计数器高8位寄存器。当时,8155的AD0~AD7输入的是I/O的地址,I/O接口的地址分配如表8.5所示。

表8.5 8155的I/O接口地址分配表

8155 I/O接口的工作方式是由内部的命令寄存器控制的。8155的命令寄存器各位的定义如下:

PA:A口数据传送方向设置位。0:输入;1:输出

PB:B口数据传送方向设置位。0:输入;1:输出

PC1、PC2:C口工作方式设置位,如表8.5所示。

表8.6 C口工作方式

IEA:A口的中断允许设置位。0:禁止;1:允许。

IEB:B口的中断允许设置位。0:禁止;1:允许。

TM2、TM1:计数器工作方式设置位,如表8.7所示

表8.7 定时/计数器命令字

8155的状态寄存器由8位锁存器组成,其最高位为任意值。通过读C/S寄存器的操作(即用输入指令),读出的是状态寄存器的内容。8155的状态字格式为:

INTRX:中断请求标志。此处x表示A或B。INTRX=1,表示A或B口有中断请求;INTRX=0,表示A或B口无中断请求。(www.xing528.com)

BFX:口缓冲器空/满标志。BFX=1,表示口缓冲器已装满数据,可由外设或单片机取走;BFX=0,表示口缓冲器为空,可以接受外设或单片机发送数据。

INTEX:口中断允许/禁止标志。INTEX=1,表示允许口中断;INTEX=0,表示禁止口中断。

以上的6个状态中,表明A和B口处于选通工作方式时才具有的工作状态。

TIMER:计数器计满标志。TIMER=1,表示计数器的原计数初值已计满回零;TIMER=0,表示计数器尚未计满。

3.8155内部的RAM

8155内部集成了256个单元的静态RAM,当时,8155的AD0~AD7输入的是RAM的地址;当的AD0~AD7输入的是I/O的地址。在时和IO/时,CPU可以对任意一个RAM单元进行读/写,读/写控制信号分别是

4.8155内部定时/计数器

8155的计数器是一个14位的减法计数器,它能对输入的脉冲进行计数,在到达最后一个计数值时,输出一个矩形波或脉冲。

要对计数的过程进行控制,必须首先装入计数长度。由于计数长度为14位,而每次装入的长度只能是8位,故必须分两次装入。装入计数长度寄存器的值为2H~3FFFH。15、14两位用于规定计数器的输出方式。计数器寄存器的格式为:

最高两位(M2、M1)定义计数器输出方式,如表8.8所示。

表8.8 计数器输出方式

需要指出的是,硬件复位信号RESET的到达,会使计数器停止工作,直至由C/S寄存器再发出启动计数器命令。

5.选通I/O的组态

对8155命令字的PC2、PC1位编程,使A口或B口工作在选通方式时,C口的PC0~PC5就被定义为A口或B口选通I/O方式的应答和控制线。功能如表8.9所示。

表8.9 C口的控制分配表

选通方式的组态逻辑如图8.11所示。

图8.11 8155选通方式的组态

6.采用8155扩展并行I/O接口

8155与MCS-51的连接同样遵循三总线相连的原则。由于8155内部有地址锁存器,所以单片机的P0.0-P0.7可以直接与8155的AD0-AD7连接,其余的各输入控制线都与单片机的同名输出控制线相连即可。根据的接法,8155的连接方式可分为译码法和线选法,这与前面介绍的存储器的扩展方法基本相同。

时,CPU可以操作8155内部集成的RAM单元,与操作普通的静态RAM完全一样,单元地址由AD0-AD7选择,为读写控制信号。在1时,8155的I/O单元被选中,I/O单元在使用前需要先设置工作方式,即进行I/O的初始化,通过命令寄存器的内容设置使A口、B口和C口按照所要求的方式工作。

下面介绍采用线选法扩展并行I/O接口。在单片机应用系统中,可以使用一些高位地址线直接与8155的连接,这就是8155的线选连接法。图8.12所示为用线选连接法扩展的8155芯片。8031的P2.7接8155的信号,P2.0接8155的选择线,这样扩展的8155的内部RAM地址和I/O单元的地址分析如下:

8155内部的RAM的基本地址为0000-00FFH,命令寄存器的基本地址为0100H,A口的基本地址为0101H,B口的基本地址为0102H,C口的基本地址为0103H。计数器低8位寄存器的基本地址为0104H,高8位基本地址为0105H。

图8.12 用线选连接法扩展的8155芯片

在需要同时扩展RAM和I/O口及计数器的应用系统中选用8155是比较经济的。8155的SRAM可以作为数据缓冲器,8155的I/O口可以外接打印机、A/D、D/A、键盘等控制信号的输入输出。8155的定时器可以作为分频器或定时器。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈