51单片机外部ram扩展c程序及硬件结构

更新时间:2023-06-04 06:55:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

51单片机外部ram扩展c程序及硬件结构62256外部ram的具体使用方法,程序及硬件结构

c程序

#include<reg52.h>

#include<absacc.h>

#define uchar unsigned char

#define uint unsigned int

int n,m;

void main()

{

unsigned int i;

while(1)

{

for(i=0x7fff;i>0x0000;i--) { m=XBYTE[i];//读外部存储器 for(i=0x0000;i<=0x7fff;i++) { XBYTE[i]=n;//写入ram }

}

}

51单片机外部ram扩展c程序及硬件结构62256外部ram的具体使用方法,程序及硬件结构

}

62256外部ram芯片

相关知识:

XBYTE是一个地址指针(可当成一个数组名或数组的首地址),它在文件absacc.h中由系统定义,指向外部RAM(包括I/O口)的0000H单元,XBYTE后面的中括号[ ]0x2000H是指数组首地址0000H的偏移地址,即用XBYTE[0x2000]可访问偏移地址为0x2000的I/O端口。

这个主要是在用C51的P0,P2口做外部扩展时使用,其中XBYTE [0x0002],P2口对应于地址高位,P0口对应于地址低位。一般P2口用于控制信号,P0口作为数据通道。 比如:P2.7接WR,P2.6接RD,P2.5接CS,那么就可

51单片机外部ram扩展c程序及硬件结构62256外部ram的具体使用方法,程序及硬件结构

以确定个外部RAM的一个地址,想往外部RAM的一个地址写一个字节时,地址可以定为XBYTE [0x4000],其中WR,CS为低,RD为高,那就是高位的4,当然其余的可以根据情况自己定,然后通过

XBYTE [0x4000] = 57;

这赋值语句,就可以把57写到外部RAM的0x4000处了,此地址对应一个字节。

XBYTE 的作用,可以用来定义绝对地址,是P0口和P2口的,其中P2口对应的是高位,P0口对应的是低位

如 XBYTE[0x1234] = 0x56;

则等价于

mov dptr,#1234h

mov @dptr,#56h

谢谢大家

本文来源:https://www.bwwdw.com/article/ogn1.html

Top