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 have set the following configuration for adding AT89C51RE2 to my device database but still the code size is limited to 64K while linking. An "Address Space Overflow" appears as soon as I exceed 64K. Could somebody point out the mistake/omission?
***************************************************** SIM=S8051.DLL DP51.DLL("-pATRD2") BOOK0=DATASHTS\ADDBOOKS.PDF("Add on databooks") BOOK1=DATASHTS\ATMEL\AT89C51XD2_DS.PDF("Data Sheet") BOOK2=DATASHTS\ATMEL\AT_C51ISM.PDF("Instruction Set Manual") CPU=IRAM(0-0xFF) IROM(0-0x1FFFF) XRAM(0-0x2000) CLOCK(33000000) MODP2 FLASH="batchisp" (-device $D -hardware RS232 -port COM1 -baudrate 19200 -operation MEMORY FLASH LOADBUFFER %H PROGRAM) MON=S8051.DLL TP51.DLL("-pATRD2") REGFILE=REG51xD2.H("Atmel") SFILE="LIB\STARTUP.A51" ("Standard 8051 Startup Code") ******************************************************
The device has on-chip code banking and needs therefore a code banking setup. There should be a L51_BANK.A51 file provided by Atmel.
Take a look to: http://www.keil.com/support/man/docs/lx51/lx51_bk_example4.htm.
Dear Mr. Keil, The link does not work. Could you please guide me to a suitable replacement link?
The link works if you remove the extra dot at the end, i.e. if you use:
http://www.keil.com/support/man/docs/lx51/lx51_bk_example4.htm
The link shows a "classic" 8051.
As Reinhard says, The AT89C51RE2 has specific on-chip banking hardware - it is described in the Datasheet.