80C51单片机存储器的扩展
2.3 80C51单片机的并行端口结构

80C51单片机的并行端口结构80C51共有4个8位的并行I/O口,分别记作P0、P1、P2、P3。
被归入专用寄存器。
I/O端口有串行和并行之分,串行I/O端口一次只能传送一位二进制信息,并行I/O端口一次能传送一组二进制信息。
(1)并行I/O口的功能①PO口:电路中包括一个数据输出锁存器和两个三态数据输入缓存器,另外还有一个数据输出的驱动和控制电路。
这两组端口用来作为CPU与外部数据存储器、外部程序存储器和I/O扩展口的总线接口,而不像P1、P3直接用做输出口。
P0.0~P0.7,P0口是8位双向I/O口,P0.i引脚可以是P0.0到P0.7的任何一位,即在P0口有8个与上图相同的电路组成。
该8位都是漏极开路(漏极开路即高阻状态,适用于输入/输出,其可独立输入/输出低电平和高阻状态)输出,每个引脚可以驱动8个LS型TTL负载且内部没有上拉电阻,执行输出功能时外部必须接上拉电阻(10K 即可)。
若要执行输入功能,必须先输出高电平方能读取该端口所连接的外部数据;若在访问外部存储器(RAM、ROM)和扩展的I/O口时,P0可作为地址总线(A0~A7)和数据总线(D0~D7),分时进行工作。
在指令的前半周期,P0口作为地址总线的低8位,在指令的后半周期为8位的数据总线。
P1口的各个单元:输入缓冲器:在P0口中,有两个三态的缓冲器,三态门有三个状态,即在其输出端可以是高电平、低电平和高阻状态(或称为禁止状态)。
上面一个是读锁存器的缓冲器,也就是说,要读取D锁存器输出端Q的数据,那就得使读锁存器的这个缓冲器的三态控制端(上图中标号为…读锁存器‟端)有效。
要读取P0.i引脚上的数据,也要使标号为…读引脚‟的这个三态缓冲器的控制端有效,引脚上的数据才会传输到我们单片机的内部数据总线上。
D锁存器:存储器中可以存放电荷,加一个小的存储器的单元,并在它的面前加一个开关,要让这一位输出时,就把开关打开,信号就进入存储器的单元,然后马上关闭开关,这一位的状态就被保存下来,直到下一次命令让它把开关再打开为止,这就是锁存器。
80C51单片机的硬件结构之CPU与存储器

2.1 80C51系列单片机结构
2.1.1 内部结构框图
1.1个8位的CPU 2.1个片内振荡器和时钟电路 3.程序存储器 4 KB的掩膜ROM,用于存放程序、原始数 据或表格。 4.数据存储器 5.64KB总线扩展控制器 6.4个8位并行I/O口(P0、P1、P2、P3)
7.1个全双工串行接口
堆栈指针SP:存放栈顶的地址,内容可软件设置初值,单片机 复位时SP = 07H。CPU每往堆栈中存放一个数,SP都会先自动 加1,CPU每从堆栈中取走一个数,SP都会自动减1,SP始终指向 堆栈最顶部的数据的地址。
(5)数据指针DPTR
分成DPL(低8位)和DPH(高8位)两个寄存器,用来存放16 位地址值。
P0.4 84H
P0.3 83H
P0.2 82H
P0.1 81H
P0.0 80H
(1)累加器Acc
最常用的寄存器,所有的运算类指令都要使用它。累加器 在指令中的助记符为A,自身带有全零标志Z,若A=0则Z=1; 若A≠0则Z=0。该标志常用作程序分支转移的判断条件。
(2)B寄存器
80C51中,在做乘、除法时必须使用B寄存器,不做乘、除法 时,可作为一般的寄存器使用。
① 掩膜ROM。 ② 可编程的只读存储器(PROM)。 ③ 可改写的只读存储器EPROM。 ④ 可电改写只读存储器(EEPROM)。
随机存取存储器(RAM)
① 静态SRAM。 ② 动态DRAM。
可现场改写的非易失性存储器
① 快擦写存储器(FLASH)。 ② 铁电存储器FRAM。
2.存储单元和存储单元地址
1.80C51片内数据存储空间(低128B)
(1)工作寄存器区(00H~1FH) 作用:有专用于工作寄存器操作的指令,读写速度比一般内 RAM要快,指令字节比一般直接寻址指令要短,还具有间 址功能,能给编程和应用带来方便。 工作寄存器区分为4个区:0区、1区、2区、3区。每区有8 个寄存器:R0~R7,寄存器名称相同。但是,当前工作的 寄存器区只能有一个,由PSW中的D4、D3位决定。
《单片机原理与应用及上机指导》第7章:80C51单片机系统扩展

