第七章 MCS-51并行口的扩展 MCS51单片机内部有4个并行口,当内部并行口不够用时可以外扩并行口芯片。可外扩的并行口芯片很多,分成2类:不可编程的并行口芯片(74LS3734和74LS245)和可编程的并行口芯片(8255)。 7.1 不可编程并行口芯片的扩展 7.2 可编程并行口芯片的扩展.

Slides:



Advertisements
Similar presentations
第十二章 小组评估 本章重点问题: 评估的设计 测量工具的选择和资料的收集 与分析.
Advertisements

第7章 AT89S51单片机的 串行口 1.
合 同 法 主讲人: 教材:《合同法学》(崔建远) 2017/3/10.
成才之路 · 语文 人教版 • 中国古代诗歌散文欣赏 路漫漫其修远兮 吾将上下而求索.
8051 指令.
第五章 总线 及其形成 本节课之前,大家学习了:
第七章 单片机存储器的扩展.
汇编语言与接口技术 教师:范新民.
得技通电子 问题 1 右何者非為假指令 (1) XRL (2) EQU (3) MACRO (4) ORG.
第7章 常用数字接口电路.
单片机原理与应用.
9.1 可编程并行输入/输出接口芯片8255A 9.2 可编程计数器/定时器 可编程串行输入/输出接口芯片8251A
第8章 AT89S52单片机外部 存储器的扩展 1.
第7章 并行接口 7.1 简单并行接口 7.2 可编程并行接口8255A 7.3 键盘接口 7.4 LED显示器接口.
第2章 MCS-51单片机指令系统与汇编语言程序设计
第九章 计数器和定时器电路 第一节 概述 第二节 Intel 8253的控制字 第三节 Intel 8253的工作方式 第九章 计数器和定时器电路 第一节 概述 第二节 Intel 8253的控制字 第三节 Intel 8253的工作方式 第四节 Intel 8253在IBM PC机上的应用.
報告者:朱耿育 紀翔舜 組員:詹以群 張永傑 指導老師:梁新潁
复 习 一. 计算机中的数和编码 1. 2,10,16进制数及其之间的转换(整数) 按权展开,除x取余 2
单片机应用技术 项目一 循环彩灯装置 第6讲 指令功能及汇编语言程序设计(一) 《单片机应用技术》精品课程组 湖北职业技术学院机电工程系.
第8章 模拟接口 8.1 模拟接口概述 8.2 DAC及其接口 8.3 ADC及其接口.
第二部分 微机原理 第3章 MCS-51的 指令系统 主讲教师:喻红.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年12月10日.
输入输出与中断 主要内容 CPU与外设之间数据传送方式 中断技术 8086中断系统和中断处理.
微型机系统与接口技术复习.
第七章 MCS-51系统扩展 一、程序存储器扩展
单片机原理及应用 MCS-51系列单片机的基本硬件结构 MCS-51指令系统 MCS-51单片机的系统扩展与应用.
第5章 智能汽车设计基础—微控制器.
4.A/D与D/A转换器 1).DAC0832与MCS-51接口
第2章 单片机的结构原理与 简单应用 (课时:10学时).
第八章 MCS-51与数码显示器和键盘的接口 一、MCS-51与数码显示器接口 数码显示器是单片机应用产品中最常用的廉价的输 出设备,它由8个发光二极管按一定规律排列而成, 当某一发光二极管导通时,则会被点亮,控制不同 组合的二极管导通,就能显示出各种字符。 1.显示器的结构.
本 章 重 点 单片机的简单I/O扩展 8255A可编程并口芯片 8279可编程键盘/显示器接口芯片 单片机键盘接口技术
单片机原理 单 片 机 单片机接口技术 单片机应用技术.
第三章 指令系统.
第7章 微型机接口技术 可编程定时/计数器 可编程并行接口 串行接口与串行通信(概念) DMA控制器接口(不做要求) 模拟量输入/输出接口.
第二章 8086/8088系统结构 主要内容 8086/8088微处理器的内部结构 8086/8088 CPU 的引脚与功能
1.3 微型计算机的结构和工作原理.
第10章 综合实训 课题一 水温控制系统设计 一、实训目的 二、课题要求 熟悉常用温度传感器AD590的特性及接口电路的设计方法;
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
6.1 输入/输出 6.2 CPU与外设数据传送方式 6. 3 MCS-51中断系统 6. 4 中断应用举例
本 章 重 点 单片机的结构特点 单片机的存储器特点 I/O端口的特点 CPU时序 课时安排:3个课时.
第6章作业 3、 需要128块芯片 片内译码地址线:10条 片选择地址线:至少4条
第四章 指令系统及汇编语言程序设计.
第7章 I/O接口和总线 7.1 I/O接口 7.2 总线.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月19日.
第五章:输入输出基本技术 主讲教师:范新民.
第二章 8086微处理器. 第二章 8086微处理器 微处理器的基本结构 8086微处理器的主要特性和内部结构 8086CPU的工作模式和引脚信号 8086的存储器管理 8086的总线操作和时序.
第4章 中断技术 一个完整的微机系统是由硬件和软件共同构成的。微机系统的硬件有CPU、存储器和I/O口,外设组成。CPU与存储器之间的信息交换比较简单,而CPU与外设之间进行信息交换之前必须确定外设是否准备好,即选择I/O传送方式。I/O传送方式有4种:无条件、查询、中断和DMA。本章学习中断传送方式的有关内容。
第九章 微处理器外部结构和总线操作时序.
第10章 可编程外围接口芯片8255A及其应用 10.1 概述 A的工作原理 A的应用举例.
单片机技术及应用 课程要求:应用MCS-51汇编语言进行 软件设计。 应用MCS-51及有关芯片进 行硬件接口设计。
第3章 MCS-51指令系统 介绍MCS—51系列单片机的寻址方式 介绍MCS—51系列单片机的指令系统
第4章 80C51系列指令系统 教学目的:熟悉80C51系列单片机的寻址方式及 每一种寻址方式对应的寻址空间;掌 握每一条指令功能。
本章内容 MCS-51单片机指令系统的格式 MCS-51单片机寻址方式 指令系统的分析
可编程定时计数器.
第6章 存储器接口 6.1 存储器概述 6.2 半导体存储器 6.3 MCS-51单片机存储器扩展.
汽车单片机应用技术 学习情景1: 汽车空调系统的单片机控制 主讲:向楠.
2. MCS-51单片机的组成及结构分析 2.1 MCS-51单片机的内部结构及结构特点
四、手工汇编 完成汇编的方法有两种:手工汇编和汇编程序汇编 1.手工汇编步骤 A
微机原理与接口技术 ——80x86微处理器 西安邮电大学 计算机学院 范琳.
单片机原理及应用 (C语言版) 第8章 单片机系统扩展
简单芯片扩展I/O接口 8155可编程接口芯片及其使用 键盘及显示器接口设计 A/D和D/A转换接口技术
单片机应用技术 (C语言版) 第3章 MCS-51指令系统及 汇编程序设计
第二章 8086系统结构 /8086的存储器组织 的系统配置及引脚功能 CPU时序
第二章 MCS-51单片机程序设计 第一章 8086程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口
第4章 MCS-51汇编语言程序设计 教学基本要求: (1)、了解MCS-51汇编语言程序设计的特点;
第8章 并行接口芯片 并行接口一般具有两个或两个以上的8位I/O接口。各个口的工作方式可由程序分别确定或改变,使用灵活,便于和各种外部设备连接。因此,又称可编程的外部接口(PPI) 目前各主要微处理器厂商都有自己的PPI产品,但它们的功能基本类似.
第2章 80C51单片机的硬件结构 教学基本要求: (1)、熟悉单片机的定义、名称、分类方法;
第1章 微型计算机基础.
Presentation transcript:

