第9章AT89s52单片机的MO扩展 91O接口扩展概述 91.1扩展的接口功能 9.1.2o端口的编址 91.3WO数据的传送方式 914WO接口电路 9.2AT89552扩展ⅣO接口芯片82c55的设计 92182c55芯片简介 9.22工作方式选择控制字及端口Pc置位复位控制字 92382c55的3种工作方式 9.24单片机扩展82c55的接口设计 9.25AT89s52扩展82c55的应用举例 9.3利用74 LSTTL电路扩展并行MO旦
2 第9章 AT89S52单片机的I/O扩展 9.1 I/O接口扩展概述 9.1.1 扩展的I/O接口功能 9.1.2 I/O端口的编址 9.1.3 I/O数据的传送方式 9.1.4 I/O接口电路 9.2 AT89S52扩展I/O接口芯片82C55的设计 9.2.1 82C55芯片简介 9.2.2 工作方式选择控制字及端口PC置位/复位控制字 9.2.3 82C55的3种工作方式 9.2.4 单片机扩展82C55的接口设计 9.2.5 AT89S52扩展82C55的应用举例 9.3 利用74LSTTL电路扩展并行I/O口
94用AT8952单片机的串行口扩展并行旦 94.1用74LS165扩展并行输入口 942用74LS164扩展并行输出口 9.5用Ⅳo口控制的声音报警接口 9.51蜂鸣音报警接口 9.52音乐报警接口
3 9.4 用AT89S52单片机的串行口扩展并行口 9.4.1 用74LS165扩展并行输入口 9.4.2 用74LS164扩展并行输出口 9.5 用I/O口控制的声音报警接口 9.5.1 蜂鸣音报警接口 9.5.2 音乐报警接口
【内容概要】 AT89S52本身有4个Ⅳo口P0~P3,但是真正用作VO口线 的只有P1口的8位Wo口线和P3口的某些位线。因此,在部分 应用系统设计中,AT89S52单片机都需要进行外部MO接口的 扩展。 本章介绍AT8952单片机与常用的可编程Ⅳo接口芯片 82c55的扩展接口设计。此外还介绍了使用廉价的74 LSTTL 芯片以及使用AT89S52串行口进行扩展并行Wo接口的设计。 本章最后介绍使用Mo口控制的声音报警接口设计
4 【内容概要】 AT89S52本身有4个I/O口P0~P3,但是真正用作I/O口线 的只有P1口的8位I/O口线和P3口的某些位线。因此,在部分 应用系统设计中,AT89S52单片机都需要进行外部I/O接口的 扩展。 本章介绍AT89S52单片机与常用的可编程I/O接口芯片 82C55的扩展接口设计。此外还介绍了使用廉价的74LSTTL 芯片以及使用AT89S52串行口进行扩展并行I/O接口的设计。 本章最后介绍使用I/O口控制的声音报警接口设计
9.1Wo接口扩展概述 扩展ⅣO接口与扩展存储器一样,都属于系统扩展的内容。 扩展的Mo接口应该具有哪些功能? 91.1扩展的O接口功能 扩展的o接口电路主要应满足以下功能要求。 1.实现和不同外设的速度匹配 大多数外设的速度很慢,无法和μs量级的单片机速度相比 单片机在与外设间进行数据传送时,只有在确认外设已为数据 传送做好准备的前提下才能进行数据传送。外设是否准备好, 就需要WO接口电路与外设之间传送状态信息,以实现单片机与 外设之间的速度匹配
5 9.1 I/O接口扩展概述 扩展I/O接口与扩展存储器一样,都属于系统扩展的内容。 扩展的I/O接口应该具有哪些功能? 9.1.1 扩展的I/O接口功能 扩展的I/O接口电路主要应满足以下功能要求。 1.实现和不同外设的速度匹配 大多数外设的速度很慢,无法和µs量级的单片机速度相比。 单片机在与外设间进行数据传送时,只有在确认外设已为数据 传送做好准备的前提下才能进行数据传送。外设是否准备好, 就需要I/O接口电路与外设之间传送状态信息,以实现单片机与 外设之间的速度匹配
2.输出数据锁存 与外设比,单片机的工作速度快,数据在数据总线上保留 的时间十分短暂,无法满足慢速外设的数据接收。所以在扩 展的Wo接口电路中应有输岀数据锁存器,以保证输出数据 能为慢速的接收设备所接收。 3.输入数据三态缓冲 数据总线上可能“挂”有多个数据源,为使传送数据时 不发生冲突,只允许当前时刻正在接收数据的o接口使用 数据总线,其余的ⅣO接口应处于隔离状态,为此要求Wo接 口电路能为数据输入提供三态缓冲功能
6 2.输出数据锁存 与外设比,单片机的工作速度快,数据在数据总线上保留 的时间十分短暂,无法满足慢速外设的数据接收。所以在扩 展的I/O接口电路中应有输出数据锁存器,以保证输出数据 能为慢速的接收设备所接收。 3.输入数据三态缓冲 数据总线上可能“挂”有多个数据源,为使传送数据时 不发生冲突,只允许当前时刻正在接收数据的I/O接口使用 数据总线,其余的I/O接口应处于隔离状态,为此要求I/O接 口电路能为数据输入提供三态缓冲功能
9.1.2Vo端口的编址 介绍o端口编址之前,首先要弄清楚o接口和MO端口的 概念。 JO接口是单片机与外设间的连接电路的总称。 JO端口(简称ⅣO口)是指Ⅳo接口电路中具有单元地址 的寄存器或缓冲器。一个O接口芯片可以有多个O端口, 如数据口,命令口,状态口。当然,并不是所有的外设都 定需要3种端口齐全的MO接口。 每个O接口中的端口都要有地址,以便AT89S52通过读 写端口来和外设交换信息。常用的o端口编址有两种方式, 独立编址方式与统一编址方式
7 9.1.2 I/O端口的编址 介绍I/O端口编址之前,首先要弄清楚I/O接口和I/O端口的 概念。 I/O接口是单片机与外设间的连接电路的总称。 I/O端口(简称I/O口)是指I/O接口电路中具有单元地址 的寄存器或缓冲器。一个I/O接口芯片可以有多个I/O端口, 如数据口,命令口,状态口。当然,并不是所有的外设都一 定需要3种端口齐全的I/O接口。 每个I/O接口中的端口都要有地址,以便AT89S52通过读 写端口来和外设交换信息。常用的I/O端口编址有两种方式, 独立编址方式与统一编址方式
1.独立编址 JO端口地址空间和存储器地址空间分开编址。优点是Ⅳo 地址空间和存储器地址空间相互独立,界限分明。但需要设 置一套专门的读写Ⅳo端口的指令和控制信号。 2.统一编址 把ⅣO端口与数据存储器单元同等对待。MO端囗和外部数 据存储器RAM统一编址。因此外部数据存储器空间也包括 JO端口在內。 优点是不需专门的o指令。缺点是需要把数据存储器单 元地址与vo端口的地址划分清楚,避免数据冲突
8 1.独立编址 I/O端口地址空间和存储器地址空间分开编址。优点是I/O 地址空间和存储器地址空间相互独立,界限分明。但需要设 置一套专门的读写I/O端口的指令和控制信号。 2.统一编址 把I/O端口与数据存储器单元同等对待。I/O端口和外部数 据存储器RAM统一编址。因此外部数据存储器空间也包括 I/O端口在内。 优点是不需专门的I/O指令。缺点是需要把数据存储器单 元地址与I/O端口的地址划分清楚,避免数据冲突
9.13Wo数据的传送方式 为了实现和不同外设的速度匹配,必须根据不同外设选择恰 当的o数据传送方式。MO数据传送方式有:同步传送、异步 传送和中断传送。 1.同步传送 同步传送又称无条件传送。当外设速度和单片机的速度相比 拟时,常采用同步传送方式,典型的同步传送是单片机和外部 数据存储器之间的数据传送。 2.查询传送 又称有条件传送(也称异步式传送)。通过查询外设“准备 好”后,再进行数据传送。优点是通用性好,硬件连线和查询 程序简单,但工作效率不高
9 9.1.3 I/O数据的传送方式 为了实现和不同外设的速度匹配,必须根据不同外设选择恰 当的I/O数据传送方式。I/O数据传送方式有:同步传送、异步 传送和中断传送。 1.同步传送 同步传送又称无条件传送。当外设速度和单片机的速度相比 拟时,常采用同步传送方式,典型的同步传送是单片机和外部 数据存储器之间的数据传送。 2.查询传送 又称有条件传送(也称异步式传送)。通过查询外设“准备 好”后,再进行数据传送。优点是通用性好,硬件连线和查询 程序简单,但工作效率不高
3.中断传送 为了提高单片机对外设的工作效率,通常采用中断传送方式, 即利用AT89S51单片机本身的中断功能和Mo接口的中断功能来 实现Ⅳo数据的传送。单片机只有在外设准备好后,才中断主程 序的执行,从而进入与外设数据传送的中断服务子程序,进行 数据传送。中断服务完成后又返回主程序断点处继续执行。因 此,采用中断方式可以大大提高单片机的工作效率。 9.14Mo接口电路 目前常用的外围ⅣO接口芯片有:
10 3.中断传送 为了提高单片机对外设的工作效率,通常采用中断传送方式, 即利用AT89S51单片机本身的中断功能和I/O接口的中断功能来 实现I/O数据的传送。单片机只有在外设准备好后,才中断主程 序的执行,从而进入与外设数据传送的中断服务子程序,进行 数据传送。中断服务完成后又返回主程序断点处继续执行。因 此,采用中断方式可以大大提高单片机的工作效率。 9.1.4 I/O接口电路 目前常用的外围I/O接口芯片有: 10
(1)82c55—可编程的通用并行接口电路(3个8位o口); (2)81c55一可编程的ORAM扩展接口电路(2个8位JO口, 1个6位o口,256个RAM字节单元,1个14位的减法计数器)。 它们都可以和AT89sS52单片机直接连接,且接口逻辑十分简 单。本章仅介绍AT89S52单片机扩展ⅣO接口芯片82c55的设计
11 (1)82C55—可编程的通用并行接口电路(3个8位I/O口); (2)81C55—可编程的IO/RAM扩展接口电路(2个8位I/O口, 1个6位I/O口,256个RAM字节单元,1个14位的减法计数器)。 它们都可以和AT89S52单片机直接连接,且接口逻辑十分简 单。本章仅介绍AT89S52单片机扩展I/O接口芯片82C55的设计