单片机存储器扩展原理,包括外设接口方式等教学文案.ppt





《单片机存储器扩展原理,包括外设接口方式等教学文案.ppt》由会员分享,可在线阅读,更多相关《单片机存储器扩展原理,包括外设接口方式等教学文案.ppt(47页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机存储器扩展原理,包括外设接口方式等第八章单片机应用系统扩展设计基础MCS-51单片机虽然在一块芯片上集成了计算机的基本功能部件已具备了很强的功能。但在比较复杂的应用场合,其存储器I/O端口或中断源等往往略显不够、所以往往要根据需要对单片机系统进行功能扩展。特别是对8051型这种内部无程序存储器单片机必须有外部扩展程序存储器EPROM,才可用于实际应用系统。本章重点介绍常用扩展接口电路及其设计方法。2716/2732与单片机的连接如图8.1:2716是2K8位的EPROM芯片,有11根地址线A0A10。它们分别与8031单片机的P0口(P0.0P0.7)和P2口的P2.0P2.2连接。27
2、16的21脚VPP(编程电源端)接+5V,OE与PSEN连接,CE接地,当PSEN=0选通信号为低电压时,选通读出2716的指令码。PSEN=1,则2716数据线输出为高阻态。2716的地址范围为0000H07FFH。2716/2732与单片机的连接如图8.1:8.1.1EPROM程序存储器扩展设计2732是4K8的EPROM。引脚排列与2716基本一致其A0A11分别接8031的P0.0P0.7和P2.0P2.3。20脚OE/UPP与PSEN相连,CE接地。2732的地址范围为0000H0FFFH。在扩展中,有一个问题要在设计中提请注意:P2口除被使用的口线外,多余的引脚不宜作通用I/O线,
3、否则会给软件设计和使用上带来麻烦。多片的存储器扩展设计:它的设计方法可用P2的高位地址线连接各片存储器的片选线CE。而后求出它们的不同的地址范围图8.2扩展2KB/4KB程序存储器例8-3:用一片27128EPROM扩展16KB的程序存储器。27128具有14根地址线A0A13可选中片内16KB程序存储器空间中任一单元,按照图8.3的接法:片选信号CE由P2.7送出低电平有效。则27128的地址范围是4000H7FFFH。8.1.2扩展E2PROME2PROM(即EEPROM)是一种电擦除电可编程的只读存储器。其特点是能在线擦除和改写存储单元内容。具有在断电情况下能保持存储单元的内容的性能E2
4、PROM还像静态RAM一样,可以在线进行读写操作。下面仅对2864AE2PROM进行介绍。图8.4所示为8031外扩一片8KBE2PROM2864A组成的三片系统。2864A的引脚与6264相同并兼容。在读工作方式时,2864A的引脚及功能与2764相同。图中,2864A的片选端CE与高位地址线P2.7连接,P2.7=0时 才 能 选 中 2864A。所 以,2864的 地 址 范 围 为0000H1FFFH。这8KB存储器既可用作程序存储器,也可以用作数据存储器(掉电时,数据不易失)。结合硬件电路,编写一个写入一页(16个字节)数据到2864AE*EPROM的子程序。设被写入的数据取自803
5、1内部RAM40H开始的源数据区中。写入程序如下:SOURCEDATA40H;源数据区首地址OBJECTDATA0000H;E2PROM首地址LENGTHDATA10H;一页数据长度MOVR0,#SOURCE;取源地址MOVR1,#LENGTH;取数据块长度MOVDPTR,#OBJECT;取目的地址LOOP:MOVA,R0;取源数据MOVXDPTR,A;写入E2PROM中MOVR2,DPL;暂存目的地址指针MOVR3,DPHINCR0;源地址指针指向下一个单元INCDPTR;目的地址指针向下一单元DJNZR1,LOOP;字节数未满,转移DECR0;源地址指针指向最后页尾MOVDPL,R2;目的
6、地址指针指向最后一个字节MOVDPH,R3CHECK:MOVXA,DPTR;读出E*ERPOM最后写入的字节XRLA,R0;与原数据比较JBACC.7,CHECK;最高位不同,继续查询RET;最高位相同,一页写完82数据存储器扩展设计由于8051单片机的片内RAM仅有128B,当系统需要较大容量RAM时就需要片外扩展数据存储器RAM,最大可扩展64KB,常用的RAM芯片分静态和动态两种,一般采用静态RAM较 方 便,如 6116(2K*8),6264(8K*8),动 态 RAM有DPRM2164(8KB)等,与动态RAM相比,静态RAM无须考虑保持数据而设置刷新电路,故扩展电路较简单。扩展数据
7、存储器的地址空间同外扩程序存储器一样,用P2口提供高8位地址,P0口分时提供低8位地址和8位数据,片外数 据 存 储 器 RAM的 读 和 写 由 8051的 RD(P3.7)和WR(P3.6)信息控制。注意:虽然所扩展RAM和EPROM会共处同一地址,由于片外程序存储器EPROM的输出允许端(OE)受PSEN信号控制,控制信号及使用的指令不同,故两者不会发生总线冲突。有时数据系统设计需要,可同时扩展多个不同芯片,CPU选择扩展的芯片的过程称片选。片选在电路形式上有两种,一种叫线选法,另一种叫译码法。下面分列予以介绍1线选法线选法是把单片机高位地址分别与要扩展的芯片的片选端相连,控制选择各条线
8、的电路以达到选片目的,其优点是接线简单,适用于扩展芯片较少的场合,缺点是芯片的地址不连续,地址空间的利用率低。例如,选用8051单片机扩展2片8KB数据存储器6264和2片8KB的程序存储器2764芯片,采用线选法电路如图8.6所示,图中数据线地址线及控制线连接方法与前面电路相同,不再重复。(1)片选线和控制信号地 址 线 P2.5直 接 接 到 IC1(2764)和 IC3(6264)的 片 选 CE端,P2.6直 接 接 到IC2(2764)和IC4(6264)的片选CE端。当P2.6=0,P2.5=1时,IC2和IC4的片选端CE为低电平,IC1和IC3的CE端全为高电平。当P2.6=1
9、,P2.5=0时IC1和IC3的CE端都是低电平,每次同时选中两个芯片,具体哪个芯片工作还要通过PSEN,WR,RD控制线控制。当片外程序存储区读选通信号PSEN为低电平,肯定到ROM中读程序;当读、写选通信号RD或WR为低电平则到RAM中读数据或往里写入数据。由于都用P0口作为数据线,所以PSEN、WR、RD三个信号时序上是分开的,不可能同时有效。(2)各芯片的地址范围有上图当P2.6=1,P2.5=0时,IC1和IC3的地址范围,当A15=0时,1译码法译码法是通过译码电路来选择扩展芯片的片选端,常用的译码电路有74LS138,74LS139等(1)74LS138与74LS139译码器工作
10、原理74LS138是一个“38”译码器,即它有3个输入端,A,B,C和8个输出端Y0Y7,输出端Y0Y7,输出端可分为扩展芯片的片选端相连。3个输入端可组成8种输入状态,分别对应8种输出状态,8种输出中每一种只能有一位是“0”,其余7位全是“1”。只有片选端和74LS138输出端为“0”的接口相连的芯片被选中,保证了每个芯片地址的唯一性。74LS138的引脚图如图8.7(a)所示(2)采用74LS138译码电路举例图 8.8是 一 个 采 用74LS138译码扩展8块27162K的存储器,共16K。根据74LS138的功能分析,当P2.5、P2.4、P2.3全为0时,Y0=0,选中2716(0
11、),2716(0)的地址为:即:8000H87FFH。同理可得:2716(1)的地址:8800H8FFFH;2716(2)的地址:9000H97FFH;2716(3)的地址:9800H9FFFH;2716(4)的地址:A000HA7FFH;2716(5)的地址:A800HAFFFH;2716(6)的地址:B000HB7FFH;2716(7)的地址:B800HBFFFH。2716(0)2716(7)在空间上是完全连续的。A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A01000 0000000000001000 011111111111(2)采用74LS139译码电路举
12、例图8.9是一个采用74LS139译码扩展4个芯片的电路,图中74LS139的4个输出端Y0Y3分 别 连 接 4个 芯 片IC1,IC2,IC3,IC4的片选端。Y0Y3每次只能有一位是“0”,其他三位全为“1”,输出为“0”的一端所连接的芯片被选中。译码法地址分配,首先要根据译码芯片真值表确定译码芯片的输入状态,由此再判断其输出端选中芯片的地址。如图,所以可以看出IC1的地址范围方法如下:则IC1为:0000H1FFFH,其中A15,A14,A13为000是根据139的真值表所确定的。同理可求出:IC2 2000H3FFFH;IC3 4000H5FFF;IC4 6000H7FFF;其地址空
13、间是连续的。A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0000000000000 0000000111111111 11118.3并行I/O扩展设计从前面学习中知道8051在系统扩展时,P0,P2口常被用为地址线,P0又被兼做数据线,P3口被专用线占用,只有P1口可以用做I/0接口,所以只有一个8位I/O接口往往是不够的,故I/O接口也需要扩展,本节重点介绍I/O接口扩展方法及应用实例。I/O接口一般有二种扩展方法:总线扩展法,串行口扩展法。总线扩展又可分为简单I/0接口扩展和可编程I/O接口扩展。简单I/O接口扩展常用芯片有TTL、CMOS锁存器、三态门,如7
14、4系列的373、244、273、367等,可编程芯片有8255、8155等。8.3.1简单的I/O扩展设计在单片机应用系统中,利用TTL芯片,CMOS锁存器和三态门等接口芯片将P0接口扩展。如图8.10所示是一个利用74LS273和74LS244的扩展电路,74LS244是一个三态输出入缓冲器,带负载能力强,74LS273是8D锁存器做扩展输出,它们直接挂在P0口线上,在图中可见273输出接8个LED,、以显示开关状态,某位低电平时,二极管发光,通过244的8个输入端分别接8个按钮开关,273和244的工作要P2.0,RD,WR三条控制线控制。其工作原理如下:当P2.0,WR=0,(RD=1)
15、选中74LS273芯片,CPU通过P0接口输出数据锁存到74LS273,74LS273的输出端低电平位对应的LED发光二极管点亮;当P2.0=0,RD=0(WR=1)时选中74LS244,此时若无健按下,输入全为高电平,当某健按下时对应位输入为“0“,74LS244的输入端不全为”1“,其输入状态通过P0接口数据线被CPU读入机内。总之在图中只要保证P2.0端低电平就有可能使扩展输入口或输出口工作,至于哪一个口工作受WR和RD控制线控制,二者不会同时为“0”,故在图中两个扩展芯片可共用一个地址,不会发生冲突。扩展口地址确定原则,只要保证P2.0为“0”,其他地址位或“0”或“1”即可。如地址用
16、FEFFH(无效位全为“1”),用0000H(无效位全为“0”)。输出程序段:MOVA,#DATA;数据AMOVDPTR,#0FEFFH;I/0地址DPTRMOVXDPTR,A;WR为低电平,数据经74LS273口输出输入程序段:MOVDPTR,#0FEFFH;I/O地址DPTRMOVXA,DPTR;RD为低电平,74LS244接口数据读入内部RAM例5-4:要求编程把按健状态通过图8.10中的发光二极管显示出来LP:MOVDPTR,#0FEFFH;输入口地址DPTRMOVXA,DPTR;键状态送AMOVXDPTR,A;A数据送显示输出口SJMPLP(输入、输出共用一个地址)反复连续执行825
17、5是Intel公司生产的一种可编程芯片,8255合理设置,应用灵活,可与MCS-51单片机系统总线直接接口。8255是一个有40引脚双列直插型可编程芯片,内部结构及引脚如图8.11所示。(1)8255地址口确定图8.13中8255只有3根线接于地址线。片选CS、地址选择端A1、A0。分别接于P2.7、P0.1、P0.0其他地址线全悬空。显然只要保证P0.7为低电平时,选中该8255,若 P0.1、P0.0为“00”选中8255的A口,同理P0.1、P0.0为“01”、“10”、“11”分别选中B口、C口及控制口。若地址口用16位表示,其他无用端全设为“1”,则8255的A、B、C及控 制 口
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 存储器 扩展 原理 包括 外设 接口 方式 教学 文案

限制150内