表7.4 常用SRAM芯片的主要性能
表7.6 80C51与6264的线路连接
7.2 并行I/O扩展
MCS-51系列单片机共有4个并行I/O口,分别是P0、P1、 P2和P3。其中P0口一般作地址线的低8位和数据线使用; P2口作地址线的高8位使用;P3口是一个双功能口,其第 二功能是一些很重要的控制信号,所以P3一般使用其第二 功能。这样供用户使用的I/O口就只剩下P1口了。另外,这 些I/O口没有状态寄存和命令寄存的功能,所以难以满足复 杂的I/O操作要求。因此,在大部分MCS-5l单片机应用系 统的设计中都不可避免地要进行I/O口的扩展。 7.2.1 并行I/O扩展原理 7.2.2 常用的并行I/O扩展芯片
线选法
若系统只扩展少量的RAM和I/O口芯片,可采用线选法。 线选法是把单片机高位地址分别与要扩展芯片的片选端相连,控制选 择各条线的电路以达到选片目的,其优点是接线简单,适用于扩展芯 片较少的场合,缺点是芯片的地址不连续,地址空间的利用率低。
图7.7 片外RAM的读时序
图7.8 片外RAM的写时序
4.数据存储器芯片及扩展电路
(1) 数据存储器 数据存储器扩展常使用随机存储器芯片,用得较多的是 Intel公司的6116(容量为2KB)和6264(容量为8KB), 其性能 如表7.4所示。 (2) 数据存储器扩展电路 80C51与6264的连接 如表7.6所示。
全地址译码法
利用译码器对系统地址总线中未被外扩芯片用到的高位地址线进行译 码,以译码器的输出作为外围芯片的片选信号。常用的译码器有 74LS139、74LS138、74LS154等。优点是存储器的每个存储单元只 有唯一的一个系统空间地址,不存在地址重叠现象;对存储空间的使 用是连续的,能有效地利用系统的存储空间。缺点是所需地址译码电 路较多,全地址译码法是单片机应用系统设计中经常采用的方法 。
n第6章80C51单片机的系统扩展

第六章80C51单片机的系统扩展
系统扩展是指单片机内部各功能部件不 能满足应用系统要求时,在片外连接相应的外 围芯片以满足应用系统要求。80C5l系列单片 机有很强的外部扩展能力,外围扩展电路芯片 大多是一些常规芯片,扩展电路及扩展方法较 典型、规范。用户很容易通过标准扩展电路来 构成较大规模的应用系统。 80C51系列单片机的系统扩展有程序存 储器(ROM)扩展、数据存储器(RAM)扩展、I/O 口扩展、中断系统扩展以及其它特殊功能扩展
第六章80C51单片机的系统扩展
6.1.2外部串行扩展性能 1 80C51系列单片机的串行总线结构 80C51系列单片机的串行总线包括: SPI(Serial Peripheral Interface)三线总线 和I2C公用双总线两种。 • (1) SPI三线总线结构 SPI三线总线结构是一个同步外围接口,允 许MCU与各种外围设备以串行方式进行通信。 一个完整的SPI系统有如下的特性:
第六章80C51单片机的系统扩展
(2) I2C公用二总线结构
在器件(IC为集成电路芯片)之间, 使用两根信号线(SDA和SCL)串行的 方法进行信息传送的并允许若干兼容器 件共享的二线总线,称为I2C总线。I2C 总线系统的示意图见图6-4。SDA线称 为串行数据线,其上传输双向的数据; SCL线称为串行时钟线,其上传输时钟 信号,用来同步串行数据线上的数据。
第六章80C51单片机的系统扩展
通常情况下,采用80C51/87C51的 最小应用系统最能发挥单片机体积小、 成本低的优点。但在许多情况下,构成 一个工业测控系统时,考虑到传感器接 口、伺服控制接口以及人机对话接口等 的需要,最小应用系统常常不能满足要 求,因此,系统扩展是单片机应用系统 硬件设计中最常遇到的问题。
第9章 80C51单片机系统扩展技术

