单片机存储器扩展
- 格式:pptx
- 大小:486.17 KB
- 文档页数:16
第八章MCS-51单片机存储器的扩展第一节MCS-51单片机存储器的概述(一)学习要求1、熟悉MCS-51 单片机的系统总线及系统总线扩展结构2、掌握常用的片选方法:线选法和全地址译码法。
(二)内容提要1、三总线的扩展方法单片机内资源少,容量小,在进行较复杂过程的控制时,它自身的功能远远不能满足需要。
为此,应扩展其功能。
MCS-51单片机的扩展性能较强,根据需要,可扩展。
三总线是指地址总线、数据总线、控制总线。
1)地址总线MCS-51 单片机地址总线宽度为16 位,寻址范围为64K。
地址信号:P0 作为地址线低8 位,P2 口作为地址线高8 位。
2)数据总线MCS-51 单片机的数据总线宽度为8 位。
数据信号:P0 口作为8 位数据口,P0 口在系统进行外部扩展时与低8 位地址总线分时复用。
3)控制总线主要的控制信号有/WR 、/RD 、ALE 、/PSEN 、/EA 等。
2、系统的扩展能力MCS-51 单片机地址总线宽度为16 位,因此它可扩展的程序存储器和数据存储器的最大容量是64K(216)。
1)线选法线选法就是将多余的地址总线(即除去存储容量所占用的地址总线外)中的某一根地址线作为选择某一片存储或某一个功能部件接口芯片的片选信号线。
一定会有一些这样的地址线,否则就不存在所谓的“选片”的问题了。
每一块芯片均需占用一根地址线,这种方法适用于存储容量较小,外扩芯片较少的小系统,其优点是不需地址译码器,硬件节省,成本低。
缺点是外扩器件的数量有限,而且地址空间是不连续的。
2)全地址译码法由于线选法中一根高位地址线只能选通一个部件,每个部件占用了很多重复的地址空间,从而限制了外部扩展部件的数量。
采用译码法的目的是减少各部件所占用的地址空间,以增加扩展部件的数量。
3)译码器级连当组成存储器的芯片较多,不能用线选法片选,又没有大位数译码器时,可采用多个小位数译码器级连的方式进行译码片选.4)译码法与线选法的混合使用译码法与线选法的混合使用时,凡用于译码的地址线就不应再用于线选,反之,已用于线选的地址线就不应再用于译码器的译码输入信号.(三)习题与思考题1. 简要说明MCS-51 单片机的扩展原理。
8051单片机存储器扩展摘要:在一个单片机应用系统中通常包含有信息输入与输出、数据的存储与处理等。
虽然MCS-51单片机自身具有存储器和I/O接口部件,但是当其用于控制功能强大或特殊的工业测控系统却往往显得资源不足,不能满足需要。
因此,考虑到这方面的因素,便提供了易于实现的系统扩展方案,以实现外部存储器和I/O接口部件的扩展。
系统扩展可分为并行扩展和串行扩展两种方式。
关键词:8051单片机,存储器,扩展,电原理图,PCB板,元件封装,元件库等。
一、设计方案设计都是根据现实的需要而来,当单片机自身的内部资源不够时,便需要对其进行扩展。
这里使用的是系统并行扩展的三总线构造。
其中选用了地址锁存器74LS373、程序存储器2764和数据存储器6264。
二、电路原理芯片6264占用系统地址空间为:(0000~1FFFH)or(2000~3FFFH)or(4000H~5FFFH)or(6000H~7FFFH)其原理图如下:整个扩展口电路用线选法完成,其电路原理图如下:三、单元电路及芯片功能介绍MCS-51单片机的引脚功能:1.电源引脚Vcc接+5V,GND接地;2.时钟信号引脚X1,X2为外部时钟信号引脚;3.控制线RST/Vpd作为RST使用时为复位输入端,作为Vpd使用时可接备用电源保持信息不丢失。
EA/Vpp引脚,EA为访问内部或外部程序存储器的选择信号,Vpp可接21V编程电压;PSEN引脚为外部程序存储器读选通控制信号,低电平有效。
4.输入/输出口线程序存储器2764主要引脚有;地址线(A0-A12)、数据线(O0-O7)、控制线OE/ Vpp,输出使能信号/编程电压;正常操作时,低电平允许数据输出,通常与单片机的PSEN信号相连,固化程序时,此引脚接编程电压、片选线CE,低电平允许芯片工作,高电平禁止工作。
四、参考文献[1]潘永雄.电子线路CAD使用教程.西安:西安电子科技大学出版社,2001[2]赵广林.轻松跟我学Protel99DXP电路设计与实例精解.北京:人民邮电出版社,2006[3]吴培明.电子技术虚拟实验.北京:机械工业出版社,1999电原理图PCB板顶层底层元件清单。
单片机存储器扩展在单片机的应用中,常常会遇到内部存储器容量不足的情况。
这时候,就需要对单片机的存储器进行扩展,以满足系统对存储容量的需求。
单片机的存储器可以分为程序存储器和数据存储器。
程序存储器用于存储单片机运行的程序代码,而数据存储器则用于存储程序运行过程中的数据。
当单片机内部的存储器无法满足应用需求时,就需要通过外部扩展来增加存储容量。
在进行存储器扩展之前,我们需要了解单片机的存储器寻址方式。
不同的单片机可能有不同的寻址方式,但通常都包括直接寻址、间接寻址和变址寻址等。
了解寻址方式对于正确进行存储器扩展至关重要。
对于程序存储器的扩展,常用的方法是使用外部只读存储器(ROM),如 EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)等。
扩展时,需要将外部 ROM 与单片机的地址总线、数据总线和控制总线正确连接。
地址总线用于指定存储器的地址,数据总线用于传输数据,控制总线则用于控制存储器的读写操作。
以常见的 8051 单片机为例,它的地址总线为 16 位,可以寻址64KB 的存储空间。
如果要扩展 32KB 的程序存储器,我们可以选用一片容量为 32KB 的 EPROM 芯片,如 27256。
将 EPROM 的地址线 A0A14 与单片机的地址总线 A0 A14 相连,数据线 D0 D7 与单片机的数据总线 D0 D7 相连。
控制总线中的片选信号(CS)通常通过地址译码器来产生,以确保在特定的地址范围内选中该 EPROM 芯片。
在数据存储器的扩展方面,常用的是外部随机存取存储器(RAM),如静态 RAM(SRAM)和动态 RAM(DRAM)。
SRAM 速度较快,但价格相对较高;DRAM 价格较低,但需要不断刷新。
同样以 8051 单片机为例,如果要扩展 8KB 的数据存储器,可以选用一片 6264 SRAM 芯片。
连接方式与程序存储器扩展类似,地址线和数据线分别与单片机的对应总线相连。
实验一:扩展存储器读写实验一.实验要求编制简单程序,对实验板上提供的外部存贮器(62256)进行读写操作。
二.实验目的1.学习片外存储器扩展方法。
2.学习数据存储器不同的读写方法。
三.实验电路及连线将P1.0接至L1。
CS256连GND孔。
四.实验说明1.单片机系统中,对片外存贮器的读写操作是最基本的操作。
用户藉此来熟悉MCS51单片机编程的基本规则、基本指令的使用和使用本仿真实验系统调试程序的方法。
用户编程可以参考示例程序和流程框图。
本示例程序中对片外存贮器中一固定地址单元进行读写操作,并比较读写结果是否一致。
不一致则说明读写操作不可靠或该存储器单元不可靠,程序转入出错处理代码段(本示例程序通过熄灭一个发光二极管来表示出错)。
读写数据的选用,本例采用的是55(0101,0101)与AA(1010,1010)。
一般采用这两个数据的读写操作就可查出数据总线的短路、断路等,在实际调试用户电路时非常有效。
用户调试该程序时,可以灵活使用单步、断点和变量观察等方法,来观察程序执行的流程和各中间变量的值。
2.在I状态下执行MEM1程序,对实验机数据进行读写,若L1灯亮说明RAM读写正常。
3.也可进入LCA51的调试工具菜单中的对话窗口,用监控命令方式读写RAM,在I状态执行SX0000↓ 55,SPACE,屏幕上应显示55,再键入AA,SPACE,屏幕上也应显示AA,以上过程执行效果与编程执行效果完全相同。
注:SX是实验机对外部数据空间读写命令。
4.本例中,62256片选接地时,存储器空间为0000~7FFFH。
五.实验程序框图实验示例程序流程框图如下:六.实验源程序:ORG 0000HLJMP STARTORG 0040HSTART:MOV SP,#60HMOV DPTR,#0000H ;置外部RAM读写地址MOV A,#55H ;测试的数据一MOV B,AMOVX @DPTR,A ;写外部RAMMOVX A,@DPTR ;读外部RAMXRL A,B ;比较读回的数据JNZ ERRORMOV A,#0AAH ;测试的数据二MOV B,AMOVX @DPTR,AMOVX A,@DPTRXRL A,BJZ PASS ;测试通过ERROR: SETB P1.0 ;测试失败,点亮LEDSJMP $PASS: CPL P1.0 ;LED状态(亮/灭)转换MOV R1,#00H ;延时DELAY: MOV R2,#00HDJNZ R2,$DJNZ R1,DELAYLJMP START ;循环测试END实验二P1口输入、输出实验一.实验要求1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
实验5 存储器扩展实验一、实验目的1.掌握PC存储器扩展的方法。
2.熟悉6264芯片的接口方法。
3.掌握8031内部RAM和外部RAM的数据操作二、实验设备PC机、星研Star16L仿真器系统+仿真头PODPH51(DIP)、EL-Ⅱ型通用接口板实验电路,PROTEUS仿真软件。
三、实验仿真:1)proteus仿真电路图2)实验程序;NAME T7_1_RAMORG 0000HSTART: MOV DPTR,#7000H ;起始地址送DPTRLOOP1: MOV A,#00H ;置数据初值LOOP: MOVX @DPTR,AADD A,#01H ;数据加一INC DPTR ;地址加一MOV R0,DPHCJNE R0,#80H,LOOP ;数据是否写完,没写完则继续SS: SJMP SSEND3)仿真结果运行上面的程序,由于设定起始地址为7000,而P2.0~P2.4分别作为地址线A8~A12,P2.5~P2.7分别接74ls138的ABC三个口,且38译码器的Y2接6264-U3的片选口CE,与接6264-U4的片选口CE,所以此时CBA为011,则选择的存储器为U4,将00~FF这组数据分别送到U4的以7000H为起始地址的单元中,并循环放置(即proteus仿真结果中的1000H 地址);若将程序中的起始地址改为5000H,检验是否写完数据的数值#80H改为#60H,则此时CBA为010,此时选择的是U3存储器,结果与选择U4时一样。
证明这些地址都可用,如果不可用,则在写入数据时所有地址单元中的数值保持为FF。
四、实验台操作1)接线实验台已将内部线路接好,可用地址范围为4000~7FFFH2)实验结果实验结果基本与仿真结果一致。
单片机与外部存储器交互扩展存储空间的方法在现代电子设备中,单片机作为一种高度集成的控制器芯片,被广泛应用于各个领域。
然而,由于单片机的存储容量有限,为了满足复杂的应用需求,通常需要扩展存储空间。
本文将介绍单片机与外部存储器的交互原理以及几种常见的方法来扩展存储空间。
一、交互原理在单片机中,外部存储器通常指的是非易失性存储器,如EEPROM、Flash等。
通过与单片机进行数据的读写操作,可以实现数据的长期存储和共享。
外部存储器与单片机之间的交互主要依靠通信接口,如SPI、I2C、串口等。
下面将分别介绍这几种接口的原理。
1. SPI接口SPI(Serial Peripheral Interface)是一种全双工的串行通信接口,使用4根线(SCK、MOSI、MISO、CS)进行数据传输。
在SPI接口中,单片机作为主设备发起数据传输,而外部存储器作为从设备响应主设备的指令并传输数据。
通过SPI接口,单片机可以直接读写外部存储器中的数据,实现存储空间的扩展。
2. I2C接口I2C(Inter-Integrated Circuit)是一种系列总线通信协议,通过两根线(SCL、SDA)进行数据传输。
在I2C接口中,单片机既可以作为主设备发送数据,也可以作为从设备接收数据。
通过I2C接口,单片机可以与多个外部存储器进行通信,实现存储空间的扩展。
3. 串口接口串口接口是一种常见的通信接口,通过TX(发送)和RX(接收)两根线进行数据传输。
在串口接口中,单片机通过发送和接收数据来与外部存储器进行通信。
虽然串口的传输速率较低,但它简单易用,适合与存储器进行简单的数据交互。
二、扩展存储空间的方法在了解了单片机与外部存储器的交互原理后,下面将介绍几种常见的方法来扩展存储空间。
1. 并行存储器并行存储器是一种传统的扩展存储空间的方法,它通常由存储芯片组成,通过地址线和数据线与单片机相连。
并行存储器的特点是读写速度快,但容量有限。