This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to use xdata?

Hi

This is code compiled with Keil C, but not working

#include <AT89X51.H>

xdata char Index _at_ 0x00;
void Clear_DDRAM(char index);

void main(void)
{
Clear_DDRAM(0x00);
while(1);
}

void Clear_DDRAM(char index)
{
int a;
for(a=0;a<65536;a++)
{
P3_4=0; //IOCS=0;
P3_1=0;
P3_0=0;
P1_0=0; //Reset=0;
Index=index;
P3_4=1; //IOCS=1;
Index=Index+a;
}
}

The xdata has 64K address range.
Here is my queation:
How to series to write data(0x00) into next address(Star address at 0x00). The assembly code is "INC DPTR" so have any instruction like it in keil C.

0