DocID025202 Rev 7
RM0365
Debug support (DBG)
1066
TPUI TRACE pin assignment
By default, these pins are NOT assigned. They can be assigned by setting the
TRACE_IOEN and TRACE_MODE
bits in the
MCU Debug component configuration
register
. This configuration has to be done by the debugger host.
In addition, the number of pins to assign depends on the trace configuration (asynchronous
or synchronous).
•
Asynchronous mode
: 1 extra pin is needed
•
Synchronous mode
(Available in STM32F302xx only): from 2 to 5 extra pins are
needed depending on the size of the data trace port register (1, 2 or 4) :
–
TRACECK
–
TRACED(0) if port size is configured to 1, 2 or 4
–
TRACED(1) if port size is configured to 2 or 4
–
TRACED(2) if port size is configured to 4
–
TRACED(3) if port size is configured to 4
To assign the TRACE pin, the debugger host must program the bits TRACE_IOEN and
TRACE_MODE[1:0] of the Debug MCU configuration Register (DBGMCU_CR). By default
the TRACE pins are not assigned.
This register is mapped on the external PPB and is reset by the PORESET (and not by the
SYSTEM reset). It can be written by the debugger under SYSTEM reset.
Note:
By default, the TRACECLKIN input clock of the TPIU is tied to GND. It is assigned to HCLK
two clock cycles after the bit TRACE_IOEN has been set.
Synchronous trace port availability depends on the chosen package.
Table 193. Flexible TRACE pin assignment
DBGMCU_CR
register
Pins
assigned for:
TRACE IO pin assigned
TRACE
_IOEN
TRACE
_MODE
[1:0]
PB3 /
JTDO/
TRACESWO
PE2 /
TRACECK
PE3 /
TRACED[0]
PE4 /
TRACED[1]
PE5 /
TRACED[2]
PE6 /
TRACED[3]
0
XX
No Trace
(default state)
Released
(1)
-
1
00
Asynchronous
Trace
TRACESWO
-
-
Released
(usable as GPIO)
1
01
Synchronous
Trace 1 bit
Released
TRACECK TRACED[0]
-
-
-
1
10
Synchronous
Trace 2 bit
TRACECK TRACED[0] TRACED[1]
-
-
1
11
Synchronous
Trace 4 bit
TRACECK TRACED[0] TRACED[1] TRACED[2] TRACED[3]
1. When Serial Wire mode is used, it is released. But when JTAG is used, it is assigned to JTDO.