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

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

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

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

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

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

高等职业教育计算机类课程规划教材第9章MCS-51单片机的I/O扩展9.1.1扩展概述1.单片机I/O口扩展方法(1)总线扩展方法采用总线扩展的方法是将扩展的并行I/O口芯片连接到MCS-51单片机的总线上即数据总线使用P0口地址总线使用P2和P0口控制总线使用部分P3口。这种扩展方法不影响总线上其他扩展芯片的连接在MCS-51单片机应用系统的I/O扩展中被广泛采用。(2)串行口扩展方法MCS-51单片机串行口工作在方式0时提供一种I/O扩展方法。串行口方式0是移位寄存器工作方式可借助外接串入并出的移位寄存器扩展并行输出口也可通过外接并入串出的移位寄存器扩展并行输入口。这种扩展方法不占用并行总线且可以扩展多个并行I/O。由于采用串行输入输出的方法故数据传输速度较慢。2.I/O扩展常用芯片(1)TTL/CMOS锁存器/缓冲器芯片:如74LS377、74LS374、74LS373、74LS273、74LS244、74LS245等;(2)通用可编程I/O接口芯片:如8255、8155、8729等;(3)可编程阵列:如GAL16V8、GAL20V8等。3.I/O扩展中应注意的几个问题(1)访问扩展I/O的方法与访问外部数据存储器完全相同使用相同的指令。(2)扩展多片I/O芯片或多个I/O设备时注意总线的驱动能力问题;(3)扩展I/O口的目的是为了单片机与外部设备进行信息交换而设置的一个输入输出通道I/O口最终与外设相连。(4)在软件设计时I/O口对应初始状态设置、工作方式选择要与外接设备相匹配。9.1.2扩展简单并行接口1.扩展并行输出口(1)用74LS377扩展并行输出口74LS377是带有输出允许端的8D锁存器有8个输入端口、8个输出端口、1个时钟输入端CLK(上升沿有效)和1个允许控制端OE其功能见表9-1。(见教材P190页)如图9-1所示OE与P2.7相连74LS377的地址为7FFFH;若与P2.0相连则地址相应为0EFFH。【例9.1】若以图9-1为接口电路将片内RAM地址为50H单元的数据通过该电路输出。程序清单如下:MOVDPTR#7FFFH;数据指针指向74LS377MOVA50H;输出的50H单元数据送累加器AMOVX@DPTRA;P0口将数据通过74LS377输出(2)用74LS374扩展并行输出口74LS374是具有三态输出的8D边沿触发器其功能与74LS377相似见表9-2。(见教材P190页)74LS374与单片机接口电路如图9-2所示74LS374的地址为7FFFH。74LS374具有较强的驱动能力输出低电平电流IOL最大可达24mA是74LS377的3倍。在有较强驱动能力要求场合可选用74LS374作为并行口扩展器件。2.扩展并行输入口并行输入扩展口比较简单只需采用8位缓冲器即可。常用的缓冲器有74LS244其功能见表9-3。(见教材P191页)74LS244为单向总线缓冲器只能一个方向传输数据。并行输入接口与单片机连接如图9-3所示。【例9.2】如图9-3所示扩展并行输入口将输入口中的8位数据送片内51H单元。程序清单如下:MOVDPTR#7FFFH;数据指针指向74LS244MOVXA@DPTR;外部数据经过74LS244送入累加器AMOV51HA;数据送51H单元保存将上述输入输出电路合并即如图9-4所示。在图9-4的输入输出接口电路中输入采用三态门74HC244输出采用8D触发器(锁存器)74HC374。P0口为双向数据线既能从74HC244输入数据又能将数据通过74HC374输出。输出控制信号由P2.0和WR合成当两者同时为低电平时或门输出0将P0口数据锁存到74HC374其输出控制着发光二极管LED。当某线输出为0时该线上的LED发光。输入控制信号由P2.0和RD合成当二者同时为低电平时或门输出为0选通74HC244将外部信息输入到总线。与74HC244相连的按键开关没有按下时输入全为1;若按下某键则所在的线输入为0。可见输入输出都是在P2.0为0时有效因此它们的口地址为0FEFFH即占用相同的地址空间。但是由于分别用