LPC2138

From Electriki
Revision as of 09:46, 24 January 2009 by Domen (talk | contribs) (New page: OK, LPC2138 is an ARM7TDMI, 512kB flash, 32kB ram from NXP/Philips. I'm doing it from zero, since I plan to write some super cool OS for it. == Memory mapping == {| cellspacing="0" borde...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

OK, LPC2138 is an ARM7TDMI, 512kB flash, 32kB ram from NXP/Philips.

I'm doing it from zero, since I plan to write some super cool OS for it.

Memory mapping

memory mapping
0x0 flash
0x4000 0000 sram
0x7fff d000 boot block
0xe000 0000 vpb peripherals
0xffe0 0000 ahb peripherals

arm exception vector locations

ok, so these fuckers can be remapped:

* boot loader mode (on start up), boot block vectors are mapped here
* user flash mode (from boot code), activated by BL, needs valid program sig and non-forced BL. non re-mapped vectors (== stays in flash, bottom)
* user ram mode (from program), user program can remap vectors to bottom of SRAM
arm vectors
0x0 Reset
0x4 Undefined Instruction
0x8 Software Interrupt
0xc Prefetch Abort
0x10 Data Abort
0x14 Reserved!!!
0x18 IRQ
0x1c FIQ