15
9.2.2 地址锁存器芯片
1. 锁存器74LS373
74LS373的结构及引脚
04:17
16
2. 锁存器8282
功能及内部结构与74LS373完全一样,只是其引脚的排列与 74LS373不同 ,8282的引脚如下图。
04:17
17
引脚的排列为绘制印刷 电路板时的布线提供了方便。
04:17
18
04:17
10
地址总线(AB): 由P2口提供高8位地址线, 此口具有输出锁存 的功能, 能保留地址信息。 由P0口提供低8位地址线。
数据总线(DB): 由P0口提供。 此口是双向、 输入三态控制的 8位通道口。
控制总线(CB): 扩展系统时常用的控制信号为:
ALE——地址锁存信号, 用以实现对低8位地址的锁存。
04:17
13
9.2.1 数据存储器芯片
典型型号有:6116、6264、62128、62256。+5V电源供电, 双列直插,6116为24引脚封装,6264、62128、62256为28 引脚封装。
6116:2KB 6264:8KB 62128:16KB 62256:32KB
04:17
14
04:17
3. 锁存器74LS573
输入的D端和输出的Q端也是依次排在芯片的两侧,与锁存 器8282一样,为绘制印刷电路板时的布线提供了方便。
04:17
19
9.2.3 数据存储器的扩展电路
需要考虑与80C51相连的存储芯片引脚:
80C51 CPU
存储芯片
(1)地址总线P0.0-P0.7 74LS373 (2)地址总线P2.0-P2.n-9 (3)数据总线的P0.0-P0.7
80C51单片机原理

80C51单片机原理RAM地址寄存器 RAM 128B 程序地址寄存器P0驱动器 P2锁存器 P2驱动器P1锁存器 暂存器2 B 寄存器 4KB ROM暂存器1ACC SP P0锁存器 PC PC 增1 缓冲器 P3锁存器 OSC中断、串行口及定时器PSW ALU DPTRP1驱动器 P3驱动器XTAL1XTAL2 P0.0~P0.7 P2.0~P2.7 P3.0~P3.7 P1.0~P1.7 RST ALEV CCV SS定时控制 指令译码器 指令寄存器 PSEN EA表2-1 P3口各引脚与第二功能表PSW 的各位定义见表80C51 P0~P3接口功能简见大多数口线都有双重功能,介绍如下: 1、P0口具有双重功能:(1) 作为通用I/O ,外接I/O 设备。
(2) 作为地址/数据总线。
在有片外扩展存储器的系统 中,低8位地址和数据由P0口分时传送。
PSW 位地址 PS W.7PSW .6PSW .5 PSW .4 PSW .3 PSW .2 PSW .1 PSW .0 位标志CY ACF0RS1RS0OVF1P2、P1口是唯一的单功能口:作为输入/输出口,P1口的每一位都可作为输入/输出口。
3、P2口具有双重功能:(1)作为输入/输出口。
(2)作为高8位地址总线。
在有片外扩展存储器的系统中,高8位地址由P2口传送。
4、P3口具有双重功能:(1)作第一功能使用时,其功能为输入/输出口。
(2)作第二功能使用时,每一位功能定义如表2.1所示。
80C51单片机的4个I/O口都是8位双向口,这些口在结构和特性上是基本相同的,但又各具特点,以下将分别介绍之。
图2-9 P0口某位的结构图2-10 P1口某位的结构图2-11 P2口某位的结构图2-12 P3口某位的结构P0~P3口使用时应注意事项1、如果80C51单片机内部程序存贮器ROM够用,不需要扩展外部存贮器和I/O接口,80C51的四个口均可作I/O口使用。
单片机存储器的扩展(part 1 80C51)

