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.
Hi,
I have a NXP (Philips) LPC2214 board with lots of external memory. For debug purposes I tried to debug in RAM.
The problem is that I have to enable the external address/data bus by setting BCFG0/PINSEL2.
I have implemented this in the RAM.ini file as
E INT 0xE002C014 = 192938276; // PINSEL2 = 0x0B800124 E INT 0xFFE00000 = 1103; // BCFG0 = 0x0000044F
which seems to work (althow hex values aren't accepted as values by uVision ;-(()
Unfortunetly it seems that the LOAD command
LOAD Demofile // Download
resets the controller, which kills my external memory configuration. Additionally I get the errormessages "RAM mismatch ..." and "*** error 57: illegal address (0x80000000)". The option NORESET with the LOAD command doesn't seem to work.
As I see it I have 2 main problems:
1. is that I can't forbid the RESET 2. is that the memory 0x80000000... isn't accepted.
In the target dialog I have the address range 0x80000000 (len=0x20000) setup as ROM and 0x80020000 (len=0xE0000) as RAM which should be OK.
Any ideas ?
I only really know uV used with the 8051, but my experience is that one always ends up having to write a debugger startup script that does all the necessary things in the right order:
1) set up memory spaces (if IDE settings alone aren't enough) 2) load the file 3) make any changes to registers or memory contents as needed 4) run the thing
Your RAM.ini script currently only has part 3), so you'll have to put the load command at the start of it, or re-read the script after you LOAD. You'll want the "automatically load" option in the Debug tab off if you go this route.
That, and you have to make sure the linker is actually configured for building the program in the place it's going to run.