cancel
Showing results for 
Search instead for 
Did you mean: 

STM32U5 B-U585I-IOT02A support and use of ThreadX Execution Profile Kit

Domenico
Associate III

Hi,

Does ThreadX Execution Profile Kit support STM32U5? I am using IAR Embedded Workbench but when I call the Execution Profile Kit functions I always get zero as a value, the parameters monitored by Execution Profile Kit are not updated.

To compile the code, in the IAR project I added the file tx_execution_profile.c, inserted the path to the folder "Middlewares\ST\threadx\utility\execution_profile_kit" (where the files tx_execution_profile.c and tx_execution_profile.h are contained) and compiled ThreadX with TX_EXECUTION_PROFILE_ENABLE.

Thank you

1 ACCEPTED SOLUTION

Accepted Solutions
Domenico
Associate III

Hi,

I asked on the Microsoft forum and was able to get Execution Profile Kit from ThraedX to work, you can refer to the link https://docs.microsoft.com/en-us/answers/questions/994826/azure-rtos-execution-profile-kit-with-stm32u5b-u58.html.

Thanks

View solution in original post

3 REPLIES 3
CMYL
ST Employee

Hello Domenico,

The ThreadX execution profile is supported for the CM33 core so it should work for U5.

 Unfortunately, we don’t have any project showing how to use it in our STM32CubeU5.

Best regards,

Younes

Domenico
Associate III

Hi,

I asked on the Microsoft forum and was able to get Execution Profile Kit from ThraedX to work, you can refer to the link https://docs.microsoft.com/en-us/answers/questions/994826/azure-rtos-execution-profile-kit-with-stm32u5b-u58.html.

Thanks

Guillaume K
ST Employee

Hello

About your discussion in MS forum:

Regarding the calls to _tx_execution_isr_enter and _tx_execution_isr_exit in tx_initialize_low_level.s, they were not present in Cube U5 1.0.0 but they were added in Cube U5 1.1.0.

There's still the problem that _tx_execution_isr_enter and _tx_execution_isr_exit are not declared as EXTERN at beginning of tx_initialize_low_level.s. So yes, the user must add them. It will be fixed in a future Cube U5 version.

And yes, TX_EXECUTION_PROFILE_ENABLE must be defined in IDE's Assembler settings so that it is taken into account in tx_initialize_low_level.s.

note: I'm talking of tx_initialize_low_level.s file delivered in each Cube U5 application project example, not the one under Middlewares\ST\threadx\ports\cortex_m33\src