2025-11-20 05:28:44
FreeRTOS主要支持ARM Cortex-M系列和Cortex-R系列处理器,比如常见的STM32系列用的是M0/M3/M4内核,智能电表用的R4内核。内存需求要看具体用多少任务和功能,基础版用2KB到8KB就能跑,要是加浮点运算或者几十个任务,得20KB到200KB。比如用M7内核跑工业控制,可能要200KB以上。
为啥是这个答案呢?因为FreeRTOS分轻量级和标准内核,M0内核省内存,M7支持浮点但占空间大。任务越多内存消耗越明显,每个任务至少占4KB栈空间。比如官方测试数据,10个任务用M3内核要28KB,20个任务就要50KB。中断优先级配置复杂的话,内存碎片多,可能需要多预留10%空间。像STM32F4系列跑32个任务,官方样例用75KB内存,要是用M7内核加浮点,得翻倍到150KB。所以要根据具体场景选配置,别光看任务数,还要看中断和计算需求。
本题链接: