STM32 + FreeRTOS 的一些理解

中断管理问题

FreeRTOS的中断管理是可配置的,有专门的寄存器用来配置哪些中断是可被管理,那些是不可被管理,该寄存器设置阈值,小于阈值不被管理,大于阈值被管理,好处在于某些紧急中断不应该被管理,应该打断系统调度进行及时响应,并且ISR中不能出现系统相关函数

时基问题

对于HAL、OS都需要时基

HAL时基用来管理HAL API,提供与系统无关的延时、超时等操作;

OS时基是基础,且强制是systick,系统时钟源

如果使用同一个则会出现,如果在终端服务函数中调用了HAL_Delay()则会造成死等问题,所以在使用时需要分开来避免类似问题发生,并且低耦合

systick如果使能HSE,则是HSE的1/8

from: https://blog.csdn.net/shaynerain

猜你喜欢

转载自blog.csdn.net/shaynerain/article/details/107111300
今日推荐