第 5章 单片机应用系统的扩展
5.1 单片机扩展的基本概念
5.2 存储器的扩展
5.2 I/O接口扩展电路设计
5.1 单片机扩展的基本
一,单片机最小系统
使单片机能运行的最少器件构成的系统,就是最小系统。
无 ROM芯片,8031 必须扩展 ROM,复位、晶振电路有
ROM芯片,89c51等,不必扩展 ROM,只要有复位、晶振电路
二,扩展使用的三总线
地址总线,P0-低 8位
P2-高 8位
数据总线,P0
控制总线,RD,WR,ALE,PSEN
(读,写、地址锁存允许,外程序存储器读选通)
5.2 存储器的扩展
一,随机读写存储器 RAM的扩展
数据存储器一般采用 RAM芯片,这种存储器在电源
关断后,存储的数据将全部丢失。
RAM器件有两大类:
动态 RAM( DRAM),一般容量较大,易受干扰,
使用略复杂。
静态 RAM( SRAM),在工业现场常使用SRAM。
1,SRAM的引脚
6264 逻辑图 6264 引脚图
型号,6264 前两位数 62,表示 SRAM 后两位 64÷ 8=8k字
节容量
62128 有 128÷ 8=16k 字节容量
62256 有 256÷ 8=32k 字节容量
2,RAM存储器的连接
DB0~ n
AB0~ N
D0~ n
A0~ N
ABN+x CS
R/ W R/ W
微型机 存储器
存储器与微型机三总线的连接:
1)数据线 D0~ n
连接数据总线 DB0~ n
2)地址线 A0~ N
连接地址总线低位 AB0~ N。
3)片选线 CS
连接地址总线高位 ABN+x。
4) 读写线 OE,WE(R/W)
连接读写控制线 RD,WR。
3,地址锁存器的原理
地址锁存器芯片
74LS373与 74LS573只是引脚布置的不同。
74LS273的 11脚 G逻辑与以上相反。
单片机复用总线结构,
数据与地址分时共用一
组总线。
ALE








地址
输出
数据
有效
地址
输出
数据
有效AD0~ n



