预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共28页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

单片机系统I/O扩展并行I/O口扩展P3口具有第二功能,在应用系统中也常被使用。因此在大多数的应用系统中,真正能够提供给用户使用的只有P1和部分P2、P3口。综上所述,89C51单片机的I/O端口通常需要扩充,以便和更多的外设(例如显示器、键盘)进行联系。在51单片机中扩展的I/O口采用与片外数据存储器相同的寻址方法,所有扩展的I/O口,以及通过扩展I/O口连接的外设都与片外RAM统一编址,因此,对片外I/O口的输入/输出指令就是访问片外RAM的指令,即:4.1.2简单的I/O口扩展简单的I/O口扩展通常是采用TTL或CMOS电路锁存器、三态门等作为扩展芯片,通过P0口来实现扩展的一种方案。它具有电路简单、成本低、配置灵活的特点。1.扩展实例采用74LS244作为扩展输入、74LS273作为扩展输出的简单I/O口扩展。64.1.3采用8155扩展I/O口在实训电路中采用的是另一种可编程的接口芯片8155,Intel公司研制的8155不仅具有两个8位的I/O端口(A口、B口)和一个6位的I/O端口(C口),而且还可以提供256 B的静态RAM存储器和一个14位的定时/计数器。8155和单片机的接口非常简单,目前被广泛应用。1. 8155的结构和引脚8155有40个引脚,采用双列直插封装,其引脚图和组成框图如图8.20所示。图8155的引脚图和结构框图我们对8155的引脚分类说明如下:(1)地址/数据线AD0~AD7(8条):是低8位地址线和数据线的共用输入总线,常和51单片机的P0口相连,用于分时传送地址数据信息,当ALE=1时,传送的是地址。(2)I/O口总线(22条):PA0~PA7、PB0~PB7分别为A、B口线,用于和外设之间传递数据;PC0~PC5为C端口线,既可与外设传送数据,也可以作为A、B口的控制联络线。(3)控制总线(8条):RESET:复位线,通常与单片机的复位端相连,复位后,8155的3个端口都为输入方式。:读/写线,控制8155的读、写操作。ALE:地址锁存线,高电平有效。它常和单片机的ALE端相连,在ALE的下降沿将单片机P0口输出的低8位地址信息锁存到8155内部的地址锁存器中。因此,单片机的P0口和8155连接时,无需外接锁存器。:片选线,低电平有效。:RAM或I/O口的选择线。当=0时,选中8155的256BRAM;当=1时,选中8155片内3个I/O端口以及命令/状态寄存器和定时/计数器。TIMERIN、:定时/计数器的脉冲输入、输出线。TIMERIN输入脉冲对8155内部的14位定时/计数器减1;为输出线,当计数器计满回0时,8155从该线输出脉冲或方波,波形形状由计数器的工作方式决定。2.作片外RAM使用当=0,=0时,8155只能做片外RAM使用,共256B。其寻址范围由以及AD0~AD7的接法决定,这和前面讲到的片外RAM扩展时讨论的完全相同。当系统同时扩展片外RAM芯片时,要注意二者的统一编址。对这256BRAM的操作使用片外RAM的读/写指令“MOVX”。3.作扩展I/O口使用当=0,=1时,此时可以对8155片内3个I/O端口以及命令/状态寄存器和定时/计数器进行操作。与I/O端口和计数器使用有关的内部寄存器共有6个,需要三位地址来区分,为地址分配情况。1)命令/状态寄存器和接口芯片8255一样,芯片8155I/O口的工作方式的确定也是通过对8155的命令寄存器写入控制字来实现的。8155控制字的格式如图所示。命令寄存器只能写入不能读出,也就是说,控制字只能通过指令MOVX@DPTR,A或MOVX@Ri,A写入命令寄存器。在本书的实训电路板中,扩展了8155,用于连接8个LED显示和键盘,A、B口为基本输出方式,C口为基本输入方式,因此编写如下程序:MOVDPTR,#CWR;设CWR为命令寄存器的地址MOVA,#03H;A、B口为基本输出方式,C口为基本输入方式MOVX@DPTR,A状态寄存器中存放有状态字,状态字反映了8155的工作情况,状态字的各位定义如图所示图8.228155的状态字状态寄存器和命令寄存器是同一地址,状态寄存器只能读出不能写入,也就是说,状态字只能通过指令MOVXA,@DPTR或MOVXA,@Ri来读出,以此来了解8155的工作状态。2)计数器高、低8位寄存器关于计数器高、低8位寄存器的使用,我们将在后面讲到定时器使用时再作介绍。4. I/O口的工作方式当使用8155的三个I/O端口时,它们可以工作于不同的方式,工作方式的选择取决于写入的控制字,如图8.21所示。其中,A、B口可以工作于基本I/O方式或选通I/O方式,C口可工作于基本I/O方式,也可以作为A、B选通方式时的控制联络线。方式1、2时,A、B、C口都工作于基本I/O方式,可以直接和外设相连,采用“