第七章 MCS-51并行口的扩展 MCS51单片机内部有4个并行口,当内部并行口不够用时可以外扩并行口芯片。可外扩的并行口芯片很多,分成2类:不可编程的并行口芯片(74LS3734和74LS245)和可编程的并行口芯片(8255)。 7.1 不可编程并行口芯片的扩展 7.2 可编程并行口芯片的扩展

7.1 不可编程并行口芯片的扩展 7.1.1 74LS373的扩展 7.1.2 74LS245的扩展

7.1.1 74LS373的扩展 连接图 思考 1、 74LS373的结构 2、 74LS373的引脚 D0 Q0 D Q 1、 74LS373的结构 2、 74LS373的引脚 3、 74LS373与89C51的连接 CP D1 Q1 D Q CP D2 Q D Q CP D3 Q3 D Q CP D4 Q4 D Q CP D5 Q5 D Q CP D6 Q6 D Q CP D7 Q7 D Q LE CP OE 连接图 思考

74LS373与89C51的连接图 DB AB CB 地址码的计算 AB0 AB15 AB15 74LS373 P0.0 D0 A0 ALE LE OE P2.0 P2.1 AB15 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 CB AB15 PSEN WR RD + 地址码的计算 ~ D7 ~ D0 LE OE 74LS373 计算74LS373的地址(8051送出何种地址码时可以将数送到Q端) P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 0 * * * * * * * * * * * * * * * Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0

