180 likes | 355 Views
第九章 MCS-51 单片机并行 I/O 接口的扩展. 第一节 I/O 接口的扩展 第二节 8255A 可编程 I/O 接口设计 及扩展技术 第三节 8155 可编程接口及扩展技术 第四节 串行口扩展 I/O 接口. 单片机的并行 I/O 接口用于并行传送数据,例如:打印机、键盘、 A/D 、 D/A 等器件都可以通过并行 I/O 与 CPU 进行接口。
E N D
第九章 MCS-51单片机并行I/O接口的扩展 第一节 I/O接口的扩展 第二节 8255A可编程I/O接口设计 及扩展技术 第三节 8155可编程接口及扩展技术 第四节 串行口扩展I/O接口
单片机的并行I/O接口用于并行传送数据,例如:打印机、键盘、A/D、D/A等器件都可以通过并行I/O与CPU进行接口。单片机的并行I/O接口用于并行传送数据,例如:打印机、键盘、A/D、D/A等器件都可以通过并行I/O与CPU进行接口。 常用的MCS-52系列单片机都具有四个8位I/O口,以典型的8031为例它具有P0、P1、P2、P3四个并行口,这四个并行口都可以作为双向并行口使用。但是在实际应用中如果要进行外部设备的扩展,则要将P0和P2作为扩展的数据总线和地址总线使用,同时P3口的某些位要做第二功能使用,因此这种情况下如果需要更多的I/O口就需要扩展并行口。 MCS-52系列单片机常用的扩展器件有如下三类: 常规逻辑电路、锁存器,如74LS377、74LS245。 MCS-80/85并行接口电路,如8255。 RAM/IO综合扩展器件,如8155。
第一节 I/O接口的扩展 • 当所需扩展的外部I/O口数量不多时,可以使用常规的逻辑电路、锁存器进行扩展。这一类的外围芯片一般价格较低而且种类较多,常用的如:74LS377、74LS245、74LS373、74LS244、74LS273、74LS577、74LS573。
如果将未使用到的地址线都置为1则可以得到该片74LS377的地址为7FFFH。如果单片机要从该片74LS377输出数据的可以执行如下指令:如果将未使用到的地址线都置为1则可以得到该片74LS377的地址为7FFFH。如果单片机要从该片74LS377输出数据的可以执行如下指令: MOV DPTR,#7FFFFH MOVX @DPTR,A
利用TTL芯片、COMS锁存器、三态门等接口芯片把P0接利用TTL芯片、COMS锁存器、三态门等接口芯片把P0接 口扩展,常选用74LS273、74LS373、74LS244等芯片。
第二节 8255可编程I/O接口设计及其扩展技术 (1)8255内部结构及引脚功能
(2)、接口线 PA0~PA7、PB0~PB7、PC0~PC7共24条端线。3个口皆为锁存/缓冲寄存器,A口、B口有锁存功能,C口无锁存功能。A、B、C 3口的工作方式由程序设置。 (3)、数据线 8255是8位芯片,有8位数据线D0~D7。 数据线接于8051的P0接口,
(3).控制线 • 控制线控制8255的读RD:、写WR、复位RESET及片选CS等。 (4).地址线 • A1 A0 选择口 • 0 0 A口 • 0 1 B口 • 1 0 C口 • 1 1 控制口
3、方式选择及方式控制字 (1)8255工作方式 :方式0、方式1,方式2 (2).方式选择
4、8255扩展电路及地址设置 (1)8255地址口确定
(2) 8255初始化 对8255的3个端口的工作方式预先设置。设置控制字经控制口写入。 例如,欲设置8255的A、B、C口全为输出状态(或输出方 式),控制字为80H。 程序(结合上图)如下: MOV DPTR, #0003H ;8255控制口地址 DPTR MOV A, #80H ;控制字送A MOVX @DPTR, A ;控制字写入控制寄存器
第三节 8155可编程I/O接口扩展设计 1、I/O接口线地址数据线控制线
2、8155功能及操作 (1)8155具有3种功能: 扩展RAM、I/O接口使用、定时器使用 (2)状态寄存器格式
(3)定时器使用 可编程定时/计数器两个8位寄存器组成,低8位和高6位存放计数初值,最高2位控制定时器的工作方式
第四节 串行口扩展I/O接口 • 1、使用移位寄存器作为锁存或输入信号的接口,可以方便地扩展并行输入、输出口。这种方法不占用片外RAM地址 • 2、串行口扩展并行输入口