样 数据采样
R/W
单片机
AD0~ 7
ALE
R/W
D0~ 7
A0~ 7
R/W
存储器
Di Qi
G
地址
锁存器
AD8~ n A8~ n
4,62128与 MCS51的连接
二,只读存储器 ROM的扩展
工作时,ROM中的信息只能读出,要用特殊方式写入 (固化信息 ),失电后可保持
信息不丢失。
1,掩膜 ROM:不可改写 ROM
由生产芯片的厂家固化信息。在最后一道工序用掩膜工艺写入信息,用户只可读。
2,PROM:可编程 ROM
用户可进行一次编程。存储单元电路由熔丝相连,当加入写脉冲,某些存储单元
熔丝熔断,信息永久写入,不可再次改写。
3,EPROM:可光擦除 PROM
用户可以多次编程。编程加写脉冲后,某些存储单元的 PN结表面形成浮动栅,
阻挡通路,实现信息写入。用紫外线照射可驱散浮动栅,原有信息全部擦除,便可再
次改写。
4,EEPROM:可电擦除 PROM
既可全片擦除也可字节擦除,可在线擦除信息,又能失电保存信息,具备 RAM、
ROM的优点。但写入时间较长。
27xx的引脚
1,只读存储器 ROM的扩展
2,27128与 MCS51的连接
与 RAM的不同点:
只有一片 ROM时,CE可以接地
OE接 PSEN
3,MCS51同时扩展 ROM和 RAM
1.线选法
微型机剩余高位地址总线直接连接各存储器片选线。
2.译码片选法
微型机剩余高位地址总线通过地址译码器输出片选信
号。多片存储器芯片组成大容量存储器连接常用片选方法。
三、地址译码的方法
1,线选法
P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 A7 A6 A5 A4 A3 A2 A1 A0
Ⅰ, 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =C000H
~ 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 ~ DFFFH
Ⅱ, 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 =A000H
~ 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ~ BFFFH
Ⅲ, 0110 0000 0000 0000~ 0111 1111 1111 1111 =6000H~ 7FFFH
2.译码片选法
3-8 地址译码器,74LS138
Y0,Y1,Y2分别连接三片存储器的片选端 CE1,CE2,CE3
各片存储器芯片分配地址,AB13
AB14
AB15
+5V
A Y0
B Y1
C Y2
G1 …
G2A.B Y7
74LS138
CE1
CE2
CE3
Ⅰ, 0000H~ 1FFFH
Ⅱ, 2000H~ 3FFFH
Ⅲ, 4000H~ 5FFFH
当单片机外接芯片较多, 超出总线负载能力, 必须加
总线驱动器 。
单向驱动器
74LS244用于
地址总线驱动
双向驱动器
74LS245用于
数据总线驱动
3,微型机总线扩展驱动
5.2 I/O接口扩展电路设计
一, 8255可编程并行 I/O接口扩展
二, 8155可编程 I/O接口扩展
三, 串行口扩展 I/O接口
一, 8255可编程并行 I/O接口扩展
利用 TTL芯片, COMS锁存器, 三态门等接口芯片把 P0接
口扩展, 常选用 74LS273,74LS373,74LS244等芯片 。
1、简单 I/O接口扩展
2,8255可编程并行 I/O接口扩展与电路设计
( 1) 8255内部结构及引脚功能
数据总线
缓冲器
B组
控制
A组 端口A
(8 )
A组 端口C
上半部
(4 )
B组 端口C
下半部
(4 )
B组 端口B
(8 )
A组
控制
读写
控制
逻辑
RD
WR
A0
A1
RESET
CS
D 7 ~D 0
I/O
P A 7 ~P A 0
I/O
P C 7 ~P C 4
I/O
P C 3 ~P C 0
I/O
P B 7 ~P B 0
( 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),方式选择
D7 D6 D5 D4 D3 D2 D1 D0
C 口下半部
B 口控制位
B 组方式控制位,D 2 = 1 方式1,反之方式0
C 口上半部控制位
A 口控制位
A 组方式控制 D 6 D 5 = 0 0 方式0
01 方式1
1X 方式2
总控制选择位 D 7 = 1 选择A,B,C 口工作方式
D7=0 C口进行 位操作
4,8255扩展电路及地址设置
( 1) 8255地址口确定
( 2), 8255初始化
例如,欲设置 8255的 A,B,C口全为输出状态 (或输出方
式 ),控制字为 80H。
程序 (结合上图 )如下:
MOV DPTR,#0003H ; 8255控制口地址 DPTR
MOV A,#80H ;控制字送 A
MOVX @DPTR,A ;控制字写入控制寄存器
对 8255的 3个端口的工作方式预先设置。设置
控制字经控制口写入。
4,8255扩展电路及地址设置
( 1) 8255地址口确定
二,8155可编程 I/O接口扩展设计
1,I/O接口线地址数据线控制线
2,8155功能及操作
( 1) 8155具有 3种功能:
扩展 RAM,I/O接口使用、定时器使用
( 2)状态寄存器格式
X TIM
INTE
B
B
BF
INTR
B
INTE
A
A
BF
INTR
A
A口 中断请求标志
A口 缓冲器满/空 标志
允许A口 中断标志
B口 中断请求标志
B口 缓冲器满/空 标志
D7 D6 D5 D4 D3 D2 D1 D0
允许B口 中断标志
定时器中断标志,计数满该位置“1”中断请求,复位后为“0”

可编程定时 /计数器两个 8位寄存器组成,低
8位和高 6位存放计数初值,最高 2位控制定时器
的工作方式
( 3)定时器使用
M2 M1 T13 T12 T11 T10 T9 T8
D7 D6 D5 D4 D3 D2 D1 D0
M2 M1 T13 T12 T11 T10 T9 T8
D7 D6 D5 D4 D3 D2 D1 D0
定时方式 计数初值高6 位 计数初值低8 位
3,8051单片机与 8155接口电路举例
三、串行口扩展 I/ O接口
? 1、使用移位寄存器作为锁存或输入信号的接
口,可以方便地扩展并行输入、输出口。这种
方法不占用片外 RAM地址
? 2、串行口扩展并行输入口
3、串行口扩展并行输出口