Keil™, An ARM® Company

Discussion Forum

Banking with constants in external flash

Next Thread | Thread List | Previous Thread Start a Thread | Settings

DetailsMessage
Read-Only
Author
Jean-Hugues Marie
Posted
7-Jan-2005 04:30
Toolset
C51
New! Banking with constants in external flash
I have an application with the AT89C51CC03 using LX51 linker in an banking mode (2 banks of 64K size).
I want to extract from a generated file the application code (to be downloaded in the ATMEL controller) and the constant datas (to be programmed in the external flash memory).

LX51 linker classes is:
XDATA (X:0x0-X:0x7FF), HDATA (X:0x0-X:0x7FF), CODE (C:0x0-C:0xFFFF),
ECODE (C:0x0-C:0xFFFF),HCONST (B1:0x0000-B1:0xFFFF)

At the end of the link, i have the following information:
code size=33934
const size=56744
The generated hex file (in mode H386) doesn't show adresses above 0x10000 while the complete applcation size is 33934+56744=90678=0x16236.
Is there a manner to extract from the generated file the code area end the banked area
Read-Only
Author
Andrew Neil
Posted
7-Jan-2005 06:39
Toolset
C51
New! RE: Banking with constants in external flash
Try looking at XCONST...
Read-Only
Author
Keil Reinhard
Posted
10-Jan-2005 02:16
Toolset
C51
New! RE: Banking with constants in external flash
Check if the HEX file is correctly generated when you are using the example:

C:\Keil\c51\Examples\FarMemory\1MB Constants on Classic 8051

You should see records with the type '04' such as:

:020000040000FA
:020000040001F9

More information: http://www.keil.com/support/docs/1584.htm

Next Thread | Thread List | Previous Thread Start a Thread | Settings