francisco-moon wrote on Monday, March 26, 2012:
Hello, Somebody who help me…
Please help me… I don’t know what’s wrong.
- STM32F2x7_ETH_Lwip + 3 task (I made 3 tasks)
- MDK-ARM
I sometimes got a HardFault_Handler.
Call stack + Locals (I can see below call stack when i got a hardfault_handler)
- HardFault_Handler 0x08019892
- vPortSetInterruptMask 0x0800020A
- xPortSysTickHandler 0x0804CA06
I don’ know what’s wrong.
=========================================================================================
added 3 tasks
xTaskCreate(uart_task, “UART_DEBUG”, configMINIMAL_STACK_SIZE, NULL, LED_TASK_PRIO+1, NULL);
xTaskCreate(uart_timer_task, “UART_TIMER”, configMINIMAL_STACK_SIZE, NULL, LED_TASK_PRIO, NULL);
xTaskCreate(CDS_ITF_task, “CDS_IFT”, 7168, NULL, 10, NULL);
===============================================================================================
FreeRTOSConfig.h
#define configUSE_PREEMPTION 1
#define configUSE_IDLE_HOOK 0
#define configUSE_TICK_HOOK 0
#define configCPU_CLOCK_HZ ( ( unsigned long ) 120000000 )
#define configTICK_RATE_HZ ( ( portTickType ) 1000 )
#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 15 ) //7->8
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 128 )
#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 50*1024))//70 * 1024 ) )
#define configMAX_TASK_NAME_LEN ( 16 )
#define configUSE_TRACE_FACILITY 1
#define configUSE_16_BIT_TICKS 0
#define configIDLE_SHOULD_YIELD 1
#define configUSE_MUTEXES 1
#define configUSE_COUNTING_SEMAPHORES 1
#define configUSE_MALLOC_FAILED_HOOK 0
/* Co-routine definitions. */
#define configUSE_CO_ROUTINES 0
#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
/* Set the following definitions to 1 to include the API function, or zero
to exclude the API function. */
#define INCLUDE_vTaskPrioritySet 1
#define INCLUDE_uxTaskPriorityGet 1
#define INCLUDE_vTaskDelete 1
#define INCLUDE_vTaskCleanUpResources 0
#define INCLUDE_vTaskSuspend 0
#define INCLUDE_vTaskDelayUntil 0
#define INCLUDE_vTaskDelay 1
/* 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. */