Hello,
I'm using stm32f429 which is cortex-m4 based also it has got hardware FPU unit. I'm using Eclipse Luna 4.4.2 with arm GNU GCC C++ compiler and GNU-ARM plugin.
I'm choosing GCC/ARM_CM4F as porting files and my freertos version is 8.2.3.
The completion is done without any errors but in run-time when I trying to create any task let it to start than program suddenly goes into HardFault_Handler().
Here is my simple code:
int
main(int argc, char* argv[])
{
HAL_Init();
/* Configure the system clock */
SystemClock_Config();
MX_GPIO_Init();
// MX_DMA2D_Init();
// MX_LTDC_Init();
led1.Create("LED1", configMINIMAL_STACK_SIZE, 1);
led2.Create("LED2", configMINIMAL_STACK_SIZE, 1);
FreertosAbstract::TaskStartScheduler();
while(1){
//Error handler
}
}
/*
* @brief : 1ms systick timer
*/
void SysTick_Handler(void)
{
HAL_IncTick();
FreertosAbstract::PortSysTickHandler();
}
The problem occurs after PortSysTickHandler() function was executed.
Here is the other simple code which is working well:
int
main(int argc, char* argv[])
{
HAL_Init();
/* Configure the system clock */
SystemClock_Config();
MX_GPIO_Init();
// MX_DMA2D_Init();
// MX_LTDC_Init();
led1.Create("LED1", configMINIMAL_STACK_SIZE, 1);
led2.Create("LED2", configMINIMAL_STACK_SIZE, 1);
//FreertosAbstract::TaskStartScheduler();
while(1){
HAL_Delay(100);
led1.LedOff(LED1);
HAL_Delay(200);
led1.LedOn(LED1);
}
}
/*
* @brief : 1ms systick timer
*/
void SysTick_Handler(void)
{
HAL_IncTick();
// FreertosAbstract::PortSysTickHandler();
}
My compiler settings are in the attachment.
Note-1: FreertosAbstrack::PortSysTickHandler() method is wrapping the xPortSysTickHandler() function.
Note-2: ARM GNU GCC version is 5_2-2015q4
Last edit: NAZIM YILDIZ 2016-02-23
Please discuss this on the support forum before filing a bug report, especially as you have not stated what the bug is. As you appear to be using a C++ framework which is not supplied by us it is unlikely it would be accepted as a bug in any case, but we may be able to help talk through the problem if it were a support request.
Last edit: Richard Barry 2016-02-23