文档库 最新最全的文档下载
当前位置:文档库 › IO接口的扩展

IO接口的扩展

IO接口的扩展
IO接口的扩展

6.4 I/O接口的扩展

MCS-51系列单片机共有四个8位并行I/O口。由于国内普遍采用内部无ROM型单片机,因而P0口和P2口主要用于地址和数据总线,P3口大部分用作第二变异功能(控制信号),真正提供给用户使用的只有P1口及P2口和P3口的某些位。所以,在许多场合就感到满足不了要求。而单片机在结构上为外部扩展并行I/O口提供了方便。实际应用中,I/O口扩展总是为了实现某一测控及管理功能而进行的,如联结键盘、显示器、驱动开关控制、开关量监测等。

按MCS-51的结构,扩展的I/O口采取与外部RAM统一编址,即两者合用64K地址空间。因此,CPU可以像访问外部RAM那样访问外部I/O口,对I/O口进行输入/输出操作。

I/O口扩展用芯片主要有通用可编程I/O芯片和TTL、CMOS锁存器、缓冲器电路芯片两大类。

通用可编程I/O扩展芯片有Intel公司的8155,8255,8243,8279等。

I/O口扩展用74LSTTL芯片有:74LS373,377,244,273,367等。

另外还可以利用MCS-51单片机的串行口来扩展较多数量的并行输入或输出口。这种扩展方法所用的移位寄存器芯片有扩展输出口的74LS164和扩展输入口的74LS165。

实际应用中,要根据芯片的特点及输入、输出量的特征选择芯片。

一、简单的I/O接口扩展

在单片机应用系统中,经常采用TTL电路或CMOS电路锁存器、三态门电路作为I/O 口扩展芯片。这种I/O口一般都是通过P0口扩展,不占用单片机的I/O口资源,只需一根地址线作片选线用。这种方法具有电路简单、成本低、配置灵活方便等特点。

图6-14是采用74LS244作扩展输入,74LS273作扩展输出的简单I/O接口扩展电路。

图6-14 简单I/O接口扩展电路

图中P0口为双向数据总线,既能从74LS244输入数据,又能将数据送给74LS273输出。输入控制信号由P2.7和RD相或而成,当二者同时输出为0电平时,或门输出为0,选通74LS244,使外部信息进入到总线。无按键按下时,输入为全1,当有一键按下,则该键所在线输入为0。

输出控制信号由P2.7和WR相或而成,当二者同时为0电平时,或门输出为0,将P0口的数据锁存到74LS273,其输出控制着发光二极管LED。当某线输出0电平时,该线上的发光二极管点亮。

可见,输入和输出都是在P2.7为低电平时有效,所以74LS244和74LS273的口地址均为7FFFH(实际上只要保证P2.7=0即可,与其他地址位无关),即占有相同的地址空间,但由于分别受RD和WR信号控制,因此不会发生冲突。

对于图6-14,若要实现的功能是按下任意键,对应的LED发光,则程序段如下:

LOOP:MOV DPTR,#7FFFH

MOVX A,@DPTR ;读按键

MOVX @DPTR,A ;送显示

SJMP LOOP

二、可编程并行I/O接口芯片的扩展

可编程接口芯片是指其工作方式可由与之对应的软件命令来加以改变的接口芯片。这类芯片一般具有多种功能,使用灵活方便,使用前必须由CPU对其编程设定工作方式,然后按设定的方式进行操作。

目前,有多种可编程接口芯片在实际应用中可供选用,在此仅介绍最常用的两种接口芯片:8155可编程并行I/O接口和8255可编程并行I/O接口以及它们与单片机的连接方法。

(一)8155可编程并行I/O接口的扩展

8155可编程并行I/O接口具有功能强,价格便宜,且具有与MCS-51单片机配置简单、方便等优点。是单片机应用系统最常用的外部功能扩展器件之一。

1、8155的引脚及内部结构

8155芯片为40引脚双列直插封装,单一的+5V电源,其引脚及内部结构见图6-15所示。

图6-15 8155引脚及内部结构

该芯片能为系统提供的硬件资源包括:256字节的静态RAM,2个8位可编程I/O口

(A口和B口),一个6位可编程I/O口(C口)及一个14位的可编程减法定时/计数器。

相关文档