在软件中,可用数据查询方式检测写操作中”页存 储周期“是否完成。“页存储”期间,如果对2864执行 读操作,那么读出的是最后写入的字节,若芯片的转储 工作未完成,则读出数据的最高位是原来写入字节最高 位的反码。据此,CPU可判断芯片的编程是否结束。如 果CPU读出的数据与写入的数据相同,表示芯片已完成 编程,CPU可继续向芯片加载下一页数据。
/OE:数据输出允许信号
6116共有四种工作方式:未选中、禁止、读出、写入(见教材 P127表5-4/表6.2)。
5.4.4数据存储器扩展举例 在 80C51 的扩展系统中,片外数据存储器一般由随 机存取存储器组成,最大可扩展64KB。数据存储器扩展 与程序存储器扩展在数据线、地址线的连接上是完全相 同的。所不同的只在于控制信号,程序存储器使用 /PSEN作为读选通信号,而数据存储器则使用/RD和/WR 分别作为读、写选通信号 1、单片数据存储器扩展 例:见图所示(或见教材P127图5.11/图6.9)。这里使用 了一片 6116 实现了 2KB RAM 扩展。在扩展连接中,以 /RD 信号接芯片的 /OE 端,以 /WR 信号接 /WE 端,进行 RAM芯片的读写控制。由于假定系统只有一片 6116,因 此没有使用片选信号,而把/CE端直接接地。这种情况下, 6116的地址范围是0000~07FFH。 与程序存储器相比较,数据存储器的扩展连接在数 据线、地址线的连接方法上是一致的,所不同的只是在 控制信号线上的差别。
第6章 80C51单片机的系统扩展

80C51单片机的系统扩展 第6章 80C51单片机的系统扩展
6.1.2 常用程序存储器芯片
1、Flash(闪速 、 闪速)ROM 闪速
FlashROM是一种新型的电擦除式存储器,它是在EPROM工艺的基础上 增添了芯片整体电擦除和可再编程功能。它即可作数据存储器用,又可作程序 存储器用,其主要性能特点为: (1)电可擦除、可改写、数据保持时间长。 (2)可重复擦写/编程大于1万次。 (3)有些芯片具有在系统可编程ISP功能。 (4)读出时间为ns级,写入和擦除时间为ms级。 (5)低功耗、单一电源供电、价格低、可靠性高,性能比EEPROM优越。 FlashROM型号很多,常用的有29系列和28F系列。29系列有29C256 (32K×8)、29C512(64K×8)、29C010(128K×8)、29C020 (256K×8)、29040(512K×8)等,28F系列有28F512(64K×8)、 28F010(128K×8)、28F020(256K×8)、28F040(512K×8)等。
80C51单片机的系统扩展 第6章 80C51单片机的系统扩展
6.2.1 常用数据存储器芯片
静态存储器(SRAM)具有存取速度快、使用方便和价 格低等优点。但它的缺点是,一旦掉电,内部所有数据信 息都会丢失。常用的SRAM有6116(2KB×8)、6264 (8KB×8)、62128(16KB×8)、62256(32KB×8) 等芯片。常用SRAM芯片管脚和封装如图6-8所示,引脚功 能如下。 ① A0~A15:地址输入线。 ② D0~D7:双向三态数据总线,有时也用I/O0~I/O7表示。 ③CE:片选线,低电平有效。6264的26脚(CS)必须接高 电平,并且CE为低电平时才选中该芯片。 ④OE:读选通线,低电平有效。 ⑤WE:写选通线,低电平有效。 ⑥ VCC:电源线,接+5V电源。 ⑦ NC:空。 ⑧ GND:接地。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程设计任务书
机械工程学院学院机制1211 班学生张会利-39号
课程设计题目:
单片ROM扩展
一、课程设计工作日自 2015 年 1 月 19 日至 2015 年 2 月 23 日
二、同组学生:张会利
三、课程设计任务要求(包括课题来源、类型、目的和意义、基本要求、完成时间、主要参考资
料等):
1、目的及意义
(1)巩固和深化《单片机原理及应用》课程的理论知识,培养,分析、解决实际问题的能力。
(2)掌握单片机基本运用技术及汇编语言的基本方法,能根据题目要求确定设计思路、绘制流程图、编制并调试汇编语言程序,得出结果。
2、主要内容
用一片Intel2732为80C51单片机扩展一个4KB的外部程序存储器,要求使用73LS138译码器,地址范围为A000H~AFFFH。
请连线并写明扩展步骤。
3、基本要求
(1)分析题目,写出详细分析过程。
(2)绘制工作流程图。
(3)编制程序,画出硬件线路图。
(4)上机调试程序,运行结果。
(5)编写设计说明书,包括1—4个步骤的内容。
(6)答辩。
4、主要参考资料
单片机基础及应用,赵巍,冯娜,马苏常,刘玉山等,清华大学出版社,2009年指导教师签字:教研室主任签字:
程序设计说明书
(一)芯片简介
1.2732简介:
2732是容量为4k×8位(4KB)。
采用单一+5V供电,最大静态工作电流100mA, 电流35mA出时间最大为250ns. 2732的封装形式为DIP24,管脚如图所示。
●A0~A11 :12条地址线,表示有212个地址单元
●O0~O7 :8条数据线,表示地址单元字长8位
●CE :片选控制输入端,低电平有效
●OE/Vpp :双功能管脚,低电平时,允许2732输出数据
●Vcc :工作电平+5V
●GND :芯片接地端
2.74LS373简介:
74LS373是带三态缓冲输出的8D锁存器,由于单片机的三片总线结构中,数据线与地址线的低8位公用P0口,因此必须用地址所存器将地址信号和数据信号区分开。
74L373的锁存控制端G直接与单片机的锁存控制信号和数据信号ALE相连,在AEL的下降沿锁存低8位地址。
3.74LS138简介:
74LS138有3个“选择输入端”C.B.A.它可以选择8个输出线Y0—Y7,当C.B.A 的信号组合选择到某个输出线时,这个输出线有效,即输出为低电平,74LS138还有3个“使能输入端”(又称为“允许端或控制端”)G1. G2A.G2B, 当其有效时,即G1。
G2A=0. G2B=0时译码器才能工作。
(二)程序说明
1)芯片的选择及确定片数
根据题目容量要求扩展4KB的外部程序存储器。
选择一片Intel2732芯片。
74LS138译码器。
2)分配地址范围。
采用一片2732芯片扩展80C51的片外程序存储空间,分配的地址范围为A000H~AFFFH,如表1表示采用完全译码芯片选择。
即所在地址线全部连接,所以每一个单元只占用唯一一个地址,不存在地址重复问题。
3)连线说明如下:
(1)地址线:单片机扩展片外存储器时,按照分配地址范围连线图所示:地址是由P0和P2口提供的,2732的12条地址线(A0—A11)中。
低八位A0~A7通过所存器74LS373与P0口连接,高4位A8—A11直接与P2.0—P2.3连接,P2口本身有所存功能。
注意,锁存器的所存使能端G必须和单片机的ALE管脚相连。
(2)数据线:2732的8位数据线直接与单片机的P0口相连,因此,P0口使一个分时复用的地址数据线。
(3)控制线:CPU执行2732中存放的程序指令时,取指令阶段就是对2732进行操作。
注意,CPU对EPROM只能进行读操作,不能进行写操作。
CPU对2732的读操作控制都是通过控制线实现的。
2732控制线的连接有以下几条:
CE:Intel2732的片选信号由3-8译码器产生,
OE:接80C51的读选通信号PSEN端,在访问片外程序存储器时,只要PSEN 端出现负脉冲,即可从2732中读出程序。
2732的片选信号由3—8译码器产生。
80C51的P2口的高四位线与3-8译码器片选端连线如下:
P2.7:G1
P2.6:A P2.5:B P2.4:C
Y2:2732的CE
3/8译码器的功能真值表。
G1=1 G2A=0 G2B=0,当选中,P2.4=0 P2.5=1 P2.6=0 P2.7=1时,符合所分配的地址范围。
注意,80C51中在扩展并使用外部程序存储器时,必须使EA接地。
(4)存储器扩展连接图如图所示:
两片2732的扩展连接图
一片2732扩展后地址范围
外部程序存储器扩展小结
通过一周的程序设计的练习,我们巩固和深化《单片机原理及应用》课程的理论知识,分析,解决实际问题的能力。
初步掌握了外部程序扩展设计的思路和方法,了解了73LS138译码器和2732锁存器的使用,掌握了如何设计电路原理图,最重要是提高了我们的动手操作能力。