|
本帖最后由 chen84992805 于 2020-12-11 13:52 编辑
1.看了硬汉大哥的FreeRTOS教程,FreeRTOS移植那一章,FreeRTOS已经为开发这实现了SVC_Handler PendSV_Handler SysTick_Handler这三个函数,看网上的一些其他的移植教程,还是把FreeRTOSConfig.h头文件中的#define xPortSysTickHandler SysTick_Handler注释掉,自己实现SysTick函数,并把
xPortSysTickHandler();函数放在systick中断服务函数里;
//systick中断服务函数void SysTick_Handler(void){
#if (INCLUDE_xTaskGetSchedulerState == 1 )
if (xTaskGetSchedulerState() != taskSCHEDULER_NOT_STARTED)
{
#endif /* INCLUDE_xTaskGetSchedulerState */
xPortSysTickHandler();
#if (INCLUDE_xTaskGetSchedulerState == 1 )
}
#endif /* INCLUDE_xTaskGetSchedulerState */
}
这样如果改心跳频率时,还要改systick的配置函数;比不注释掉#define xPortSysTickHandler SysTick_Handler
不是麻烦多了吗?
2.在port.c文件中没看到类似systick的初始配置函数
|
|