Back ground
将FreeRTOS移植到使用stm32标准库的工程中
Steps
参考:详细步骤
Trouble Shotting
1. function “xPortSysTickHandler” declared implicitly
请在stm32f10x_it.h
头文件中声明函数
/* Public function prototypes -----------------------------------------------*/
extern void xPortSysTickHandler(void);
2. Undefined symbol vApplicationStackOverflowHook (referred from tasks.o).
在 FreeRTOS 里,vApplicationStackOverflowHook 属于钩子函数,当任务的堆栈溢出时会调用此函数。不过在你的工程里,没有对这个函数进行定义,链接器在链接 tasks.o 文件时就无法找到该符号的定义,进而报错。
最简单的解决办法:在 FreeRTOSConfig.h
文件中把 configCHECK_FOR_STACK_OVERFLOW
宏定义为 0,以此禁用堆栈溢出检查功能或者自己定义钩子函数。