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

Shared data variable?

Hi,
I have a question about shared memory...

I have a bootloader and a program running on a 8051 (different projects,burnt together on the chip at different locations) and I need them to share a variable (which needs fast access)

I declared at the bootloader:
static UINT8 data xxx _at_ YYY;

and I tried to protect (only virtual...)
the same memory at the other program

static const UINT8 data *xxx _at_ YYY;

I also erased any startup code of STARTUP.A51 and INIT.A51 (and included the empty ones in the program project...still exist in the bootloader).

Now the problem is that the bootloader initializes the YYY byte to value: 'C' or 'D' but no matter the circumstances I read 'D' in the program. Any ideas? Is there any reason for the data to be overridden?

Thanks a lot in advance.