51单片机扩展外部RAM

发布者:hzx312895379最新更新时间:2015-09-25 来源: eefocus关键字:51单片机  扩展  外部RAM 手机看文章 扫描二维码
随时随地手机看文章
今天这个是是以前做过的,没做成,扩展ROM的时候失败了~~

不过今天主要的就是扩展外部的RAM,这个相对比较简单点,不想外部的ROM还要设置太多的编译器~~

单片机扩展外部RAM

一、扩展总线

1、简介(这种扩展是基于总线扩展的,所以,P0、P2口就已经不可以再做它用了)

1)数据总线宽度为8位,由P0口提供;

2)地址总线宽度为16位,可寻址范围2的16次,也就是64K。低8位A7~A0由P0口经地址锁存器提供,高8位A15~A8由P2口提供。由于P0口是数据、地址分时复用,所以P0口输出的低8位必须用地址锁存器进行锁存;

3)控制总线由RD、WR、PSEN、ALE和EA等信号组成,用于读/写控制、片外RAM选通、地址锁存控制和片内、片外RAM选择。

地址锁存器一般选用带三态输出缓冲输出的8D锁存器74LS373。[转载]51单片机—单片机扩展外部RAM—6264—08

2、片外RAM的操作时序

进行RAM的扩展,其扩展方法较为简单容易,这是由单片机的优良扩展性能解决的。单片机的地址总线为16位,扩展的片外RAM的做大容量为64KB,地址为0000H~FFFFH。

1)由于51单片机采用不同的控制信号指令,尽管RAM和ROM地址是重叠的,也不会发送混乱。

2)51单片机对片内和片外ROM的访问使用相同的指令,两者的选择是由硬件实现的(就是不用咱们关心的,还有他们的存储也是硬件自动实现的,你只要连接好引线就哦了~~~剩下的就是写点指令控制控制了)

3)芯片选择现在多采用线选法,地址译码法用的渐少。ROM和RAM共享数据总线和地址总线。

 

二、RAM的扩展原理

外部RAM的扩展是由P2口提供高8位地址,P0口分时地址作为第八位地址线和8位双向数据线

外部RAM的读时序为(这个是不用关心的[转载]51单片机—单片机扩展外部RAM—6264—08,只要能看懂就哦了~~你只要写出你想要的语句来,由于单片机P0口有A/D功能,所以只要连接好硬件,还有就是知道我之前在计算机语言栏目里写过的那篇文章(貌似是~C51的运算量)里面的那些绝对地址的访问啊~还有存储器类型~~)

[转载]51单片机—单片机扩展外部RAM—6264—08

外部RAM的读时序为:

 

[转载]51单片机—单片机扩展外部RAM—6264—08

这里稍微说说吧:

51单片机的CPU在访问片外RAM的一个机器周期中,信号ALE出现两次(正脉冲),RAM选通信号也两次有效,这说明在一个机器周期内,CPU两次访问片外RAM,也即在一个机器周期内可以处理两个字节的指令代码,所以在51单片机指令系统中有很多单周期双字节指令。[page]


三、RAM的扩展方法

1、数据存储器

[转载]51单片机—单片机扩展外部RAM—6264—08

2、数据存储器扩展电路

[转载]51单片机—单片机扩展外部RAM—6264—08

好了~~

可以贴出程序来喽~~

[转载]51单片机—单片机扩展外部RAM—6264—08

[转载]51单片机—单片机扩展外部RAM—6264—08

程序也就那么一点~~

将就着看吧~~

[转载]51单片机—单片机扩展外部RAM—6264—08~~

RAM_6264.c(本来想用那个指针访问的~~[转载]51单片机—单片机扩展外部RAM—6264—08~~试了半天~~不对啊~~无语了~~)

//------------------------------------------------------------------------------
//这个程序主要是用来验证扩展RAM的~~
//扩展RAM主要的就是连接好电路~~具体的时序不用操心~~
//这里边主要用到了我的写的计算机语言那一篇文章的内容~~
#include"reg52.h"
#include"absacc.h"        //C51运行库中的预定义宏,来对51单片机的code、data、pdata和xdata空间进行绝对寻址        
//------------------------------------------------------------------------------
typedef unsigned char uchar;
typedef unsigned int  uint;
xdata uint x1 _at_ 0x0000;      //使用c51扩展关键字 _at_ 来实现绝对地址的访问,注意:使用它定义的变量一定要是全局变量~~
            //一开始我都给忘记了~~擦~~ 
//------------------------------------------------------------------------------
//main
void main()
{
 uchar x2;

 x1=0x5566;         //给片外存储器的0x0000赋值0x5566

 XBYTE[0x0010]=0x55;       //XBYTE[0x0010]访问片外RAM的0010字节单元,并给它赋初值
 x2=XBYTE[0x0010];       //将XBYTE[0x0010]单元的字节(注意定义的是uchar型~~)赋给x1
}

关键字:51单片机  扩展  外部RAM 引用地址:51单片机扩展外部RAM

上一篇:单片机实现按键实现4X4keys
下一篇:#单片机#ds18b20 单位转换 30度报警

推荐阅读最新更新时间:2024-03-16 14:33

基于51单片机的汉字LCD智能显示模块设计
  引言   在电子产品设计中,人机交互显示界面是必不可少的工作,目前一般使用的液晶显示器均为七段笔划式,只能显示数字和少量字符,功能往往受到局限,对于较复杂的字符或图形则无能为力。而lcd智能型显示模块则是一种低功耗、低损耗、低价值的显示器件,它不但可以显示各式各样的字符、汉字和图形,同时具有可编程能力,且与单片机接口方便,基于以上优点,lcd智能显示模块获得了广泛的应用。   系统组成   本系统主要由三部分组成,分别为单片机,lcd模块和flash字库,图1所示是该系统的硬件原理框图,由于显示所需要占用的资源过多(本设计采用的是16×16点阵,每个汉字存储需要32个字节),而单片机内部ram资源及其有限,所以系统设计时
