第8章_单片机
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8.3
扩展数据存储器
89C51/S51单片机片内RAM仅有128字节,需要较大容量RAM时, 就需要片外扩展数据存储器RAM,最大可扩展64 KB。 单片机是面向控制的,实际需要扩展容量不大,一般采用静 态RAM较方便,如6116(2K×8位),6264(8K×8位), 62256(32K×8位) 。 与动态RAM相比,静态RAM无须考虑保持数据而设置的刷新电 路,故扩展电路较简单。 扩展数据存储器空间地址,由P2口提供高8位地址,P0口分时 提供低8位地址和用作8位双向数据总线。 片外数据存储器RAM的读/写由89C51/S51的RD(P3.7)和 WR(P3.6)信号控制。
单片机原理及接口技术
8.3.1
常用的数据存储器芯片
数据存储器用于存储现场采集的原始数据、运算结 果等,所以,外部数据存储器应能随机读/写,通 常由半导体静态随机存取存储器RAM组成。
E2PROM芯片也可用作外部数据存储器,且掉电后信 息不丢失。并/串行E2PROM芯片
单片机原理及接口技术
静态RAM(SRAM)芯片 目前常用的静态RAM电路有6116、6264、62256等。
单片机原理及接口技术
8.4.2
简单I/O接口的扩展方法
在很多应用系统中,采用74系列TTL电路,将并行数据输 入或输出。
在图8-19中,采用74HC244作扩展输入。244是一个三态 输出八缓冲器及总线驱动器,带负载能力强。 74HC273(8D锁存器)作扩展输出。 它们直接挂在P0口线上。 89C51/S51单片机把外扩I/O口和片外RAM统一编址,每 个扩展的接口相当于一个扩展的外部RAM单元,访问外部 接口就像访问外部RAM一样,用的都是MOVX指令,并产 生RD(或WR)信号。
单片机原理及接口技术
8.3.3
89C51/S51扩展2 KB RAM
图8-29所示电路为89C51/S51地址线直接外扩2 KB静态RAM 6116的连线图。 8282(同74HC373)锁存低8位地址; 89C51/S51的WR(P3.6)和RD(P3.7) 分别与6116写允许端WE和读允许端OE连接, 以实现写/读控制;
存储单元的数目。
例如,n位地址可以产生2n个连续地址编码,因此,可访 问2n个存储单元。89C51/S51单片机存储器扩展最多可达 64 KB,即216个地址单元,因此,最多需16位地址。
单片机原理及接口技术
2. 数据总线 数据总线(Data Bus,DB)用于单片机与存储器之间 或单片机与I/O端口之间传送数据。 数据总线的位数与单片机处理数据的字长一致。 例如,89C51/S51单片机是8位字长,所以,数据 总线的位数也是8位。数据总线是双向的,可以进 行两个方向的数据传送。
图8-27 常用静态RAM芯片引脚图
单片机原理及接口技术
其引脚功能如下:
A0~Ai
D0~D7 CE OE WE VCC GND
地址输入线,i=10(6116),12(6264),14(62256)。
双向三态数据线; 片选信号输入线,低电平有效,当6264的26脚(CS)为高
6116的片选控制端CE接地为常选通,地址为 0000H~07FFH。
单片机原理及接口技术
•图8-29
89C51/S51扩展2 KB RAM
单片机原理及接口技术
89C51/S51单片机直接扩展2 KB RAM 6116,当容量不够 时,可直接外扩准静态RAM芯片6264、62256或628128等,
电平,且CE为低电平时。才选中该片; 读选通信号输入线,低电平有效; 写允许信号输入线,低电平有效; 工作电源,电压为+5 V;
单片机原理及接口技术
单片机原理及接口技术
8.3.2
访问片外RAM的操作时序
这里包括从RAM中读和写两种操作时序,但基本过程是相同
的。 这时所用的控制信号有ALE和RD(读)或WR(写)。 P0口和P2口,传送片外RAM地址和读/写的数据。
单片机原理及接口技术
图8-25 89C51/S51扩展的 并行三总线
图8-26 89C51/S51地址总线 扩展电路
单片机原理及接口技术
8.2.2
系统扩展的实现
1. 以P0口作地址/数据总线 此处的地址总线是指系统的低8位地址线。
因为P0口线既用作地址线,又用作数据线(分时使 用),因此,需要加一个8位锁存器。 在实际应用时,先把低8位地址送锁存器暂存,然 后再由地址锁存器给系统提供低8位地址,而把P0 口线作为数据线使用。
单片机原理及接口技术
1.
读片外RAM操作时序
WR引脚与 RAM芯片的WE引脚连接,RD引脚与芯片OE引脚连接。
89C51/S51单片机若外扩一片RAM,则应将其
ALE信号的作用即锁存低8位地址,以便读片外RAM中的数 据。 读片外RAM周期时序如图8-28(a)所示。
单片机原理及接口技术
单片机原理及接口技术
片外三总线结构
所谓总线,就是连接系统中各扩展部件
的一组公共信号线。按照功能,通常把
系统总线分为3组,即地址总线、数据
总线和控制总线。
单片机原理及接口技术
1. 地址总线
地址总线(Address Bus)用于传送单片机送出的地址信号,
以便进行存储单元和I/O端口的选择。
地址总线是单向的,地址总线的数目决定了可直接访问的
第8章 单片机小系统及片外扩展
89C51/S51单片机芯片内集成了计算机 的基本功能部件,一块芯片就是一个完整的 最小微机系统,但片内存储器的容量、并行 I/O端口、定时器等内部资源都还是有限的。 扩展应尽量采用串行扩展方案。通过 SPI或I2C总线扩展E2PROM、A/D、D/A、 显示器、看门狗、时钟等芯片,占用MCU 的I/O口线少,编程也方便。
单片机原理及接口技术
编写一个程序,使开关K3~K0表示0或1开关量, 由P1.3~P1.0输入,再由P1.7~P1.4输出开关量到 发光二极管(逻辑电平指示灯)上显示出来。 在执行程序时,不断改变开关K3~K0的状态,可观 察到发光二极管(逻辑电平指示灯)的变化。 开关状态输入显示实验参考程序如下: LOOP: MOV A,#0FH ;P1口为输入,先送1 MOV P1,A MOV A,P1 ;P1口状态输入 SWAP A ;开关状态到高4位 MOV P1,A ;开关状态输出 AJMP LOOP ;循环
单片机原理及接口技术
用89C51/S51单片机P1 口的P1.3~P1.0作为数 据输入口,连接到实验 装置逻辑开关K3~K0的 插孔内; P1.7~P1.4作为输出口, 连接到实验装置发光二 极管(逻辑电平指示 灯)LED3~LED0的插孔 内。
图8-18 89C51/S51与开关(键)和LED接口示意图
ALE的下降沿②用来把低8位地址信息锁存到外部锁存器74HC373内③,
而高8位地址信息一直锁存在P2口锁存器中。 在S3状态,P0口总线变成高阻悬浮状态④。 在S4状态,RD信号变为有效⑤(是在执行“MOVX A,@DPTR” 后使 RD信号有效),RD信号使得被寻址的片外RAM略过片刻后把数据送 上P0口总线⑥,当RD回到高电平后⑦,P0总线变为悬浮状态。 至此,读片外RAM周期结束。
单片机原理及接口技术
2. 以P2口的口线作高位地址线
如果使用P2口的全部8位口线,再加上P0口提供的 低8位地址,便可形成完整的16位地址总线,使单 片机系统的寻址范围达到64 KB。 但实际应用系统中,高位地址线并不固定为8位, 需要用几位就从P2口中引出几条口线。
单片机原理及接口技术
3. 控制信号线
单片机原理及接口技术
尽管89C51/S51单片机号称有4个Байду номын сангаас/O口,共32条口 线,但由于系统扩展的需要,真正能作为数据I/O 使用的,就只剩下P1口和P3口的部分口线了。
特别需要强调的是,程序存储器不应再采用外扩的方
案。因为89系列单片机内有4~32 KB的不同型号产品
可供选择。
单片机原理及接口技术
电路也比较简单,无须刷新电路,线路图同图8-29,只
是增加几根地址线而已。
单片机原理及接口技术
8.4 简单并行I/O口的扩展
对于89C51/S51的某些场合,可扩展简单的 并行I/O口芯片,以满足较小系统的需要。
单片机原理及接口技术
8.4.1
I/O口的直接输入/输出
由于89C51/S51的P0~P3口输入数据时可以 缓冲,输出时能够锁存,并且有一定的带负 载能力 I/O口可以直接接外部设备,如开关、LED 发光二极管、BCD码拨盘和打印机等。
单片机原理及接口技术
3.
控制总线
控制总线(Control Bus,CB)是单片机发出的以控
制片外ROM、RAM和I/O口读/写操作的一组控 制线。
单片机原理及接口技术
8.2
并行扩展三总线的产生
89C51/S51单片机由于受引脚的限制,数据线和地址线是复 用的,而且由I/O口线兼用。 为了将它们分离出来,以便同单片机片外的芯片正确地连接, 需要在单片机外部增加地址锁存器,从而构成与一般CPU相 类似的片外三总线,如图8-25所示。 由89C51 P0口送出的低8位有效地址信号是在ALE(地址锁存 允许)信号变高的同时出现的,并在ALE由高变低时,将出现 在P0口的地址信号锁存到外部地址锁存器74HC373中。
单片机原理及接口技术
输入控制信号由P2.0和RD合成。当二者同时为0 电平时,“或”门输出0,选通74HC244,将外 部信号输入到总线。无键按下时,输入为全1;若 按下某键,则所在线输入为0。 可见,输入和输出都是在P2.0为0时有效,244和 273的地址都为FEFFH(实际只要保证P2.0=0,其 他地址位无关),但由于分别是由RD和WR信号控 制,因此,不会发生冲突。 系统中若有其他扩展RAM或其他输入/输出接口, 则必须将地址空间区分开。这时,可用线选法; 而当扩展较多的I/O接口时,应采用译码器法。
图8-28
89C51/S51访问片外RAM操作时序图
单片机原理及接口技术
在第一个机器周期的S1状态,ALE信号由低变高①,读RAM周期开始。
在S2状态,CPU把低8位地址送到P0口总线上,把高8位地址送上P2口
(在执行“MOVX A,@DPTR”指令阶段时才送高8位;若是“MOVX A, @Ri”指令,则不送高8位)。
单片机原理及接口技术
244是一个三态输出八缓冲器及总线驱动器
单片机原理及接口技术
74HC273(8D锁存器)
单片机原理及接口技术
图8-19 74系列芯片扩展
单片机原理及接口技术
图8-19中,P0口为双向数据线,既能从74HC244 输入数据,又能将数据传送给74HC273输出。 输出控制信号由P2.0和WR合成。当二者同时为0 电平时,“或”门输出0,将P0口数据锁存到 74HC273,其输出控制着发光二极管LED,当某 线输出0电平时,该线上的LED发光。
单片机原理及接口技术
图8-28
89C51/S51访问片外RAM操作时序图
单片机原理及接口技术
2.
写片外RAM操作时序
向片外RAM写(存)数据,是89C51/S51执行“MOVX @DPTR,A” 指令后产生的动作。这条指令执行后,在 89C51/S51的WR 引脚上产生WR信号的有效电平,此信号使RAM的WE端被 选通。 写片外RAM的时序如图8-28(b)所示。 开始的过程与读过程类似,但写的过程是CPU主动把数据送 上P0口总线,故在时序上,CPU先向P0总线上送完低8位地址 后,在S3状态就将数据送到P0总线③。此间,P0总线上不会 出现高阻悬浮现象。 在S4状态,写控制信号WR有效,选通片外RAM,稍过片刻, P0上的数据就写到RAM内了。
除了地址线和数据线之外,在扩展系统中还需要一些控
制信号线,以构成扩展系统的控制总线。其中包括:
使用ALE作为地址锁存的选通信号,以实现低8位地址的
锁存;
以PSEN信号作为扩展程序存储器的读选通信号; 以EA信号作为内、外程序存储器的选择信号; 以RD和WR作为扩展数据存储器和I/O端口的读/ 写选通信号。执行MOVX指令时,这两个信号分别自动有 效。