任务,即线程,是PT RTOS操作的最小单位,主要分为以下2部分
(1)静态调用
统一由编译器分配空间,最后不能释放,该方式适合线程从开始到最后一直运行,例如,电池电压监视器,从开始一直到没电都需要监控,不会删除该进程
(2)动态申请
在程序运行中,创建线程,从系统的堆中分配相应的空间,然后运行。该方式适合有始有终的线程,例如,PDA,点击某一应用-文档浏览器,然后系统从堆中创建该线程,关掉文档浏览器,资源重新返回到堆中
静态API
/*> pt task function definition */
(1)extern pt_err_t PTTaskInit(pt_tcb_t *p,
const char *name,
void (*taskentry)(void *para),
void *para,
pt_uint8_t prio,
pt_stk_t *stackstart,
pt_uint16_t stackSize,
pt_tick_t everytick);
(2)extern pt_err_t PTTaskDelete(pt_tcb_t *p);
(3)extern void PTTaskStartUp(pt_tcb_t *p);
动态API
略,目前无完成