I'm trying to map RAM and EEPROM on my new project. I'm using S12A128, and I couldn't find any documentation on those registers. I've got it for the S12A256, but not for the 128. I seaarch the web and I found that those belongs to the HCS12 Core, and I read the "HCS12 V1.5 Core User Guide Version 1.2". RAM mapping is what confuse me the most.
Please, correct me if I'm wrong:
According to the document above:
| EE15 | EE14 | EE13 | EE12 | EE11 | xxxx | xxxx | EEON |
bits EE15 to EE11 determine the upper five bits of the base EEPROM address, so if I want EEPROM at:
1) 0x0000, then INITEE = 0x01
2) 0x2000, then INITEE = 0x21
| RAM15 | RAM14 | RAM13 | RAM12 | RAM11 | xxxx | xxxx | RAMHAL |
bits RAM15 to RAM11 determine the upper five bits of the base RAM address and RAMHAL determine align to 0x0000 or 0xFFFF
Alignment is what confused me. After reset INITRM = 0x09... so where RAM would be at?
According to MC9S12A128A (here), it would be at 0x0000...... but according to MC9S12DP256 (here) it would be at 0x1000.... If INITRM and INITEE are HCS12 Core registers... then wouldn't it be the same for both derivatives?