|
- //注意
- //任务优先级必须小于任务个数,不然会死机
- //任务优先级并非真实的,高有限级的任务不会打断低优先级的任务
- //只是当2个任务执行的时间到了,高优先级的任务会优先执行
- //任务的优先级同时也是任务的句柄,任务创建和使能的时候会用到
- //任务无法删除,可以通过失能,失任务不执行
- #define Rtos_Num 5//任务个数
- //简单任务调度
- typedef struct{
- void (*fTask)(void);//任务指针
- uint8_t runFlag;//运行标志位 1使能 0失能
- uint16_t uLenTick;//任务调度周期
- uint32_t uNextTick;//下次执行时间
- }sTask;
- // extern uint32_t Rtos_SysTim; //系统时间 一般是1ms定时器
- //创建任务
- void Rtos_Creat(void *Task_Name,uint8_t Priority,uint8_t enable,uint32_t starttim,uint16_t tim);
- //任务使能
- void Rtos_En(uint8_t Priority,uint8_t enable);
- //开始执行任务
- void Rtos_Run(void);
复制代码
|
评分
-
查看全部评分
|