mc9s12c32mpb16 Freescale Semiconductor, Inc, mc9s12c32mpb16 Datasheet - Page 177

no-image

mc9s12c32mpb16

Manufacturer Part Number
mc9s12c32mpb16
Description
Hcs12 Microcontrollers
Manufacturer
Freescale Semiconductor, Inc
Datasheet
firmware. The standard BDM firmware watches for serial commands and executes them as they are
received.
The firmware commands are shown in
1. If enabled, ACK will occur when data is ready for transmission for all BDM READ commands and will occur after the write is
2. Both WAIT (with clocks to the S12 CPU core disabled) and STOP disable the ACK function. The GO_UNTIL command will not
6.4.5
Hardware and firmware BDM commands start with an 8-bit opcode followed by a 16-bit address and/or a
16-bit data word depending on the command. All the read commands return 16 bits of data despite the byte
or word implication in the command name.
Freescale Semiconductor
READ_NEXT
READ_PC
READ_D
READ_X
READ_Y
READ_SP
WRITE_NEXT
WRITE_PC
WRITE_D
WRITE_X
WRITE_Y
WRITE_SP
GO
GO_UNTIL
TRACE1
TAGGO
Command
complete for all BDM WRITE commands.
get an Acknowledge if one of these two CPU instructions occurs before the “UNTIL” instruction. This can be a problem for any
instruction that uses ACK, but GO_UNTIL is a lot more difficult for the development tool to time-out.
(2)
(1)
BDM Command Structure
8-bit reads return 16-bits of data, of which, only one byte will contain valid
data. If reading an even address, the valid data will appear in the MSB. If
reading an odd address, the valid data will appear in the LSB.
Opcode (hex)
0C
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
None
None
None
None
Data
MC9S12C-Family / MC9S12GC-Family
Table 6-6. Firmware Commands
Table
Increment X by 2 (X = X + 2), then read word X points to.
Read program counter.
Read D accumulator.
Read X index register.
Read Y index register.
Read stack pointer.
Increment X by 2 (X = X + 2), then write word to location 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. If enabled, ACK will occur when leaving active
background mode.
Go to user program. If enabled, ACK will occur upon returning to active
background mode.
Execute one user instruction then return to active BDM. If enabled, ACK
will occur upon returning to active background mode.
Enable tagging and go to user program. There is no ACK pulse related to
this command.
6-6.
Rev 01.23
NOTE
Chapter 6 Background Debug Module (BDMV4) Block Description
Description
177

Related parts for mc9s12c32mpb16