We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I use two different µC (C505 and C164). I use the following compilers: C51: V7.06i / BL51: 5.03 C166: V4.11 / L166: 4.10 (Updates not possible. I couldn't use newer one.)
How can I get information about used RAM (IRAM, XRAM, ...)? = How much RAM do my program needed?
I know that I can use the map files. But that's complicated and not easy and not fast.
Do anybody know an other method? How could I evaluate the map file (to know how many RAM my source code needed)?
Thanks for help
Finally comment: I found the reason for the unbelieveable xdata value of greater 1kByte.
1st at all - in my project the XDATA is used and defined as 1kByte: Map file:
XDATA (0XFC00-0XFFFF) ... N:0400H SYMBOL XDATALEN = 1024Bytes = 1kByte XRAM ... Program Size: data=247.7 xdata=739 code=32651
Thats completely normaly.
But in the other project (of a college which isn't anymore in the concern) it's defined as the following [this was the one I asked]:
XDATA (0XFD00-0XFFFF, ?XD?NV (0X1100)) PDATA (0XFC00) ... N:0300H SYMBOL XDATALEN = 768 Bytes ... Program Size: data=220.3 xdata=2615 code=32750
The shown value for the used xdata size contains also the EEPROM (NV) size. Therefore a value greater than 1kbyte (1024) is possible. I used the map file to get the information for the xdata(NV) size and could calculated the real used xram size.
Thanks a lot (also for the very sensitive answers).