LX51: LINKER CONFIGURATION FOR HUGE MEMORY
Information in this article applies to:
I'm using an ADuC836 microcontroller from Analog Devices that supports 16MB memory. We use the memory space 0x100000-0xFFFFFF. I have the PK51 Professional Developer's Kit and have examined the example in the folder: Keil\C51\EXAMPLES\FarMemory\16MB RAM on ADuC812.
I have enabled under Project — Options — Device:
Since my far memory is in the address range 0x100000-0xFFFFFF, I have entered under Options for Target — LX51 Locate — User classes:
When I enable under Options for Target — Target
then in LX51 Locate tab the memory classes are entered as:
XDATA (X:0x0-X:0x7FF), HDATA (X:0x0-X:0x7FF), CODE (C:0x0-C:0xF7FF), ECODE (C:0x0-C:0xF7FF), HCONST (C:0x0-C:0xF7FF)
The HDATA (X:0x0-X:0x7FF) range conflicts with my setting. How can I solve this?
The µVision memory wizard enables all available xdata memory as HDATA memory. However, you can easily change this when you perform the steps below in the Options for Target — LX51 Locate dialog page:
Last Reviewed: Monday, October 23, 2006
of your data.