mcs-51单片机扩展程序存储所用的控制信号为什么

mcs-51单片机扩展程序存储所用的控制信号为什么,第1张

这个要看你扩展的程序存储器是什么芯片!拿常用的程序存储器EPROM27128来说,你可以去查这芯片的管脚图!

A0-A13:地址线

O0-O7:数据线

CE:片选线,低有效

OE:数据输出允许信号,低有效

那么按照我理解你说的控制信号是什么来说,应该就是CE和CE了!

MCS-51单片机与外部扩展的存储器相连时,P0口是作为地址/数据准双向口(可输入又可输出),ALE输出信号的负跳变用于单下机发出的低8位地址锁存器的锁存控制信号。如果地地址超过8位,由P2口的A8-15来选取外部存储器,其中又可作为讯问外部存储器的控制端,你想想看,我要对外扩充的存储器进行读或者写,首先是不是要让单片机知道外部存储器的地址,这个地址就是由单片机从P0口输出(如果地址超过8位,由P0、P2组合),以选通外部器件,接下来,就是传送数据,但在传送数据之前,单片机是不是要把之前传送的地址要进行锁存呢,这个任务就是由ALE口的负跳变来完成的。一旦知道地址了,那么,单片机就可以方便面的和外设进行交流了。

但愿,我的解说,能够对你有帮助。

要让51外扩展的RAM起作用,关键是要确保在MCU相关引脚上产生正确的外部读写时序(我这里默认你硬件连接全部正确)

首先很关键的一步是要仔细看你使用的MCU的资料,

下面我仅对C语言需要注意的地方讲解(汇编这里就略了,因为对于新手来说,讲的复杂并不是好事)

1、对于ATMEL、WINBOND等MCU,可以在C里,直接用 xdata 保留关键字来对变量进行声明,这样在访问这些变量时就能直接产生外部读写信号。

2、对于STC的MCU(比较新的MCU类,我这里就列举目前的STC类MCU内部用1024个字节RAM扩展),这里有更多的功能选择,位于内部8EH地址上的AUXR是RAM的扩展管理寄存器,其中的EXTRAM位(位1):

0 : 内部扩展的EXT_RAM可以存取

RD+ 系列单片机:

在00H 到3FFH 单元(1024 字节),使用MOVX @DPTR 指令访问,超过400H 的地址空间总是访问外部数据存储器(含400H 单元),MOVX @Ri 只能访问00H 到FFH 单元。

RC 系列单片机:

在00H 到FFH 单元(256 字节),使用MOVX @DPTR 指令访问,超过100H 的地址空间总是访问外部数据存储器(含100H 单元),MOVX @Ri 只能访问00H 到FFH 单元。

1: External data memory access

外部数据存储器存取,禁止访问内部扩展RAM,此时MOVX @DPTR / MOVX @Ri 的使用同普通8052 单片机

下面是对于STC RD+的C语言简单举例子:

unsigned char xdata sum;

sum = 20;

这里在 EXTRAM 为0的情况下,如果sum的地址超过400H(含400H),那么就能产生外部RAM的读写时序,如果sum的地址小于400H,那么只能访问内部扩展的RAM,但不会产生外部RAM的读写时序。

这里在 EXTRAM 为1的情况下,那么就直接产生外部RAM的读写时序。

好了,就讲这样简单吧,总之,在使用MCU硬件前,必须先对该硬件资料熟悉,使用的时候,才能游刃有余。

以上就是关于mcs-51单片机扩展程序存储所用的控制信号为什么全部的内容,包括:mcs-51单片机扩展程序存储所用的控制信号为什么、mcs 51系列单片机在扩展了外部程序存储器时,为何需要在P0口接地址锁存器、51单片机RAM扩展等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9508415.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存