RAM是用来存放各种数据的,MCS-51系列8位单片机内部有128 B RAM存储器,CPU对内部RAM具有丰富的操作指令。但是,当单片机用于实时数据采集或处理大批量数据时,仅靠片内提供的RAM是远远不够的。此时,我们可以利用单片机的扩展功能,扩展外部数据存储器。
常用的外部数据存储器有静态RAM(Static Random Access Memory—SRAM)和动态RAM(Dynamic Random Access Memory—DRAM)两种。前者读/写速度高,一般都是8位宽度,易于扩展,且大多数与相同容量的EPROM引脚兼容,有利于印刷板电路设计,使用方便;缺点是集成度低,成本高,功耗大。后者集成度高,成本低,功耗相对较低;缺点是需要增加一个刷新电路,附加另外的成本。
MCS-51单片机扩展片外数据存储器的地址线也是由P0口和P2口提供的,因此最大寻址范围为64 KB(0000H~FFFFH)。
一般情况下,SRAM用于仅需要小于64 KB数据存储器的小系统,DRAM经常用于需要大于64 KB的大系统。
实例:在一单片机应用系统中扩展2 KB静态RAM。
芯片选择
单片机扩展数据存储器常用的静态RAM芯片有6116(2K×8位)、6264(8K×8位)、62256(32K×8位)等。根据题目容量的要求,我们选用SRAM 6116。
6116的管脚与EPROM 2716管脚兼容,管脚如图所示
硬件电路
单片机与6116的硬件连接如图所示。
连线说明
6116与单片机的连线如下:
地址线:A0~A10连接单片机地址总线的A0~A10,即P0.0~P0.7、P2.0、P2.1、P2.2共11根。
数据线:I/O0~I/O7连接单片机的数据线,即P0.0~P0.7。
控制线:CE片选端连接单片机的P2.7,即单片机地址总线的最高位A15;OE读允许线连接单片机的读数据存储器控制线RD;写允许线WE连接单片机的写数据存储器控制线WR。
片外RAM地址范围的确定及使用
按照上图的连线,片选端直接与某一地址线P2.7相连,这种扩展方法称为线选法。显然,只有P2.7=0,才能够选中该片6116,故其地址范围确定如下:
如果与6116无关的管脚取0,那么,6116的地址范围是0000H~07FFH;如果与6116无关的管脚取1,那么,6116的地址范围是7800H~7FFFH。
单片机对RAM的读写除了可以如下指令:
MOVX @DPTR,A ;64 KB内写入数据
MOVX A,@DPTR ;64 KB内读取数据
外,还可以使用以下对低256 B的读写指令:
MOVX @Ri,A ;低256 B内写入数据
MOVXA,@Ri ;低256 B内读取数据
关键字:单片机 数据存储器 RAM
引用地址:
单片机数据存储器RAM的扩展实例
推荐阅读最新更新时间:2024-03-16 13:24
基于STC12C5410AD单片机的数字电源设计
引言 数字电源目前主要应用在数据通信、存储、服务器等性能和智能化要求较高的领域。在美国TI公司等半导体企业的推动下,数字电源技术有了快速发展。 业界都比较认同TI公司对数字电源所下的定义: 数字电源就是数字化控制的电源产品,它能提供配置、监控和管理功能,并延伸到对整个回路的控制。 数字电源具有以下特点:数字化控制的电源转换,以MCU(微控制器)或DSP(数字信号处理器)为核心,它能实现PWM(脉宽调制)稳压回路控制、软件启动等功能;数字电源管理,对电压和电流等电源输出进行配置的功能;采用整合数字电源(fusion digital power)技术,实现了开关电源中模拟组件与数字组件的优化组合,例如,功率
[单片机]
AC89C2051在全数字变频控制器中的设计与应用
1.前言 在家电或工业控制中,经常需要根据环境条件的改变而改变供电频率,以便取得最佳的启动力矩、最佳的转速、最佳的风量或制冷/热量。本文介绍一种全数字的变频控制器,它可以根据外界环境的变化(如压力、温度、输入电压和人为地设定等),自适应地改变输出电源频率,达到对电机调速的目的。在控制算法中,采用模糊理论,设定隶属函数,求出控制输入的隶属度,并进行模糊规则判断,得出模糊的控制输出。然后进行模糊量的计算,得出精确的控制输出,达到控制运行频率的目的。经过试运行表明:自适应能力强,控制精度高,特别是解决了一般低压带负荷启动的困难。 2.变频控制器系统结构原理 下面,以1.5kW输出功率的变频控制器为例进行介绍,该系统结构如图1所
[单片机]
基于89C51单片机的远程数据采集系统设计
工业生产过程中常常需要对温度、湿度、压力、流量等各种工艺参数随时进行检测和监控,同时还要将检测到的数据及时传递给上位机,以实现对参数的随机查询,对信息的存储与处理,及时调整控制方案,提高生产效率和产品质量。为此,笔者以89C51单片机作为主控制器设计了一种简单易行的远程数据采集系统。 1 系统硬件电路的设计 远程数据采集系统框图,由两部分组成:一是基于89C51实现的现场数据采集电路,二是PC机与89C51之间的远程通讯电路。 1.1 89C51数据采集系统 数据采集系统的硬件原理如图1所示。 该系统选用89C51单片机作为主控制器,此芯片与8051完全兼容,且内部带有4 KB闪速可编程、可擦除PEROM
[单片机]
如何改进8051微控制器创建可执行高达33MIP的高性能直接替代品
本文介绍了达拉斯半导体如何改进传统的8051微控制器,创建可执行高达33MIP的高性能直接替代品。多个数据指针、扩展内存寻址(高达 16MB)和闪存等附加功能提高了设备的速度和实用性。 系统设计人员知道,微控制器是任何嵌入式系统的核心,而这正是行动发生的地方。ADI公司的全资子公司达拉斯半导体一直在重新定义无处不在的8051微控制器。也许过去10年中最大的改进是在指令执行速度方面。我们的 1 个机器周期时钟处理器达到了一个非凡的性能目标 — 每个机器周期 1 个时钟,目前为每秒 33 万条指令 (MIPS)。利用这一内核,我们的安全、联网和混合信号 8051 微控制器系列继续为功能集成和创新设定标准。 为什么基于古老的 8
[单片机]
PIC单片机浮点数与十进制数转换
重点说明浮点数的格式,十进制数与浮点之间的相互转换以及程序设计。 在我们设计的仪表中采用PIC系列单片机,碰到了浮点数的运算问题,查阅其有关资料发现,其浮点数的格式及其与十进制数之间的转换,与我们常用的MCS-51单片机所提供的三字节、四字节浮点数完全不同,本文将说明其浮点数的格式及其与十进制数之间的转换和程序设计步骤。 1 浮点数的格式 Microchip公司单片机所采用的浮点数格式是IEEE-754标准的变异型。32位浮点数格式为: 其中:×表示一位二进制数0或1;eb 为指数的偏差;S为浮点数的符号位,S=0为正数,S=1为负数;小数点“·”在符号位S的右边;BY0 BY1 BY2
[单片机]
提供远程更新,ST推出全新网联汽车MCU
大容量片上存储器,支持ECU软件安全OTA更新,便于车企简化车辆维护步骤,向客户推广更多产品服务 千兆和百兆以太网端口驱动高速车载网络 完全兼容EVITA的硬件安全模块保障网联汽车和乘客的安全 横跨多重电子应用领域的全球领先的半导体供应商意法半导体 推出最新的高性能多接口多核汽车微控制器,让网联汽车变得更安全,应用开发更灵活,为获得最新的性能升级提供保障。 随着车辆动力总成、车身、底盘和信息娱乐系统等关键功能日益软件化,通过空中下载技术(OTA)安全地提供修复补丁、可选包等更新程序,汽车厂商可以提高成本效益,为用户提供更多便利。意法半导体最新的Chorus汽车微控制器拥有最先进的安全技术和充裕的片上代码存储容量
[汽车电子]
单片机定时器设置的门铃
这是一个单片机定时器设置的门铃程序,附带源代码及文档,用定时器设计的门铃说明:按下按键时蜂鸣器发出叮咚的门铃声。 程序 /* 下载程序后按键K1按下就会触发蜂鸣器门铃“叮咚”响 */ #include reg52.h typedef unsigned char u8; typedef unsigned int u16; sbit beep=P1^5; sbit k1=P3^1; u8 ding,dong,flag,stop; u16 n; void delay(u16 i) { while(i--); } void time0init() //定时器0初始化 { TMOD=0X01; //
[单片机]
单片机如何提高编程效率优化程序?
在进行8051单片机应用系统程序设计时,编程都往往少不了要直接操作系统的各个存储器地址空间。 C51程序经过编译之后产生的目标代码具有浮动地址,其绝对地址必须经过BL51连接定位后才能确定。 为了能够在C51程序中直接对任意指定的存储器地址进行操作,可以采用扩展关键字“at”、指针、预定义以及连接定位控制命令。 在这些方法中,本人认为最简单而有效的方法是用“ _at_ ”关键字来对指定变量存储器空间绝对地址来指定。一般格式如下: 数据类型 标识符 _at_ 地址常数 其中: (1).存储器类型: idata、data、xdata等C51能够识别的所有类型,最好不要省略。 (2).数据类型: 可以用int、long
[单片机]