Development Support
Technical Data
MC68HC912DT128A — Rev 4.0
402
Development Support
MOTOROLA
The second type of BDM commands are called firmware commands
implemented in a small ROM within the HC12 MCU.The CPU must be in
background mode to execute firmware commands. The usual way to get
to background mode is by the hardware command BACKGROUND. The
BDM ROM is located at $FF20 to $FFFF while BDM is active. There are
also seven bytes of BDM registers located at $FF00 to $FF06 while BDM
is active. The CPU executes code in the BDM firmware to perform the
requested operation. The BDM firmware watches for serial commands
Table 20-2. Hardware Commands
(1)
Command
BACKGROUND
Opcode (Hex)
90
Data
None
Description
Enter background mode if firmware enabled.
Read from memory with BDM in map (may steal cycles
if external access) data for odd address on low byte,
data for even address on high byte.
Read from memory with BDM in map (may steal cycles
if external access). Must be aligned access.
Read from memory with BDM out of map (may steal
cycles if external access) data for odd address on low
byte, data for even address on high byte.
Read from memory with BDM out of map (may steal
cycles if external access). Must be aligned access.
Write to memory with BDM in map (may steal cycles if
external access) data for odd address on low byte,
data for even address on high byte.
Write to memory with BDM in map (may steal cycles if
external access). Must be aligned access.
Write to memory with BDM out of map (may steal cycles
if external access) data for odd address on low byte,
data for even address on high byte.
Write to memory with BDM out of map (may steal cycles
if external access). Must be aligned access.
READ_BD_BYTE
(1)
E4
16-bit address
16-bit data out
READ_BD_WORD
(1)
EC
16-bit address
16-bit data out
READ_BYTE
E0
16-bit address
16-bit data out
READ_WORD
E8
16-bit address
16-bit data out
WRITE_BD_BYTE
(1)
C4
16-bit address
16-bit data in
WRITE_BD_WORD
(1)
CC
16-bit address
16-bit data in
WRITE_BYTE
C0
16-bit address
16-bit data in
WRITE_WORD
C8
16-bit address
16-bit data in
1. Use these commands only for reading/writing to BDM locations
.
The BDM firmware ROM and BDM registers are not nor-
mally in the HC12 MCU memory map
.
Since these locations have the same addresses as some of the normal application
memory map, there needs to be a way to decide which physical locations are being accessed by the hardware BDM com-
mands
.
This gives rise to needing separate memory access commands for the BDM locations as opposed to the normal
application locations
.
In logic, this is accomplished by momentarily enabling the BDM memory resources, just for the access
cycles of the READ_BD and WRITE_BD commands
.
This logic allows the debugging system to unobtrusively access the
BDM locations even if the application program is running out of the same memory area in the normal application memory
map
.