MCS-51单片机IO接口的扩展
合集下载
第4章MCS-51单片机系统功能扩展

74LS373结构示意图
74LS373的引脚
引脚说明如下: D7~D0: 8位数据输入端。 Q7~Q0: 8位数据输出端。 G:数据输入锁存控制端:当G为“1” 时,锁存器 输出端与输入端数据相同;当G由“1” 变“0” 时,数据输入锁存器中。 OE#: 输出允许端。
P0口与地址锁存器74LS373的连接
4.1 系统扩展概述
4.1.1 最小应用系统
图4.1 MCS–51单片机最小化系统 (a) 8051/8751最小系统结构图;(b) 8031最小系统结构图
4.1.2 单片机系统扩展的内容与方法
1.单片机的三总线结构
图4.2 MCS–51单片机的三总线结构形式
(1)以P0口作为低8位地址/数据总线。 (2)以P2口的口线作高位地址线。 (3)控制信号线。 *使用ALE信号作为低8位地址的锁存控制信号。 *以PSEN#信号作为扩展程序存储器的读选通信号。 *以EA#信号作为内外程序存储器的选择控制信号。 *由RD#和WR#信号作为扩展数据存储器和I/O口的 读选通、写选通信号。 尽管MCS-51有4个并行I/O口,共32条口线,但由于系 统扩展需要,真正作为数据I/O使用的,就剩下P1 口和P3口的部分口线。
锁存器8282 功能及内部结构与74LS373完全一样,只是其引脚的排 列与74LS373不同 ,8282的引脚如下图。
4.2.2 74LS244和74LS245芯片
在单片机应用系统中, 扩展的三总线上挂接
很多负载, 如存储器、并行接口、A/D接口、显
示接口等, 但总线接口的负载能力有限, 因此常
3) 采用地址译码器的多片程序存储器的扩展
例3 要求用2764芯片扩展8031的片外程序存储器,分配的 地址范围为0000H~3FFFH。
第7章MCS-51单片机的常用外设扩展

(2)数据线
2732的8位数据线直接与单片机的P0口相连。P0口作 为地址/数据线分时复用。
(3)控制线
CPU执行2732中存放的程序指令时,取指阶段就是对 2732进行读操作。注意,CPU对EPROM只能进行读操作, 不能进行写操作。CPU对2732的读操作控制都是通过控制线 实现的。2732控制线的连接有以下几条:
2.硬件电路 单片机与6116的硬件连接如图7-4所示。
3.连线说明
• 地址线:A0~A10连接单片机地址总线P0.0~P0.7、P2.0、P2.1、P2.2 共11根;
• 数据线:I/O0~I/O7连接单片机的数据线,即P0.0~P0.7;
• 控制线:片选端连接单片机的P2.7,即单片机地址总线的最高位A15; 读允许线连接单片机的读数据存储器控制线;
• 对于没有内部ROM的单片机或者程序较长、片内ROM容 量不够时,用户必须在单片机外部扩展程序存储器。 MCS-51单片机片外有16条地址线,即P0口和P2口,因此 最大寻址范围为64K字节(0000H—FFFFH)。
• 这里要注意的是,MCS-51单片机有一个管脚 EA跟程序存 储器的扩展有关。如果接高电平,那么片内存储器地址范 围是0000H—0FFFH(4K字节),片外程序存储器地址范 围是1000H—FFFFH(60K字节)。如果接低电平,不使 用片内程序存储器,片外程序存储器地址范围为0000H— FFFFH(64K字节)。
1. 芯片选择
单片机扩展数据存储器常用的静态RAM芯片有6116(2K×8 位)、6264(8K×8位)、62256(32K×8位)等。
根据题目容量的要求我们选用SRAM6116,采 用单一+5V供电,输入输出电平均于TTL兼容,具有 低功耗操作方式,管脚如图7-3所示。
3.1MCS-51单片机的并行IO口

一、并行I/O口的功能结构
2、接口功能 (2)通用I/O接口
(四)P0口
此时“控制”信号为“0”,多路开关 MUX向下,输出驱动器处于开漏状态,故需 外接上拉电阻,这种情况下,电路结构与P1 相同,所以也是一个准双向口,当要作为输 入时,必须先向口锁存器写“1”。
一、并行I/O口的功能结构
(四)P0口
这是由接口的特殊结构所决定的。每一个 口都包含一个锁存器,一个输出驱动器和两 个(P3口为3个)输入缓冲器。各口的结构也 P 3 有些差异,下面分别介绍。
一、并行I/O口的功能结构
1、接口结构
(一)P1口
P1口一位的结构如下图所示:
图2.15
一、并行I/O口的功能结构
1、接口结构
(一)P1口
接口结构中锁存器起输出锁存作用, 8位锁存器组成特殊功能寄存器P1,场 效应管和上拉电阻组成输出驱动器,以 增大负载能力,三态门1和三态门2分别 用于控制输入引脚和锁存器的状态。
作为I/O口应用的一个实例,下面介绍 8031单片机的最小应用系统如下图所示
二、产生接口控制信号的指令
(四)P0口
8051指令系统中能与接口打交道的指令 大体可分两类 1.一般的输入/输出指令 2.“读-修改-写”指 令
二、产生接口控制信号的指令
1.一般的输入输出指令
(四)P0口
输入指令执行时,内部产生“读引脚”信号, 直接从口线读入,亦称“读引脚”指令。 下面是属于这种指令的各种实例:
二、产生接口控制信号的指令
(四)P0口 2.“读-修改-写”指令 INC P2 接口锁存器加1 DEC P1 接口锁存器内容减1 DJNZ P3,LOOP 减1后不为零则跳转 还有三条虽不明显,但也属此列: MOV P1.1,C CLR P1.1 SETB P1.1 将进位位送接口的某位 清接口的某一位 接口的某一位置位
MCS51单片机总线系统与IO口扩展

6.2.2 单片机总线扩展的编址技术
OE
LE
Dn
Qn
L
H
H
H
L
H
L
L
L
L
L
Qn-1
L
L
H
Qn-1
H
×
×
Z
地址锁存器74LS373
CLR D0-D7Q0-Q7 4 6 2 6 74LS24474LS273 E 0123456789E GG 12Q0-Q7CLKD0-D7AAAAAAAAAAA10A11A12I/O0I/O1I/O2I/O3I/O4I/O5I/O6I/O7OWCE1CE2 56? UUU P0.0-P0.7P0.0-P0.7 +5V 11 01234567 E >> QQQQQQQQ O 01234567 E DDDDDDDDL 2 U74LS373 012 YYY ABC 3 U74LS138 R AD E R P20P07P21P06P22P05P23P04P24P03P25P02P26P01P27P00 W ALE 89C51 1 U
MOV
DPTR,#0FEFFH ;确定扩展芯片地址
MOVX
A,@DPTR
;将扩展输入口内容读入累加器A
当与74LS244相连的按键都没有按下时,输入全为1,若按下某键,则所在线 输入为0。
6.2.1 单片机I/O口扩展
输出控制信号由P2.0和相“或”后形成。当二者都为0后,74LS273的控制端 有效,选通74LS273, P0上的数据锁存到74LS273的输出端,控制发光二极管 LED , 芯 片 地 址 与 74LS244 的 选 通 地 址 相 同 ( 都 是 ×××× ×××0 ×××× ××××B,通常取为FEFFH)。当某线输出为0时,相应的LED发 光。
CPLD扩展MCS-51单片机I/O接口的应用研究

