Ⅳ、裁剪系统(配置os_cfg.h)
对于我们常说的系统可裁剪,其实就是对系统某些功能打开和关闭,使用到的功能才打开,不使用的功能就关闭(即使能和失能),这个文件就集中在os_cfg.h文件里面。
这里先说一下重要的几个选项:
1.最低优先级OS_LOWEST_PRIO
这个与我们配置任务优先级有关系,最低优先级任务配置的最大值。我们所说的任务优先级关系是:优先级越小,数值越大; 相反,优先级越大,数值越小。
位于os_cfg.h文件第39行:
#define OS_LOWEST_PRIO 63
2.系统每秒滴答数OS_TICKS_PER_SEC
这个宏定义的意思就是说,系统每秒钟滴答多少次,它与系统延时(OSTimeDly)关系比较重要,我们的例子中OS_TICKS_PER_SEC等于100,调用OSTimeDly(100);相当于的延时100个滴答,即延时1秒的意思。
位于os_cfg.h文件第51行:
#define OS_TICKS_PER_SEC 100
3.任务堆栈大小OS_TASK_xxx_STK_SIZE
这个几个宏定义在使用相应功能的时候有用,如果RAM资源有限,这个任务堆栈的大小最好根据任务来评估一下,资源有限时不要太大,当然也不能小于程序正常运行。
位于os_cfg.h文件第55 - 57行:
#define OS_TASK_TMR_STK_SIZE 128
#define OS_TASK_STAT_STK_SIZE 128
#define OS_TASK_IDLE_STK_SIZE 128
4.其他
还有很多与系统其他资源相关的配置,正常的情况下是需要的时候才开启,不用尽量关闭。一是节约资源,二是减少编译时间。后期我会将中文注释在后面。