This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

ETM not working on stm32f7

i am using stm32f7 and for debugging ulink pro, i have tried to enable ETM but not succeeded.

the connector i am using is, where traceD0-D3 are PE3-PE6.

the *ini file i used is

01.
/*-------------------------------------------------------------------
02.
** Define the function to enable the trace port
03.
**-----------------------------------------------------------------*/
04.
FUNC void EnableTPIU(void) {
05.
   _WDWORD(0xE0042004, 0x000000E0);    // Set 4-pin tracing via DBGMCU_CR
06.
//  _WDWORD(0xE0042004, 0x00000020);    // Set 4-pin tracing via DBGMCU_CR
07.

08.
    _WDWORD(0xE000EDFC, 0x01000000);    //
09.
    _WDWORD(0xE00400F0, 0x00000000);    //
10.
    _WDWORD(0xE0040004, 0x00000008);    //
11.
    _WDWORD(0xE0001020, 0x002002CA);    //
12.
    _WDWORD(0xE0001024, 0x0000000);    //
13.
    _WDWORD(0xE0001028, 0x00000008);    //
14.

15.
    _WDWORD(0xE0041004, 0x00000000);    //
16.
    _RDWORD(0xE004100C, 0x00000003);    //
17.
    _WDWORD(0xE0041040, 0x00000002);    //
18.
    _WDWORD(0xE0041080, 0x00000001);    //
19.
    _WDWORD(0xE004108C, 0x000000FF);    //
20.
    _WDWORD(0xE0041004, 0x00000001);    //
21.

22.
}
23.

24.
/*-------------------------------------------------------------------
25.
** Invoke the function at debugger startup
26.
**-----------------------------------------------------------------*/
27.
EnableTPIU();
28.

29.
/*-------------------------------------------------------------------
30.
** Execute upon software RESET
31.
**-----------------------------------------------------------------*/
32.
FUNC void OnResetExec(void)  {
33.
  EnableTPIU();
34.
}

which was given in reference manual as

40.15.4 Configuration example

To output a simple value to the TPIU:

• Configure trace I/Os: enable TRACE_CLKINEN in the STM32F75xxx and

STM32F74xxx debug configuration register (DBGMCU_CR).

• Write @ E000EDFC 01000000; SCS: set TRCENA, otherwise trace registers are not

accessible.

• Write @ E00400F0 00000000; TPIU: select SYNC PORT Mode

• Write @ E0040004 00000008; TPIU: select TPIU PORT SIZE=4

• Write @ E0001020 002002CA; WT: PC MATCH Comparator (PC=0x2002CA)

• Write @ E0001024 00000000; DWT: No mask apply on comparator

• Write @ E0001028 00000008; DWT: ETM trig on PC on match

ETM:

• Write @ E0041004 00000000; Disable ETM

• Read @ E004100C 00000003; ETM should be in Idle state

• Write @ E0041040 00000002; Instruction trace source ID = 0x2

• Write @ E0041080 00000001; Resource for ViewInst enabling event is “always

TRUE”

• Write @ E004108C 000000FF; Processor comparator selection for Start:

pc_match0 (=>DWT match)

• Write @ E0041004 00000001; Enable ETM