Hello, Yes I have the priority changed . Those are my values defined in FreeRTOSConfig.h
/* This is the raw value as per the Cortex-M3 NVIC. Values can be 255
(lowest) to 0 (1?) (highest). */
#define configKERNEL_INTERRUPT_PRIORITY 255
#define configMAX_SYSCALL_INTERRUPT_PRIORITY 191 /* equivalent to 0xb0, or priority 11. */
#if FREERTOS_V100400
#define configMAX_API_CALL_INTERRUPT_PRIORITY 191 //Same as configMAX_SYSCALL_INTERRUPT_PRIORITY renamed
#endif
/* This is the value being used as per the ST library which permits 16
priority values, 0 to 15. This must correspond to the
configKERNEL_INTERRUPT_PRIORITY setting. Here 15 corresponds to the lowest
NVIC value of 255. */
#define configLIBRARY_KERNEL_INTERRUPT_PRIORITY 15
/* Stack overflow checking */
//#define configCHECK_FOR_STACK_OVERFLOW 2 //99? comprobar
#define INCLUDE_uxTaskGetStackHighWaterMark 1
#if FREERTOS_V100400
/* FreeRTOS MPU specific definitions. */
#define configINCLUDE_APPLICATION_DEFINED_PRIVILEGED_FUNCTIONS 0
#define configTOTAL_MPU_REGIONS 8 /* Default value. */
#define configTEX_S_C_B_FLASH 0x07UL /* Default value. */
#define configTEX_S_C_B_SRAM 0x07UL /* Default value. */
#define configENFORCE_SYSTEM_CALLS_FROM_KERNEL_ONLY 1
#endif
In my module main.c I have the following:
/* Pass the array into vPortDefineHeapRegions(). */
vPortDefineHeapRegions( xHeapRegions );
/* Relocate Vector Table in the FW address 0x08060000 0x08040000, after BOOT area */
NVIC_SetVectorTable(NVIC_VectTab_FLASH, MAP_OFFSET); //0x60000 0x40000
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);
When debugging I can see that the HardFault_handler occurs when executing prvPortStartFirstTask() a SVC_Handler() is executed and there my code call to vPortSVHandler() an occurrs de HardFault.
Previously I have the project working fine with FreeRTOS8.2.3 but the problems started when trying to upgradeā¦
Please tell me if I can provide more information to you to clarify what is happening.
Thansk a lot in advance!