Please note: We are aware of an issue affecting replies on the Arm Community forums, which may not be loading as expected.

We apologize for any inconvenience and appreciate your patience while we investigate and work to resolve the issue.

Thank you for your understanding.


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

Why my KEIL C51 Project stack can not move up?

My project code area now is almost the chip size, so I want to move some global variable from Xdata to data to free some code area. But after I change some variable, the C51 compiler compalins the DATA overflow. I checked the .M51 file, the stack bottom is 0x8A, the chip idata ram is 256, so why the compiler can not automatically change some stack area to data area? Since I think the 0x8A stack is far from 0xFF. I just change one unsigned char variable.