Hi, The port.c file for the same FreeRTOS version [8.2.3] have a difference. In the Official FreeRTOS release: configPRESLEEPPROCESSING( xModifiableIdleTime ); configPOSTSLEEPPROCESSING( xExpectedIdleTime ); In the STM32CubeMX configPRESLEEPPROCESSING( &xModifiableIdleTime ); configPOSTSLEEPPROCESSING( &xExpectedIdleTime ); Why this difference? It is wrong in the Cube? Best Regards,
I could say as I’m not familiar with the ST code, however I would guess it is either a mistake or otherwise it is not necessary. configPRESLEEPPROCESSINIG() and configPOSTSLEEPPROCESSING() are both macros, so the parameter passed in is accessed directly inline in the code, not as a parameter would be in a function call. Therefore, if the address of xModifiableIdleTime was needed you can put the ‘&’ on the variable inside the macro, not when you pass the variable into the macro. From a previous post it seems there are some issues in the implementation of ST’s tickless idle code.
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.