8051单片机作业的问题...

来源:百度知道 编辑:UC知道 时间:2024/05/15 04:46:47
MCS-51用什麽引脚控制片外RAM的读写?试写出从片外ROM的800H单元读取数据的程序段.

原题就这样,只要编写出程序就行了.两个引脚我知道...
希望有高手能帮上忙,最好有详细说明

控制RAM读写的引脚是#RD和#WR,对于外部ROM的读取使用MOVC指令,如:

MOV DPTR,#0800H
MOV A,#00H
MOVC A,@A+DPTR

注意:直接写MOVC A,@DPTR是错误的。

在Keil C51的absacc.h头文件中有关于直接ROM/RAM访问的宏定义,如CBYTE和CWORLD定义,可以直接访问RAM或者ROM的区间。如上面的例子:

#include<absacc.h>
unsigned char X;
X=CBYTE[0x0800];

这样可以直接把外部ROM的800H单元的内容送入变量X中。

WR RD
片外ROM 应该用MOVC 指令]
MOV DPH,#08H
MOV DPL,#00H
MOVC A,@DPTR

WR RD和ALE具体引脚记不清了。
MOV DPTR,800H
MOV A,@DPTR
c语言的是好像是
A=XBYTE[0X800]