请教C51单片机外扩RAM的地址分配使用问题。

来源:百度知道 编辑:UC知道 时间:2024/05/13 14:59:45
我想在外扩的32K存储区分别存储每组100字节的数组,能实现吗?该怎样定义?
白天上班没能及时请教两位老师,我是自学的,有好多的不懂,还要请教两位。
uchar xdata write_data _at_ 0x0000; //写数据入口地址
#define read_data write_data //读数据入口地址
uchar xdata A[7]={0x55,0x54,0x33,0x11,0x13,0x21,0x34}; //假定是7个数字
main()
{ uchar i;
for(i=0;i<7;i++) //连续写7个数字
{
LCD_data=A[i];
}

delay(100);
for(i=0;i<7;i++) //连续读7个数字
{
A[i]=read_data;
P1=A[i];
}
while(1);
}
我为什么在仿真时P1口得不到连续的7个数字,只能显示第7个?
并且这样定义读地址 ucha xdata read_data _at_ 0x0000 时,在编译时提示地址重叠,不懂,望老师指教。

uchar xdata e_shuzu[100]={0x00};//可以输入100个数据

for(i=0;i<7;i++) //连续读7个数字
{
A[i]=read_data;
P1=A[i];
}
这里没有延时,肯定只能看到最后一个了

uchar xdata A[100];