📄 os_tasksw.h
字号:
/* $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
OS_TaskSW.h
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ */
#ifndef __OS_TaskSW_H__
#define __OS_TaskSW_H__
#include "RTOS.h"
#define TASK_RUNNING 0x55
#define TASK_STOP 0
// User's task function prototype declare
void Task00(void);
void Task01(void);
void Task02(void);
void Task03(void);
void Task04(void);
void Task05(void);
void Task06(void);
void Task07(void);
#if(MAX_TASK_ID_DIV8 >1)
void Task10(void);
void Task11(void);
void Task12(void);
void Task13(void);
void Task14(void);
void Task15(void);
void Task16(void);
void Task17(void);
#endif
#if(MAX_TASK_ID_DIV8 >2)
void Task20(void);
void Task21(void);
void Task22(void);
void Task23(void);
void Task24(void);
void Task25(void);
void Task26(void);
void Task27(void);
#endif
#if(MAX_TASK_ID_DIV8 >3)
void Task30(void);
void Task31(void);
void Task32(void);
void Task33(void);
void Task34(void);
void Task35(void);
void Task36(void);
void Task37(void);
#endif
// 任务标志常数数组,对应字节的位标志
uchar code TaskFlagTab[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80 };
/* 需要周期性执行的任务,请设置相应周期时间。单位为一个系统节拍
例:系统时钟节拍为10ms,任务3需20ms执行一次,则CycleExcute[0][3]=2;
任务8需1s执行一次,则CycleExcute[1][0]=100;
默认为0,不需定时执行
*/
uint code CycleExcute[MAX_TASK_ID_DIV8][8]=
{
{ 0,0,0,0,0,0,0,0 }
#if(MAX_TASK_ID_DIV8 >1)
,{ 0,0,0,0,0,0,0,0 }
#endif
#if(MAX_TASK_ID_DIV8 >2)
,{ 0,0,0,0,0,0,0,0 }
#endif
#if(MAX_TASK_ID_DIV8 >3)
,{ 0,0,0,0,0,0,0,0 }
#endif
};
/* 任务列表,在前面的任务优先级高于后面的任务,不需另外设置优先级
例:系统初始化函数可设置优先级为最低,放在最后。
*/
void (*code TaskEntrance[MAX_TASK_ID_DIV8][8])(void)=
{ { Task00,Task01,Task02,Task03,Task04,Task05,Task06,Task07 }
#if(MAX_TASK_ID_DIV8 >1)
,{ Task10,Task11,Task12,Task13,Task14,Task15,Task16,Task17 }
#endif
#if(MAX_TASK_ID_DIV8 >2)
,{ Task20,Task21,Task22,Task23,Task24,Task25,Task26,Task27 }
#endif
#if(MAX_TASK_ID_DIV8 >3)
,{ Task30,Task31,Task32,Task33,Task34,Task35,Task36,Task37 }
#endif
};
/* 注:以上两个数组用二维数组而不用一维数组的原因是:任务就绪标志是用位表示
而不是用字节表示的,操作起来比一维数组方便。
*/
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -