⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 systask.h

📁 名厂车载GPS通信终端
💻 H
字号:
#ifndef SYSTASK_H
#define SYSTASK_H  1

#ifdef SYSTASK_GLOBAL
#define SYSTASK_EXT 
#else 
#define SYSTASK_EXT extern 
#endif 
#define MAX_TASK_NUM   5
#define MAX_TASK_TCB   40
//---------------TASK STATUS---------------------
#define TASK_REMOVED    0x00
#define TASK_CREATE     0x01
#define TASK_UNUSE      0x02
#define TASK_USE        0x04
#define TASK_SUCCESS    0x55           //发送任务消息成功
#define TASK_FAIL       0xaa           //发送任务消息失败
//-----------------------------------------------
typedef struct TASKSSTRUCT
{
   uchar       taskid;
   uchar       msgid;
   uchar       *msgptr;
   struct TASKSSTRUCT *next;
};
typedef  struct TASKSSTRUCT  TASK_STRUCT;

typedef struct
{
   void far (*initproc)();
   void far (*entryproc)();
   uchar taskid;
   BOOL status;
} TASK_TCB_STRUCT;

SYSTASK_EXT TASK_TCB_STRUCT  task[MAX_TASK_NUM];
SYSTASK_EXT struct TASKSSTRUCT      task_tcb[MAX_TASK_TCB];
SYSTASK_EXT struct TASKSSTRUCT      *Current_Tskmsg;
//-----------------------------------------------
SYSTASK_EXT void Init_Systask(void);
SYSTASK_EXT uchar Find_Task(void);
SYSTASK_EXT uchar Create_Task(void far (*initproc)(),void far (*entryproc)());
SYSTASK_EXT void Remove_Task(uchar taskid);
SYSTASK_EXT TASK_STRUCT * New_Taskptr(void);
SYSTASK_EXT uchar Send_Taskmsg(uchar taskid,uchar msgid,uchar *msgptr);
SYSTASK_EXT void Remove_Taskmsg(void);
SYSTASK_EXT void Task_Schedule(void);
#endif 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -