1,app.cfg.h是配置应用程序的头文件,用来设定任务的优先级、栈空间的大小和其他一些应用相关的参数。
2,创建一个任务时,必须为该任务分配一个任务控制块(OS-TCB)。
3,OSInit()会初始化系统中的内部变量以及数据结构,并会创建2~5个任务,uC/OS至少会创建2个系统任务:空闲任务OS_IdleTask()--在其他任务都不就绪时运行;时钟节拍任务--负责时间的管理。还可能创建统计任务OS_StatTask(),定时任务OS_TmrTask(),中断处理队列管理任务OS_IntQTask()。
4,传递给OSTaskCreate的第六个参数是分配给给任务的栈空间的基地址,基地址总是栈空间的最低地址。
5,如果在os_cfg.h中使能OS_IntQTask()(通过OS_CFG_ISR_POST_DEFERRED_EN常量),那么该任务永远是最高优先级的任务。
6,进入临界段代码的宏为OS_CRITOCAL_ENTER(),退出临界代码段的宏为:OS_CRITICAL_EXIT()和OS_CRITICAL_EXIT_NO_SCHED(),但是应用代码不能使用这些宏,这些宏是系统的内部定义。
7,测量中断时间的功能通过设置cpu_cfg.h头文件中的CPU_CFG_INT_DIS_MEAS_EN置为1来允许该功能。uC/OS-III通过关中断(os_cfg.h中OS_CFG_ISR_POST_DEFERRED_EN置为0)或给调度器上锁(os_cfg.h中OS_CFG_ISR_POST_DEFERRED_EN置为1)来保护临界代码段。
8,uC/OS任务管理中,最大的任务数积极受限于处理器可用的存储器容量(包括代码存储空间和数据存储空间);