第9章AT89C51扩展IO接口设计课件.ppt
文本预览下载声明
;9.1.1 I/O接口的功能
I/O接口电路应满足以下要求:
1.实现和不同外设的速度匹配
大多数的外设的速度很慢,无法和μs量级的单片机速
度相比。
单片机只有在确认外设已为数据传送做好准备的前提
下才能进行I/O操作。
想知道外设是否准备好,需I/O接口电路与外设之间
传送状态信息。;2. 输出数据锁存
由于单片机工作速度快,数据在数据总线上保留的时间十分短
暂,无法满足慢速外设的数据接收。I/O电路应具有数据输
出锁存器,以保证接收设备接
收。
3. 输入数据三态缓冲
输入设备向单片机输入数据时,但数据总线上面可能“挂”有多
个数据源,为不发生冲突,只允许当前正在进行数据传送的
数据源使用数据总线,其余的应处于隔离状态。;9.1.2 I/O端口的编址
首先搞清楚I/O接口(Interface)和I/O端口(Port)的概念。
I/O端口:简称I/O口,指具有端口地址的寄存器或缓冲器。
I/O接口:是指单片机与外设间的I/O接口芯片。
一个I/O接口芯片可以有多个I/O端口,分为:
(1)数据口(2)命令口(3)状态口
I/O端口编址是给所有I/O接口中的寄存器编址。;I/O端口编址两种方式:独立编址与统一编址。
1.独立编址
I/O寄存器地址空间和存储器地址空间分开编址,但
需专门读写I/O的指令和控制信号。
2.统一编址
I/O寄存器与数据存储器单元同等对待,统一编址。
不需要专门的I/O指令,直接使用访问数据存储器
的指令进行I/O操作,简单、方便且功能强。
AT89C51使用统一编址的方式;每一接口芯片中的一个功能寄存器(端口)的地址,就相当于一个RAM单元。
9.1.3 I/O数据的几种传送方式
为实现和不同的外设的速度匹配,I/O接口必须根据不同外设选择恰当的I/O数据传送方式。
I/O数据传送的几种传送方式是:
(1)同步传送(2)查询传送(3)中断传送。;1.同步传送方式
当外设速度和单片机的速度相比拟时,常采用同步传送方
式,最典型的同步传送就是单片机和外部数据存储器之
间的数据传送。
2.查询传送方式
查询外设“准备好”后,再进行数据传送。
优点:通用性好,硬件连线和查询程序十分简单,
缺点:效率不高。
为提高效率,通常采用中断传送方式。;3.中断传送方式
外设准备好后,发中断请求,单片机进入与外设数据传送的
中断服务程序,进行数据的传送。
中断服务完成后又返回主程序继续执行。工作效率高。
如何实现I/O接口的扩展。Intel公司的配套可编程I/O接口
芯片的种类齐全,为扩展I/O接口提供了很大的方便。
9.1.4 I/O接口电路
常用的外围I/O接口芯片有:
(1)82C55:可编程的通用并行接口电路(3个8位I/O口);(2)81C55:可编程的IO/RAM扩展接口电路(2个8位I/O口,1个6位I/O口, 256个RAM字节单元,1个14位的减法定时器/计数器)。
可与89C51单片机直接连接,接口逻辑十分简单。
9.2 AT89C51与可编程并行I/O芯片82C55的接口设计
9.2.1 82C55芯片介绍
82C55是Intel公司生产的可编程并行I/O接口芯片,具有3个
8位的并行I/O口,3种工作方式,可通过编程改变其功
能,因而使用灵活方便,通用性强。
1.引脚说明
40只引脚,双列直插式封装,见图9-1。;;引脚功能:
D7~D0:三态双向数据线,与单片机数据总线连接
CS*:片选信号线,低电平有效,表示本芯片被选中
RD*:读出信号线,控制8255A中数据的读出高
WR*:写入信号线,控制向8255A数据的写入。
Vcc:+5V电源
PA7~PA0:A口输入/输出线。
PB7~PB0:B口输入/输出线
PC7~PC0:C口输入/输出线
A1、A0:地址线,用来选择82C55内部的4个端口。
RESET:复位引脚,高电平有效
;2.内部结构;(1)端口PA、PB、PC;(2)A组和B组控制电路;表9-1 82C55端口工作状态选择;9.2.2 工作方式选择控制字及C口置位/复位控制字;图9-3;C口上半部分(PC7~PC4)随A口称为A组,;2. C口按位置位/复位控制字;例9-2 控制字07H写入控制口,置“1” PC3;08H写入控制
口,清“0” PC4。;基本功能为:;2. 方式1;图9-5;STB*:选通输入,是由输入外设送来的输入信号。
IBF:输入缓冲器满,高电平有效。表示数据已送入
8255A的输入锁存器,它由STB*信号的下降沿置
位,由信号的上升沿使其复位;图9-6;(2)方式1输出;图9-7;B口
显示全部