思考:2片74LS373与89C51的连接图 DB AB CB AB0 AB15 AB14 AB15 计算74LS373的地址(8051送出何种地址码时可以将数送到Q端) P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 0 1 * * * * * * * * * * * * * * 1 0 * * * * * * * * * * * * * * DB 74LS373 AB0 P0.0 D0 A0 P0.1 D1 A1 P0.2 D2 A2 P0.3 D3 A3 P0.4 D4 A4 P0.5 D5 A5 P0.6 D6 A6 P0.7 D7 A7 AB 89C51 ALE LE OE P2.0 P2.1 P2.2 P2.3 AB15 P2.4 AB14 P2.5 P2.6 P2.7 CB AB15 PSEN WR RD + + ~ ~ D7 ~ D0 LE OE D7 ~ D0 LE OE 74LS373 74LS373 Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0 Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0

7.1.2 74LS245的扩展 + 连接图 思考 + 1、 74LS245的结构 2、 74LS245的引脚 B0 A0 7.1.2 74LS245的扩展 B1 A1 1、 74LS245的结构 2、 74LS245的引脚 3、 74LS245与89C51的连接 B2 A2 B3 A3 B4 A4 B5 A5 B6 A6 B7 A7 E + 连接图 思考 + DIR

74LS245与89C51的连接图 DB AB CB 地址码的计算 AB0 AB15 AB15 74LS373 P0.0 D0 A0 ALE LE OE P2.0 P2.1 AB15 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 CB AB15 PSEN WR RD + 地址码的计算 ~ B7 ~ B0 E DIR 74LS245 计算74LS245的地址(8051送出何种地址码时可以将数由A端传到B端) P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 0 * * * * * * * * * * * * * * * A7 A6 A5 A4 A3 A2 A1 A0

思考:2片74LS245与89C51的连接图 DB AB CB AB0 AB15 AB14 AB15 计算74LS245的地址 P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 0 1 * * * * * * * * * * * * * * 1 0 * * * * * * * * * * * * * * DB 74LS373 AB0 P0.0 D0 A0 P0.1 D1 A1 P0.2 D2 A2 P0.3 D3 A3 P0.4 D4 A4 P0.5 D5 A5 P0.6 D6 A6 P0.7 D7 A7 AB 89C51 ALE LE OE P2.0 P2.1 P2.2 P2.3 AB15 P2.4 AB14 P2.5 P2.6 P2.7 CB AB15 PSEN WR RD + + ~ ~ B7 ~ B0 E DIR B7 ~ B0 E DIR 74LS245 74LS245 A7 A6 A5 A4 A3 A2 A1 A0 A7 A6 A5 A4 A3 A2 A1 A0

7.2 可编程并行口芯片的扩展(8255) 7.2.1 8255的结构 7.2.2 8255的引脚 7.2.3 8255的工作方式 7.2 可编程并行口芯片的扩展(8255) 7.2.1 8255的结构 7.2.2 8255的引脚 7.2.3 8255的工作方式 7.2.4 8255的控制字 7.2.5 8255的应用

7.2.1 8255的结构 A组 口A 控制 数据 总线 口C 缓冲器 高4 口C 低4 读写 控制 B组 逻辑 控制 口B 7.2.1 8255的结构 A组 控制 口A PA0~PA7 数据 总线 缓冲器 D0~D7 口C 高4 PC4~PC7 口C 低4 PC0~PC3 RD 读写 控制 逻辑 WR B组 控制 CS 口B PB0~PB7 A0 A1 RESET 8255有三个并行的8位I/O接口,分别称为A口、B口、C口。也就是说,扩展一片8255则可扩展24位并行端口。

7.2.1 8255的结构 A组 口A 控制 数据 总线 口C 缓冲器 高4 口C 低4 读写 控制 B组 逻辑 控制 口B 7.2.1 8255的结构 A组 控制 口A PA0~PA7 数据 总线 缓冲器 D0~D7 口C 高4 PC4~PC7 口C 低4 PC0~PC3 RD 读写 控制 逻辑 WR B组 控制 CS 口B PB0~PB7 A0 A1 RESET 8位的双向的三态缓冲器。作为8255A与系统总线连接的界面,输入/输出的数据,CPU的编程命令以及外设通过8255A传送的工作状态等信息,都是通过它来传输的。

7.2.1 8255的结构 A组 口A 控制 数据 总线 口C 缓冲器 高4 口C 低4 读写 控制 B组 逻辑 控制 口B 7.2.1 8255的结构 A组 控制 口A PA0~PA7 数据 总线 缓冲器 D0~D7 口C 高4 PC4~PC7 口C 低4 PC0~PC3 RD 读写 控制 逻辑 WR B组 控制 CS 口B PB0~PB7 A0 A1 RESET 读/写控制逻辑电路负责管理8255A的数据传输过程。它接收片选信号及系统读信号、写信号、复位信号RESET,还有来自系统地址总线的口地址选择信号A0和A1。

7.2.1 8255的结构 A组 口A 控制 数据 总线 口C 缓冲器 高4 口C 低4 读写 控制 B组 逻辑 控制 口B 7.2.1 8255的结构 A组 控制 口A PA0~PA7 数据 总线 缓冲器 D0~D7 口C 高4 PC4~PC7 口C 低4 PC0~PC3 RD 读写 控制 逻辑 WR B组 控制 CS 口B PB0~PB7 A0 A1 RESET 这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255A的工作方式,也可以根据编程命令来对C口的指定位进行置/复位的操作。 ①A组控制电路用来控制A口及C口的高4位。 ②B组控制电路用来控制B口及C口的低4位。

7.2.1 8255的结构 A组 口A 控制 数据 总线 口C 缓冲器 高4 口C 低4 读写 控制 B组 逻辑 控制 口B 7.2.1 8255的结构 A组 控制 口A PA0~PA7 数据 总线 缓冲器 D0~D7 口C 高4 PC4~PC7 口C 低4 PC0~PC3 RD 读写 控制 逻辑 WR B组 控制 CS 口B PB0~PB7 A0 A1 RESET C口可以看作是一个独立的8位I/O口;也可以看作是两个独立的4位I/O口。也是仅对输出数据进行锁存。 B口也是一个独立的8位I/O口,仅对输出数据的锁存功能。 A口是一个独立的8位I/O口,它的内部有对数据输入/输出的锁存功能。

7.2.2 8255的引脚 A组 口A 控制 数据 总线 口C 缓冲器 高4 口C 低4 读写 控制 B组 逻辑 控制 口B 7.2.2 8255的引脚 A组 控制 口A PA0~PA7 数据 总线 缓冲器 D0~D7 口C 高4 PC4~PC7 口C 低4 PC0~PC3 RD 读写 控制 逻辑 WR B组 控制 CS 口B PB0~PB7 A0 A1 RESET 8255与89C51的连接图

7.2.2 8255的引脚 D0-D7:8位,双向,三态数据线,用来与系统数据总线相连。 A组 控制 口A 数据 总线 缓冲器 口C 高4 7.2.2 8255的引脚 D0-D7:8位,双向,三态数据线,用来与系统数据总线相连。 A组 控制 口A PA0~PA7 数据 总线 缓冲器 D0~D7 口C 高4 RD:读信号,输入,控制8255将数据或控制信息送到CPU。 PC4~PC7 口C 低4 PC0~PC3 RD WR:写信号,输入,控制CPU将数据或状态信息送到8255A。 读写 控制 逻辑 WR B组 控制 CS 口B PB0~PB7 A0 A1 CS:片选,输入,用来决定芯片是否被选中。 RESET A1,A0:内部口地址的选择,输入。这两个引脚上的信号组合决定对8255A内部的哪一个口或寄存器进行操作。 RESET:复位信号,高电平有效,输入,用来清除8255A的内部寄存器,并置A口,B口,C口均为输入方式。 注意:8255工作之前,硬件上必须先复位,使8255内部的各个部件处于待命状态。 8255A的操作功能表

7.2.2 8255的引脚 A组 口A 控制 PA0~PA7:A组数据信号,用来连接外设。 数据 总线 口C 缓冲器 高4 口C 低4 7.2.2 8255的引脚 A组 控制 口A PA0~PA7 PA0~PA7:A组数据信号,用来连接外设。 数据 总线 缓冲器 D0~D7 口C 高4 PC4~PC7 口C 低4 PC0~PC3 PC0~PC7:C组数据信号,用来连接外设或者作为控制信号。 RD 读写 控制 逻辑 WR B组 控制 CS 口B PB0~PB7 A0 A1 RESET PB0~PB7:B组数据信号,用来连接外设。

8255 与 89C51 的 连 接 图 DB AB CB 各端口地址码的计算 AB0 AB1 AB12 AB0 AB15 AB15 74LS373 AB0 P0.0 D0 A0 P0.1 D1 A1 P0.2 D2 A2 P0.3 D3 A3 P0.4 D4 A4 P0.5 D5 A5 P0.6 D6 A6 P0.7 D7 A7 AB 89C51 ALE LE OE P2.0 P2.1 AB1 P2.2 P2.3 P2.4 AB12 AB0 AB15 P2.5 P2.6 CB P2.7 AB15 PSEN WR RD D0~D7 RD WR CS A1 A0 RESET 各端口地址码的计算 8255 PA0~PA7 PC0~PC7 PB0~PB7 89C51送出何种地址码时选中端口 P27 P26 P25 P24 P23 P22 P21 P2 0 P07 P06 P05 P04 P03 P02 P01 P00 AB15AB14 AB13 AB12 AB11 AB10 AB9 AB8 AB7 AB6 AB5 AB4 AB3 AB2 AB1 AB0 口A 0 * * * * * * * * * * * * * 0 0 口B 0 * * * * * * * * * * * * * 0 1 口C 0 * * * * * * * * * * * * * 1 0 控制 0 * * * * * * * * * * * * * 1 1

8255A的操作功能表 WR、RD、CS、A1、A0这几个信号的组合决定了8255A的所有具体操作: 8255A的操作功能表 CS RD WR A1 A0 操 作 数 据 传 送 方 式 0 0 1 0 0 读 A 口 A口数据 → 数据总线 0 0 1 0 1 读 B 口 B口数据 → 数据总线 0 0 1 1 0 读 C 口 C口数据 → 数据总线 0 1 0 0 0 写 A 口 数据总线数据 → A口 0 1 0 0 1 写 B 口 数据总线数据 → B口 0 1 0 1 0 写 C 口 数据总线数据 → C口 0 1 0 1 1 写控制口 数据总线数据 → 控制口

7.2.3 8255的工作方式 8255A有三种工作方式: ① 方式0――简单输入/输出――查询方式;A,B,C三个端口均可。 最为常用。 7.2.3 8255的工作方式 8255A有三种工作方式: ① 方式0――简单输入/输出――查询方式;A,B,C三个端口均可。 最为常用。 ② 方式1――选通输入/输出――中断方式;A ,B,两个端口均可。 ③ 方式2――双向输入/输出――中断方式。只有A端口才有。 注意:工作方式的选择可通过向控制端口写入方式控制字来实现。

方式0 方式0为一种简单的输入/输出方式,没有规定固定的应答联络信号,可用A,B,C三个口的任意一位充当查询信号,其余I/O口仍可作为独立的端口和外设相连。 即:PA0—PA7,PB0—PB7,PC0—PC7均可作为I/O线使用,没有限制一定传送什么信号;口A、口B、口C高4位和口C低4位可以分别设定为输入口或输出口。 方式0的应用场合有两种:一种是无条件传送;一种是查询传送。 D0~D7 RD WR CS A1 A0 RESET 8255 PA0~PA7 PC0~PC7 PB0~PB7 +5V STB BUSY D0~D7 微型打印机

方式1 方式1是一种选通I/O方式,A口和B口仍作为两个独立的8位I/O数据通道,可单独连接外设,通过编程分别设置它们为输入或输出。而C口则要有6位(分成两个3位)分别作为A口和B口的应答联络线,其余2位仍可工作在方式0,可通过编程设置为输入或输出。即:口A和口B作为数据口使用;口分成C高4位和口C低4位,分别配合口A和口B工作,此时口C高4位和口C低4位分别作为口A和口B的状态口,口C的某些引脚规定为传送状态信号,不能作I/O口线使用,传送任意信号。 方式1主要用于中断应答式数据传送,也可用于连续查询式数据传送。输入和输出时8255与外围设备的连接方式不同,数据传送过程也不同。 D0~D7 RD WR CS A1 A0 RESET 8255 PA0~PA7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PB0~PB7 +5V BUSY STB D0~D7 微型打印机

A、B通道工作于方式1时引脚规定 ①当A、B通道作为输入通道时,PC0~PC7的功能分配如图a所示。 STB为外设向8255提供的输入选通信号,当外设数据准备好,并稳定在数据线后,向输入低电平信号,8255必须在收到的下降沿后,才把数据线上外围设备的信息输入端口锁存器。 IBF为端口锁存器满/空标志线。IBF有效,表明输入缓冲器已满。IBF是8255向外设输出的信号,高电平表示端口缓冲器已满,等待CPU读取,只有在CPU读取之后,上升沿使IBF为低电平,表示数据已读完,才允许外设继续送数。 INTR为中断请求信号。高电平有效,由8255发出。在中断允许的条件下,当=1和IBF=1时,INTR被置1,发出中断请求。 ②当A、B通道作为输出通道时,PC0~PC7的分配如图b所示。 OBF为输出缓冲器已满标志,也是8255向外设输出的信号,低电平有效,表示CPU已将数据装入8255端口的输出缓冲器中,通知外设可以取数。CPU向8255写入数据后,在WR的上升沿时使OBF变为低电平。 ACK为外设向8255提供的输入应答信号,外设把端口数据取走之后,为低电平,表示外设已取走数据,CPU可以再送新的数据。

方式2 方式2为双向选通I/O方式,只有A口才有此方式。这时,C口有5根线用作A口的应答联络信号,其余3根线可用作方式0,也可用作B口方式1的应答联络线。 方式2就是方式1的输入与输出方式的组合,各应答信号的功能也相同。而C口余下的PC0~PC2正好可以充当B 口方式1的应答线,若B口不用或工作于方式0,则这三条线也可工作于方式0。 按方式2工作时,A口既可工作于查询方式,又可工作于中断方式。 A通道工作于方式2时PC0~PC7的功能

A通道工作于方式2时PC0~PC7的功能 当A通道工作于方式2时,PC0~PC7的功能分配如图所示。图中各功能的含义与工作方式1时的含义一样。由于只有A通道才能工作于方式2,所以所有的应答联络线都是与A通道配合的。 8255的C口专用功能见下表: 位 方式1(输入) 方式1(输出) 方式2 PC0 INTRB I/O PC1 IBFB OBFB PC2 STBB ACKB PC3 INTRA PC4 STBA PC5 IBFA PC6 ACKA PC7 OBFA

7.2.4 8255的控制字 8255的控制字存于控制字寄存器中。 8255有2个控制字:方式控制字和口C按位置/复位控制。 1、方式控制字 7.2.4 8255的控制字 8255的控制字存于控制字寄存器中。 8255有2个控制字:方式控制字和口C按位置/复位控制。 1、方式控制字 方式控制字决定了8255的工作方式。8255工作之前软件上必须初始化,即将方式控制字写入控制字寄存器中,以指定端口的工作方式。 2、口C的按位置/复位控制字 只有C口才有,它是通过向控制口写入按指定位置位/复位的控制字来实现的。C口的这个功能可用于设置方式1的中断允许,可以设置外设的启/停等。 3、8255的初始化 8255是可编程的接口芯片,在使用8255之前,硬件上必须复位,即给RESET端送一个高电平;软件上必须初始化,即向8255写入方式控制字,以确定8255的工作方式。

方式控制字 方式控制字决定了8255的工作方式。8255工作之前软件上必须初始化,即将方式控制字写入控制字寄存器中,以指定端口的工作方式。 8255A的控制字格式与各位的功能如图所示。 D7 D6 D5 D4 D3 D2 D1 D0 标志位 A组控制 A组控制 A口 C口高4 B组控制 B口 C口低4 D7:标志位。D7=1 D6、D5:A组工作方式选择。 0 0 口A和口C高4工作于方式0 0 1 口A和口C高4工作于方式1 1 × 口A工作于方式2 D4:D4=0 口A为输出口; D4=1 口A为输入口。 D3:D3=0 口C高4为输出口; D3=1 口C高4为输入口。 D2: B组工作方式选择。 0 口B和口C低4工作于方式0 1 口B和口C低4工作于方式1 D1:D1=0 口B为输出口; D4=1 口B为输入口。 D0:D0=0 口C低4为输出口; D3=1 口C低4为输入口。 例 某系统要求使用8255A的A口方式0输入,B口方式0输出,C口高4位方式0输出,C口低4位方式0输。 解:控制字为: 10010001 即91H 初始化程序为: MOV A, # 91H MOV DPTR,#0023H MOVX @DPTR,A

口C按位置/复位控制字 口C按位置/复位控制字只有C口才有,它是通过向控制口写入按指定位置位/复位的控制字来实现的。C口的这个功能可用于设置方式1的中断允许,可以设置外设的启/停等。 8255A的口C按位置/复位控制字格式与各位的功能如图所示。 D7 D6 D5 D4 D3 D2 D1 D0 标志位 * * * C 口 引 脚 选 择 置1/清0 D7:标志位。D7=0 D6、D5、D4:未使用。 D3、D2、D1:C口引脚选择。 0 0 0 选中PC0 0 0 1 选中PC1 0 1 0 选中PC2 0 1 1 选中PC3 1 0 0 选中PC4 1 0 1 选中PC5 1 1 0 选中PC6 1 1 1 选中PC7 D0:D0=0 选中的C口引脚输出0,D0=1 选中的C口引脚输出1。 例:PC6置1,其余位不变 解:控制字为: 00001101 即0DH 写入口C按位置/复位程序为: MOV A, # 0DH MOV DPTR,#0023H MOVX @DPTR,A

