求助:为什么这样用XDATA不行?
最近想用到XDATA,编了如下程序试用XDATA,却发现不行,请懂的人指点一下如何使用XDATA。
以下是我编的XDATA试用程序和运行后的显示情况。
单片机C语言程序清单:
#include <reg52.h>
unsigned char xdata DATA[10];
void UART()
{SCON=0x40;
TMOD=0x20;
TH1=0xfd;
TR1=1;
}
void Sendstr(unsigned char *cp)
{while(*cp!='\0')
{if(*cp=='\n')SBUF=13;else SBUF=*cp;
while(TI==0);TI=0;
cp++;
}
}
//######################################################################
void main()
{char i;
UART();
for(i=0;i<9;i++)DATA[ i]='A';[ i]
Sendstr("\nDATA[1..12]=[");
for(i=0;i<=9;i++){if(i<9)SBUF=DATA[ i];else SBUF=']';while(TI==0);TI=0;}
Sendstr("\nDATA[1..12]=[");
for(i=0;i<=9;i++){if(i<9)SBUF=DATA[ i]+'8';else SBUF=']';while(TI==0);TI=0;}
while(1){}
}
显示画面:
|