|ARM Technical Support Knowledge Articles|
Applies to: LX51 Linker/Locator
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: KeilC51EXAMPLESFarMemory16MB 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:
XDATA (X:0x0-X:0x7FF), CODE (C:0x0-C:0xF7FF), ECODE (C:0x0-C:0xF7FF), HCONST (C:0x0-C:0xF7FF). HDATA (X:0x020000-X:0x02FFFF)
Article last edited on: 2006-10-23 16:36:18
Did you find this article helpful? Yes No
How can we improve this article?