XC912BC32CFU8 Motorola Semiconductor Products, XC912BC32CFU8 Datasheet - Page 321

no-image

XC912BC32CFU8

Manufacturer Part Number
XC912BC32CFU8
Description
M68HC12B Family Data Sheet
Manufacturer
Motorola Semiconductor Products
Datasheet
M68HC12B Family — Rev. 8.0
MOTOROLA
The second type of BDM commands are called firmware commands because they
are 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 which are located at $FF00 to $FF06 while BDM is active. The CPU
executes code from this ROM to perform the requested operation. The BDM
firmware watches for serial commands and executes them as they are received.
The firmware commands are shown in
Each of the hardware and firmware BDM commands starts with an 8-bit command
code (opcode). Depending upon the commands, a 16-bit address and/or a 16-bit
data word is required as indicated in the tables by the command. All the read
commands output 16 bits of data despite the byte/word implication in the command
name.
The external host should wait 150 E-clock cycles for a non-intrusive BDM
command to execute before another command is sent. This delay includes 128
E-clock cycles for the maximum delay for a free cycle. For data read commands,
the host must insert this delay between sending the address and attempting to read
the data. In the case of a write command, the host must delay after the data portion,
before sending a new command, to be sure the write has finished.
WRITE_NEXT
READ_NEXT
WRITE_PC
WRITE_SP
Command
READ_PC
READ_SP
WRITE_D
WRITE_X
WRITE_Y
READ_D
READ_X
READ_Y
TRACE1
TAGGO
GO
Opcode (Hex)
Table 18-3. BDM Firmware Commands
Development Support
62
63
64
65
66
67
42
43
44
45
46
47
08
10
18
16-bit data out
16-bit data out
16-bit data out
16-bit data out
16-bit data out
16-bit data out
16-bit data in
16-bit data in
16-bit data in
16-bit data in
16-bit data in
16-bit data in
Table
None
None
None
Data
18-3.
Read D accumulator
X = X + 2; Read next word
pointed to by X
Read program counter
Read X index register
Read Y index register
Read stack pointer
X = X + 2; Write next word
pointed to by X
Write program counter
Write D accumulator
Write X index register
Write Y index register
Write stack pointer
Go to user program
Execute one user instruction
then return to BDM
Enable tagging and go to
user program
Background Debug Mode (BDM)
Description
Development Support
Data Sheet
321

Related parts for XC912BC32CFU8