我正在研究FreeRTOS调度器(port.c(,并对Systick处理程序有一个问题。我知道xPortSysTickHandler()
应该在RTOS节拍时调用,但我看不出xPortSysTickHandler()
是Systick定时器中断回调函数在哪里指定的。
特别是,我在vPortSetupTimerInterrupt()
中没有看到这一点,这对我来说有点奇怪,因为这个函数确实配置了定时器的加载寄存器值。
它是否在其他地方被指定为回调?还是我遗漏了什么?
谢谢!
它直接安装到中断向量表中。如果矢量表使用CMSIS名称作为处理程序,那么您可以根据FAQ将CMSIS名称映射到FreeRTOSConfig.h中的FreeRTOS systick处理程序的名称-参见红色";ARM Cortex-M用户的特别提示";此处:https://www.freertos.org/FAQHelp.html