参考资料:《正点原子STM32F4 FreeRTOS开发手册_V1.1》《野火FreeRTOS 内核实现与应用开发实战—基于STM32》
裸机系统(前后台系统)
轮询操作:写一个大的while,然后各种各样的任务都放在里面,来了中断就处理中断,处理完所有任务重新开始新的while
优点:逻辑写起来简单,且代码量小
缺点:实时性较差,比如我执行上图中的任务4突然要执行任务3,如果是裸机系统需要等待一个轮回才行
多任务系统
正常情况下是有多个任务存在的,然后每个任务都有一个优先级,先是任务列表中最高优先级的任务执行,然后是低优先级的任务执行,如果任务列表中没有指定任务就执行空闲任务(一般空闲任务都是无效延时),所以这样我们就可以达到想执行那个任务就执行哪个任务的目的
优点:实时性好
缺点:代码稍微繁琐,但其实了解框架后写起来也不麻烦