8255初始化 8255是可编程的接口芯片,在使用8255之前,硬件上必须复位,即给RESET端送一个高电平;软件上必须初始化,即向8255写入方式控制字,以确定8255的工作方式。 例如:用8255作接口芯片,控制24个发光二极管。在编写驱动程序时,程序的前面一段8255的初始化程序。根据题意初始化程序如下: MOV DPTR,#2003H MOV A,#80H MOVX @DPTR,A 例 设8255的地址为80FCH---80FFH,如果 8255的PA0---PA7接1个数码管,PC3接一个 蜂鸣器,PC4接一个开关,试对8255初始化。 例 某系统要求使用8255A的A口方式0输入, B口方式0输出,C口高4位方式0输出,C口 低4位方式0输入。 练习:设8255的口地址为4000H---4003H, 口A、口B、口C均为输入方式,方式0, 试对8255初始化。 MOV DPTR,#80FF H MOV A,#88H MOVX @DPTR,A MOV DPTR,#80FF H MOV A,#88H MOVX @DPTR,A MOV DPTR,#80FF H MOV A,#88H MOVX @DPTR,A

7.2.5 8255的应用 当单片机内部并行口不够用时,常常外扩8255芯片。下面举例说明8255与外设的连接以及驱动程序的编制。 流水灯 7.2.5 8255的应用 当单片机内部并行口不够用时,常常外扩8255芯片。下面举例说明8255与外设的连接以及驱动程序的编制。 流水灯 计数器

流水灯 AB CB 例 用8255作接口实现如下功能:24个发光二极管轮流点亮。 程 序 AB0 AB1 AB12 AB0 AB15 例 用8255作接口实现如下功能:24个发光二极管轮流点亮。 74LS373 AB0 P0.0 D0 A0 P0.1 D1 A1 P0.2 D2 A2 程 序 P0.3 D3 A3 P0.4 D4 A4 P0.5 D5 A5 P0.6 D6 A6 P0.7 D7 A7 AB 89C51 ALE LE OE P2.0 P2.1 AB1 P2.2 P2.3 P2.4 AB12 AB0 AB15 P2.5 P2.6 CB P2.7 AB15 PSEN WR RD D0~D7 RD WR CS A1 A0 RESET 8255 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7

流水灯程序 MOV DPTR,#0003H 口地址的计算: MOV A,#80H 口A : 0000H MOVX @ DPTR,A UP2: MOV R6,#3 UP1: MOV R7,#8 MOV A,#01H MOV DPTR,#0000H UP0: MOVX @DPTR,A LCALL D2S RL A DJNZ R7,UP0 MOV A,#00H MOVX @DPTR,A INC DPTR DJNZ R6,UP1 SJMP UP2 口地址的计算: 口A : 0000H 口B: 0001H 口C : 0002H 控制字寄存器 :0003H 方式控制字: 10000000B

计数器 AB CB 例 用8255作接口实现如下功能:开关K按下并抬起时,2个数码管的显示加1。 程 序 AB0 AB1 AB12 AB0 74LS373 AB0 P0.0 D0 A0 P0.1 D1 A1 P0.2 D2 A2 程 序 P0.3 D3 A3 P0.4 D4 A4 P0.5 D5 A5 P0.6 D6 A6 P0.7 D7 A7 AB 89C51 ALE LE OE P2.0 P2.1 AB1 P2.2 P2.3 P2.4 AB12 AB0 AB15 P2.5 P2.6 CB P2.7 AB15 PSEN WR RD D0~D7 RD WR CS A1 A0 RESET 8255 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 a b c d e f g a b c d e f g +5V K

计数器程序 UP2:MOV DPTR,#0000H 口地址的计算: MOV A,R3 口A : 0000H MOVX @ DPTR,A UP0: MOVX A,@ DPTR JNZ UP0 UP1: MOVX A,@ DPTR JZ UP INC R3 CJNE R3,#10,UP2 MOV R3,#0 INC R4 CJNE R4,#10,UP2 MOV R4,#0 SJMP UP2 口地址的计算: 口A : 0000H 口B: 0001H 口C : 0002H 控制字寄存器 :0003H 方式控制字: 10000001B MOV DPTR,#0003H MOV A,#81H MOVX @ DPTR,A MOV R3,#0 MOV R4,#0