[单片机]
基于<font color='red'>51单片机</font>的汉字LCD智能显示模块设计
51单片机位逻辑运算指令
位与 指令 ANL C,bit ;CY与指定的位地址的值相与,结果送回CY ANL C,/bit ;先将指定的位地址中的值取出后取反,再和CY相与,结果送回CY,但注意,指定的位地址中的值本身并不发生变化。 例:ANL C,/P1.0 设执行本指令前,CY=1,P1.0等于1(灯灭),则执行完本指令后CY=0,而P1.0也是等于1。 可用下列程序验证: ORG 0000H AJMP START ORG 30H START: MOV SP,#5FH MOV P1,#0FFH SETB C ANL C,/P1.0 MOV P1.1,C ;将做完的结果送P1.1,结果应当是P1.1上的灯亮,而P1.0上的灯还是
[单片机]
安森美半导体扩展高分辨率PYTHON CMOS图像传感器系列
新的图像传感器扩展系列的分辨率至超过2500万像素,为工业成像应用带来高分辨率全局快门能力 推动高能效创新的安森美半导体(ON Semiconductor,美国纳斯达克上市代号: ON)已增添4款新的高分辨率器件到获奖的PYTHON CMOS图像传感器系列。现共计9款不同器件提供从VGA到超过2500万像素的分辨率,这高性能系列解决工业成像通用应用的需求,如机器视觉、检查及运动监控、安防、监控和智能交通系统(ITS)等。 新的PYTHON 10K、 PYTHON 12K、 PYTHON 16K和PYTHON 25K 图像传感器结合卓越的影像性能及高速输出架构,满足并超越流行的工业计算机接口如USB3.1、CameraL
[传感器]
TSMC 和 Synopsys携手将定制设计扩展到16纳米节点
加利福尼亚州山景城,2013年9月— 亮点: • Laker定制设计解决方案已经通过TSMC 16-nm FinFET制程的设计规则手册(DRM)第0.5版认证 • Laker支持TSMC 16-nm v0.5 iPDK的功能包括:复杂的FinFET桥接规则、双重图形曝光(double-pattern)、中间线端层(MEOL)和其他先进技术节点设计的要求 • TSMC和Synopsys将继续合作支持iPDK,以孵化定制设计创新 为加速芯片和电子系统创新而提供软件、知识产权(IP)及服务的全球性领先供应商新思科技公司(Synopsys, Inc., 纳斯达克股票市场代码:SNPS)日前宣布:Synopsys L
[半导体设计/制造]
51单片机内核的中断基础知识
51内核的最基础的中断源请求有外部中断、定时器中断和串口中断,这也是学习和开发者最长用的。当然还有其他的中断源,比如ADC、SPI、PWM等。以外部中断0为例,在编程中常使用的方式为: void INT0()interrupt 0 using 1 { …… } 在这里特别做上笔记:其中前面的void INT0() 只是代表一个普通没有形参的函数而已,函数名写成什么都是可以的,这个到不重要。那么后面的就一个一个词的扣把:(2-1-i-c-中国-电子网,防抓取) 其中 interrupt n 组成一组,n用来指明中断号,在函数后使用了interrupt关键字后,就会自动的生成中断向量,51内核中断号如下图,这是
[单片机]
<font color='red'>51单片机</font>内核的中断基础知识
AT89C51单片机电话遥控报警器电路的设计
1 引 言 由于经济的快速发展,人们生活水平得到较大的提高,生活节奏也越来越快,为此家电遥控和家庭安全也为人们所需要和重视。以AT89C51单片机为核心通过电话进行电器遥控和报警装置主要解决这些问题。他的主要功能有:通过电话可以遥控16路电器通断,遥控路数可以根据需要进行扩展;可以实现电器调压调速控制,有密码设定,保密安全性好;有语言提示,避免盲目操作;可以取消已输入的操作命令;当单片机接收到家中天然气泄露、温度超限和失窃信号后会自动拨打预留电话并报告家中发生的情况。 2硬件电路设计 总体电路设计思路是:电话遥控报警器与家用电话采用并联方式,当有振铃信号时单片机开始记数,前10次铃声内若有人接电话,则遥控报警器被屏蔽,不影响正
[单片机]
AT89C<font color='red'>51单片机</font>电话遥控报警器电路的设计
51单片机汇编中断程序
首先,介绍一下51单片机的定时计数器,51有两个定时计数器,分别为T0,T1,基本一样,;有一点不同,下面我们介绍定时计数器T0 ;了解8051的timer0中断的程序写法,用中断法产生定时 ;上面显示的是proteus仿真图,下面的是源程序 ;说明:(源程序中的中断入口地址很重要(这个是固定的),程序中断时,会在对应中断固定的 ;入口地址进入,因为规定的相隔入口间的空进有限,只能用跳转指令跳转,最终用RETI强制返回 ;这个程序把所有的中断入口地址都写上了,没有用到的,用RETI直接屏蔽) ;运行结果是使led灯明一下,暗一下。 COUNT EQU 9217;对于11.0592的晶振来说,延时10ms LED EQ
[单片机]
高通扩展单芯片 将宽带多媒体普及大众市场
码分多址(CDMA)和无线技术的开发及创新厂商美国高通公司今天宣布扩展了其单芯片解决方案系列,以支持CDMA2000 1xEV-DO。全新的QSC6075 解决方案旨在让手机可以以更低成本支持宽带数据和多媒体功能,从而推动大众市场无线宽带的普及。QSC6075解决方案能够支持多频段-包括AWS、蜂窝和PCS频段,并在很大程度上增强网络容量。QSC6075解决方案样片预计将于2007年第二季度推出。 “扩展我们的单芯片解决方案系列以支持EV-DO,将帮助推动宽带3G设备的普及并让更多的无线用户可以享用它,” 高通CDMA技术集团总裁桑杰?贾博士说,“现在大众市场可享用的功能更加多样化,例如更快且更精确的GPS定位技术、高质量的视频和
[焦点新闻]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved