cancel
Showing results for 
Search instead for 
Did you mean: 

ITM STM32 parallel trace

pius
Visitor

hello everyone

I would like to send ITM data on my NucleoH743ZI. I have already tried several configurations and I am not getting any data on my 4 parallel lines, i measured with my oscilloscope. There are also not many examples so I am asking here.

Have I forgotten something important in my configuration?
Thanks for the help in advance

 

 

 

GPIO_InitTypeDef GPIO_InitStruct;

 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;

 GPIO_InitStruct.Pull = GPIO_NOPULL;

 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;

 GPIO_InitStruct.Pin = GPIO_PIN_2 | GPIO_PIN_3 | GPIO_PIN_4 | GPIO_PIN_5 | GPIO_PIN_6;

 GPIO_InitStruct.Alternate = 0;

 HAL_GPIO_Init( GPIOE, &GPIO_InitStruct );

 

 

 

My configuration:

 

 

static void ConfigureTraceComponents()
{

    TpiuOptions tpiu = {
        .Protocol = TpiuProtocolParallel, // Verwende das parallele Protokoll
        .TracePortWidth = 4                // Setze auf 4-Bit
    };

    ITMOptions itm = {
         .TraceBusID = 1,                           // ID für den Trace-Bus
         .GlobalTimestampFrequency = ITMGlobalTimestampFrequencyIfOutputFIFOEmpty,
         .LocalTimestampPrescaler = ITMLocalTimestampPrescalerDivideBy4,
        .EnableLocalTimestamp = true,               // Lokale Timestamps aktivieren
        .ForwardDWT = true,                         // DWT-Pakete weiterleiten
        .EnableSyncPacket = true,                   // Synchronisierungspaket aktivieren
        .EnabledStimulusPorts = ITM_ENABLE_STIMULUS_PORTS_ALL // Alle Stimulusports aktivieren
    };

    // DWT Konfiguration
    DWTOptions dwt = {
        .SyncTap = DWTSyncTap24,
        .CycleTap = DWTCycleTap6,
        .PCSampling = true,
        .SamplingPrescaler = 10,
    };


    // Konfigurationen anwenden
    TpiuSetup(&tpiu);
    ITMSetup(&itm);
    DWTSetup(&dwt);
}

 

 


in my while(1):

 

ITMWrite8(5, 'H');

 



 

5 REPLIES 5
Uwe Bonnes
Principal III

Look for "orbuculum" and maybe ask on the Discord orbuculum channel.

I already did this. I thought that i could get help here.

Pavel A.
Evangelist III

I looked at your suggestion, but I don't see an ARM register configuration for the STM32 there.
https://wiki.segger.com/ST_STM32H7#Tracing_on_ST_STM32H743

Pavel A.
Evangelist III

They supply evaluation software, there you'll see the configuration. If not, ask on their forum.