成 电路 , 而给 电子系 统 设计 带米 了革命性 的变 从
2 设计要 求
设计任 务:要检 测或 执行的系 统 的外 围 I / o 状态较 多 ,而 MC 一 1 片机 的 I 接 口不足 。 S5 单 / O
器 什 选 择 : Alr 公 司 ta e MA 0 0 系 列 X7 0
标准 的数字 电路硬件 描述语 言 。而 V ro eig语言 l 是一种 很接近 C语 言 的数 字 电路硬件 描述 语言 , 只 要有 一些数字 电路和 C 语言 基础 ,就很容 易
掌握。 本文 介绍采 刖 V ro 言来扩 展 MC . l ei g语 l S5 单 片机接 口的一种 方法 。
MAX 18 (/ 引脚数 10 。 7 2S I 0 O)
Alr 可 编程器件 有很 多优 点:高性能 ,采 ta e
用C OMS技 术 ,具有低功 耗和 高速度 ;高密度
逻辑 集成 , tr 器 : 从 3 0门到 10万 r , Al a e 密度 0 0 J
使 传统 的 “自下 而上 ”的设计方法 ,变为一种 新 的 “自顶 向下 ”的 设计 方 法 。CP D 采 刖 了 L EC 2 MOS工艺 制作 。相 比于 E L 增 加 内部 连 PD
摘
要
CL P D是一种复杂可编程序逻辑 器件 ,广泛应用于 大规模 集成 电路的 系统设计 中。利用 X X A
P U 集成 环 境 , 可 以很 方 便 地 进 行硬 件 描 述语 言 的程 序 编 辑 L SI I
关键词
可编程逻辑器件 硬件描述语 言 单 片机 I0 口 /接
0 前 言 C L 是 具 备在 系统 可编 能 力 的复杂 可 PD
能集成 现有 的逻 辑器 件 ;开发 周期 短。快速 、直
2 设计要 求
设计任 务:要检 测或 执行的系 统 的外 围 I / o 状态较 多 ,而 MC 一 1 片机 的 I 接 口不足 。 S5 单 / O
器 什 选 择 : Alr 公 司 ta e MA 0 0 系 列 X7 0
标准 的数字 电路硬件 描述语 言 。而 V ro eig语言 l 是一种 很接近 C语 言 的数 字 电路硬件 描述 语言 , 只 要有 一些数字 电路和 C 语言 基础 ,就很容 易
掌握。 本文 介绍采 刖 V ro 言来扩 展 MC . l ei g语 l S5 单 片机接 口的一种 方法 。
MAX 18 (/ 引脚数 10 。 7 2S I 0 O)
Alr 可 编程器件 有很 多优 点:高性能 ,采 ta e
用C OMS技 术 ,具有低功 耗和 高速度 ;高密度
逻辑 集成 , tr 器 : 从 3 0门到 10万 r , Al a e 密度 0 0 J
使 传统 的 “自下 而上 ”的设计方法 ,变为一种 新 的 “自顶 向下 ”的 设计 方 法 。CP D 采 刖 了 L EC 2 MOS工艺 制作 。相 比于 E L 增 加 内部 连 PD
摘
要
CL P D是一种复杂可编程序逻辑 器件 ,广泛应用于 大规模 集成 电路的 系统设计 中。利用 X X A
P U 集成 环 境 , 可 以很 方 便 地 进 行硬 件 描 述语 言 的程 序 编 辑 L SI I
关键词
可编程逻辑器件 硬件描述语 言 单 片机 I0 口 /接
0 前 言 C L 是 具 备在 系统 可编 能 力 的复杂 可 PD
能集成 现有 的逻 辑器 件 ;开发 周期 短。快速 、直
第七章 IO接口_AD_DA技术

1.工作方式选择控制字 三种工作方式由方式控制字来决定。 控制字格式如下。
C口上半部分(PC7~PC4)随A口称为A组,
C口下半部分(PC3~PC0)随B口称为B组。
其中A口可工作于方式0、1、和2,而B口只能工作在 方式0和1。 例如:写入工作方式控制字95H
可将8255A编程为:A口方式0输入,B口方式1输出, C口的上半部分(PC7~ PC4)输出,C口的下半部分 (PC3~PC0)输入。
第9章 MCS-51扩展I/O接口的设计 9.1 I/O接口扩展概述
I/O (输入/输出)接口是MCS-51与外设交换数字信 息的桥梁。
I/O扩展也属于系统扩展的一部分。
真正用作I/O口线的只有P1口的8位I/O线和P3口的某些 位线。 在多数应用系统中,MCS-51单片机都需要外扩I/O接 口电路。
数据总线为三态 非法状态 数据总线为三态
0
0 1 1 × 1 ×
0
1 0 1 × 1 ×
1
1 1 1 × 0 1
0
0 0 0 × 1 1
0
0 0 0 1 0 0
9.2.2 工作方式选择控制字及C口置位/复位控制字
8255A有三种工作方式:
(1) 方式0:基本输入输出; (2) 方式1:选通输入输出; (3) 方式2:双向传送(仅A口有)。
各端口的工作状态与控制信号的关系如表9-1所示。
表9-1
A1 A0
8255A端口工作状态选择
RD* WR* CS* 工作状态
0
0 1
0
1 0
0
0 0
1
1 1
0
0 0
读端口A:A口数据→数据总线 读端口B:B口数据→数据总线 读端口C:C口数据→数据总线 写端口A:总线数据→A口 写端口B:总线数据→B口 写端口C:总线数据→C口 写控制字:总线数据→控制字寄存 器
C口上半部分(PC7~PC4)随A口称为A组,
C口下半部分(PC3~PC0)随B口称为B组。
其中A口可工作于方式0、1、和2,而B口只能工作在 方式0和1。 例如:写入工作方式控制字95H
可将8255A编程为:A口方式0输入,B口方式1输出, C口的上半部分(PC7~ PC4)输出,C口的下半部分 (PC3~PC0)输入。
第9章 MCS-51扩展I/O接口的设计 9.1 I/O接口扩展概述
I/O (输入/输出)接口是MCS-51与外设交换数字信 息的桥梁。
I/O扩展也属于系统扩展的一部分。
真正用作I/O口线的只有P1口的8位I/O线和P3口的某些 位线。 在多数应用系统中,MCS-51单片机都需要外扩I/O接 口电路。
数据总线为三态 非法状态 数据总线为三态
0
0 1 1 × 1 ×
0
1 0 1 × 1 ×
1
1 1 1 × 0 1
0
0 0 0 × 1 1
0
0 0 0 1 0 0
9.2.2 工作方式选择控制字及C口置位/复位控制字
8255A有三种工作方式:
(1) 方式0:基本输入输出; (2) 方式1:选通输入输出; (3) 方式2:双向传送(仅A口有)。
各端口的工作状态与控制信号的关系如表9-1所示。
表9-1
A1 A0
8255A端口工作状态选择
RD* WR* CS* 工作状态
0
0 1
0
1 0
0
0 0
1
1 1
0
0 0
读端口A:A口数据→数据总线 读端口B:B口数据→数据总线 读端口C:C口数据→数据总线 写端口A:总线数据→A口 写端口B:总线数据→B口 写端口C:总线数据→C口 写控制字:总线数据→控制字寄存 器
第5章 MCS–51单片机的接口与应用 99页 5.8M

(1) 用键盘连接的I/O线的二进制组合表示键码。例如用4行、
4列线构成的16个键的键盘,可使用一个8位I/O口线的高、低4 位口线的二进制数的组合表示16个键的编码,如图5.4(a)所示。 各键相应的键值为88H、84H、82H、81H、48H、44H、42H、 41H、28H、24H、22H、21H、18H、14H、12H、11H。这种键 值编码软件较为简单直观,但离散性大,不便安排散转程序的 入口地址。
第5章 MCS–51单片机的接口与应用 JNB ACC.2,K2 JNB ACC.3,K3 JNB ACC.4,K4 JNB ACC.5,K5 JNB ACC.6,K6 ;检测2号键是否按下,按下转 ;检测3号键是否按下,按下转 ;检测4号键是否按下,按下转 ;检测5号键是否按下,按下转 ;检测6号键是否按下,按下转
;0号键功能程序
;0号键功能程序执行完返回 ;0号键功能程序
JMP START
……………………… PROM7: ……………………… JMP START …
;1号键功能程序执行完返回
;7号键功能程序 ;7号键功能程序执行完返回
第5章 MCS–51单片机的接口与应用
5.1.4 行列式键盘
行列式键盘又叫矩阵式键盘。用I/O口线组成行、列结构, 按键设置在行列的交点上。例如4×4的行列结构可组成16个键 的键盘。因此,在按键数量较多时,可以节省I/O口线。 1.行列式键盘的接口 行列式键盘的接口方法有许多,例如直接接口于单片机的 I/O口上;利用扩展的并行I/O接口;用串行口扩展并行I/O口接 口;利用一种可编程的键盘、显示接口芯片8279进行接口等。 其中,利用扩展的并行I/O接口方法方便灵活,在单片机应用系
MOVX @DPTR,A
内容7_MCS-51单片机IO接口扩展设计及应用

C.为了消除按键的抖动,常用的方法有硬件和软件两种方法;
D. 8031的扩展储存器系统中,P0口要接一个8位锁存器,而P2口却不需要。
17
下面的说法错误的有()。
A. LED显示器采用动态扫描方法进行显示,任一时刻只有一位显示器被点亮;
B. RS-232C的逻辑电平与通常的TTL和MOS电平兼容,故实现与TTL或MOS电路的连接时无需外加电平转换电路;
(B)RAM式
(C)FLASHROM
(D)EPROM
47
某种存储器芯片是8KB*4/片,那么它的地址线根数是()。
(A)11根
(B)12根
(C)13根
(D)14根
48
若某存储器芯片地址线为12根,那么它的存储容量为()。
(A)1KB
(B)2KB
(C)4KB
(D)8KB
49
下面哪条指令产生信号()。
(A)MOVXA,@DPTR
D.P3
E.P0.7
28
MCS-51单片机的P0口可以作为( )使用。
A.低8位地址总线
B.高8位地址总线
C.数据总线
D.控制总线
E.一般的I/O使用
29
071-0029、ATMEL公司的AT24CXX系列EEPROM是()。
A.I C接口的EEPROM
B.SPI接口的EEPROM
C.并行接口的EEPROM
A.16D触发器
B.8D触发器
C.32位锁存器
D.16位锁存器
E.8位锁存器
15
071-0001、单片机扩展的内容有()等。
A.总线扩展
B.程序存储器扩展
C.数据存储器扩展
D.外围扩展
E.I/O口的扩展
D. 8031的扩展储存器系统中,P0口要接一个8位锁存器,而P2口却不需要。
17
下面的说法错误的有()。
A. LED显示器采用动态扫描方法进行显示,任一时刻只有一位显示器被点亮;
B. RS-232C的逻辑电平与通常的TTL和MOS电平兼容,故实现与TTL或MOS电路的连接时无需外加电平转换电路;
(B)RAM式
(C)FLASHROM
(D)EPROM
47
某种存储器芯片是8KB*4/片,那么它的地址线根数是()。
(A)11根
(B)12根
(C)13根
(D)14根
48
若某存储器芯片地址线为12根,那么它的存储容量为()。
(A)1KB
(B)2KB
(C)4KB
(D)8KB
49
下面哪条指令产生信号()。
(A)MOVXA,@DPTR
D.P3
E.P0.7
28
MCS-51单片机的P0口可以作为( )使用。
A.低8位地址总线
B.高8位地址总线
C.数据总线
D.控制总线
E.一般的I/O使用
29
071-0029、ATMEL公司的AT24CXX系列EEPROM是()。
A.I C接口的EEPROM
B.SPI接口的EEPROM
C.并行接口的EEPROM
A.16D触发器
B.8D触发器
C.32位锁存器
D.16位锁存器
E.8位锁存器
15
071-0001、单片机扩展的内容有()等。
A.总线扩展
B.程序存储器扩展
C.数据存储器扩展
D.外围扩展
E.I/O口的扩展
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
9.2 扩展可编程并行I/0芯片8255A
PA (8位) 、PB (8位) 、PC (8位) 命令/状态口 9.2.1 8255A的结构和工作方式 一、8255A的引脚及组成结构
PA3 PA2 PA1 PA0 RD CS GND A1 A0 PC7 PC6 PC5 PC4 PC0 PC1 PC2 PC3 PB0 PB1 PB2
RD WR RESET Q7 P0.7 8031 P0.0 EA ALE D7 74LS D0 G Q1 Q0
RD PA0 WR RESET PA7 CS 地 8255A A1 A0 D7 D0 PC7 PC0 PC6
DB0 DB7 GND μ80 打印机 DSTB BUSY ACK
数据D0~D7 DSTB s 1~500μ BUSY ACK
M2M1=10时,定时/计数器的输出波形为单 个脉冲;
M2M1=00时,定时/计数器的输出波形为连 续脉冲。
9.3.2 8155 H与8031单片机的接口及应用
8031单片机与并行接口8155的接口电路如 图所示。 对8155地址分配如下: RAM地址:7E00H-7EFFH I/O口地址: 命令/状态寄存器的地址: 7F00H PA口的地址:7F01H PB口的地址: 7F02H PC口的地址: 7F03H 定时器低8位的地址:7F04H 定时器高8位的地址: 37 5 36 6 35 7 34 8 33 9 32 10 8255A 31 11 30 12 29 13 28 14 27 15 26 16 25 17 24 18 23 19 22 20 21
PA4 PA5 PA6 PA7 WR RESET D0 D1 D2 D3 D4 D5 D6 D7 VCC PB7 PB6 PB5 PB4 PB3
四、8155的定时器
D7 T7 D6 T6 D5 T5 D4 T4 D3 T3 D2 T2 D1 T1 D0 T0
计数长度低位 D7 M2 D6 M1 D5 T13 D4 T12 D3 T11 D2 T10 D1 T9 D0 T8
定时器方式
计数长度高位
M2 00 01 10 11
M1
方式 单方波 连续方波 单脉冲 连续脉冲
例9-3 在MCS-51单片机组成的系统中,如果 需配接打印机,可用8255A作为接 口芯片。 许多打印机都采用Centronic标准接口,这 种标准接口的接口信号说明如下: DB0-DB7:数据线,单向接收; /DSTB:数据选通信号,输入; BUSY:忙信号,输出; /ACK:应答信号,输出。 MCS-51单片机通过8255A与打印机的接口电 路及打印机时序如图。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21
VCC PC2 PC1 PC0 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 PA7 PA6 PA5 PA4 PA3 PA2 PA1 PA0
PRINT:MOV R0,#7FH ;控制口地址送入R0 MOV A,#81H ;控制字送入A MOVX @R0,A ;控制字送人控制口 MOV R1,#3FH ;RAM单元首地址送R1 MOV R2,#0FH ;R2作计数器用 LOOP: MOV A,@R1 ;RAM单元中内容送A INC R1 ;指向下一个RAM单元 MOV R0,#7CH ;端口A地址送R0 MOVX @R0,A ;A中内容送端口A,并锁存 MOV R0,#7FH ;控制口地址送入R0 MOV A,#0EH ;PC7的复位控制字送A MOVX @R0,A ;PC7=0 MOV A,#0FH ;R2的置位控制字送A MOVX @R0,A ;PC7由0变1 LOOP1:MOV R0,#7EH ;端口C地址送R0 MOVX A,@R0 ;读入口C的值 ANL A,#01H ;检测BUSY状态 JNZ LOOP1 ;BUSY=1跳转LOOP1 DJNZ R2,LOOP ;BUSY=0,未打完循环
I/OPB7 ~ PB0
二、8255A的工作方式及选择
1. 方式选择控制字, 2. 有三种工作方式: 方式0: 基本输入输出方式; 方式1: 选通输入输出方式; 方式2: 双向传送方式(仅A口)
D7D6D5D4D3D2D1D0 B组 端口C(下半部) 1=输入 0=输出 端口B 1=输入 0=输出 方式选择 0=方式0 1=方式1 A组 端口C(上半部) 1=输入 0=输出 端口A 1=输入 0=输出 方式选择 00=方式0 01=方式1 1×=方式2 置方式标志 1=有效
TM2TM1=11,连续方式,当计数器赋予初值后,立即 启动定时/计数器;若正在计数,则置新的方式和 长度,计数结束后按新的方式和新的时间常数计数。
2. 状态寄存器 状态寄存器由7位寄存器组成,其中6位用于表 示A口和B口的状态,1位表示定时/计数器的状 态。此寄存器为只读寄存器其位格式为:
PA:决定A口的工作方式。PA=0,A口为输入 方式;PA=1,A口为输出方式。 PB:决定B口的工作方式。PB=0,B口为输入 方式;PB=1,B口为输出方式。 PC2、PC1:决定PC口的工作方式。 PC2PC1 ( ALT1 ) =00 , A 口、 B 口为基本输 入/输出,C口为基本输入口; PC2PC1 ( ALT2 ) =01 , A 口、 B 口为基本输 入/输出,C口为基本输出口; PC2PC1 (ALT3)=10,A口为选通输入/输出 口, B口为基本输入/输出口; PC2PC1 ( ALT4 ) =11 , A 口、 B 口为选通输 入/输出口。
IO/M AD0~7 8 256× 8 静态存 储器
A
8 PA0~7
口A
CE ALE RD WR RESET 定时器输入 定时器输出
B
8 口B PB0~7 6 PC0~7 口C VCC(+5V) VSS(0V)
定时器
C
地址总线:/CE=0 IO//M=0, 256字节RAM: 00H—FFH IO//M=1, I/O口。
内部逻辑 CPU接口 A组 控制
外设接口 A组 端口A (8) A组 端口C 上半部 (4)
I/OPA7 ~ PA0
I/OPC7 ~ PC4
DB
数据 总线 缓冲器
8位内部数据总线
B组 端口C 下半部 (4)
I/OPC3 ~ PC0
RD WR A0 A1 RESET CS
读/写 控制 逻辑
B组 控制
B组 端口B (8)
定时器输出波形
其中,T0~T14构成14位计数器。定时/计数 器是递减计数器,对输入脉冲计数。当计数器 计到0时,可从定时计数器的输出端输出一个 脉冲或方波。M2M1决定定时器的输出波形。
当: M2M1=00 时,定时 / 计数器的输出波形为 单个方波; M2M1=01时,定时/计数器的输出波形为连 续方波;
8255A
EA
31
ALE
30
A口、B口、C口和控制寄存器单元地址分别 为7FFCH、7FFDH、7FFEH和7FFFH。 利用8255进行I/O扩展,使端口A、B、C都工 作于方式0且均为输出方式,并从端口A输出 一个数据,之后将PC3置为1
MOV DPTR, #7FFFH MOV A, #80H MOVX @DPTR, A MOV DPTR, #7FFCH MOV A, #00H MOVX @DPTR, A MOV DPTR, #7FFFH MOV A, #07H MOVX @DPTR, A ;地址指向8255控制口 ;设端口A、B、C设为方 式0的输出方式 ;写入控制字 ;地址指向8255端口A ;输出数据#00H传入累加器A ;向端口A写入数据 ;地址指向8255控制口 ;设控制字,将PC3口置为1 ;写入控制字
IEA:A口中断允许位。IEA=1允许A口中断,IEA=0禁 止A口中断。
IEB:B口中断允许位。IEB=1允许B口中断,IEB=0禁 止B口中断。 TM2、TM1:定时/计数器命令。 TM2TM1=00,空操作,不影响计数器操作; TM2TM1=01,停止计数器计数; TM2TM1=10,定时/计数器长度减为0时停止计数;
2. C 口按位置位/复位控制字
D7 D6 D5 D4 D3 D2 D1 D0 位 置位/复位 1=置位 0=复位 位选择 0 1 2 0 1 0 0 0 1 0 0 0
× × ×
无关
3 1 1 0
4 0 0 1
5 1 0 1
6 0 1 1
7 1 1 1
位:置位/复位标志 0为有效
9.2.2 8031单片机同8255A的接口及应用
AD2 0 0 0 0 1 1 AD1 0 0 1 1 0 0 AD0 0 1 0 1 0 1 寄存器 命令/状态口 A口(PA0~7) B口(PB0~7) C口(PC0~7) 定时器低8位 定时器高6位和操作方式
二、8155的I/O口工作方式及选择
1. 命令寄存器 8155只有一个控制字,命令寄存器决定A口、B口、 C口和定时器/计数器的工作方式及功能。其位格式 为:
第9章 MCS-51单片机I/O接口的扩展
9.1 I/O口扩展概述 9.2 扩展可编程并行I/O芯片8255A 9.3 扩展可编程RAM/IO芯片8155H 9.4 用锁存器缓冲器扩展并行I/O口 9.5 用MCS-51的串行口扩展并行口
退出
9.1 I/O口扩展概述
8255: PA (8位) 、PB (8位) 、PC (8位) 命令/状态口 8155: 命令/状态口、 PA (8位) 、PB (8位) PC (6位)、14位减法计数器、256字节RAM 8253: 3个16位定时计数器 8279: 键盘显示器接口芯片 74LS373,377,244,245:锁存器 74LS164、CD4094、74LS165、CD4014