📄 sch51.h
字号:
/*-------------------------------------------------------*-
SCH51.H (V1.1)
调度器的数据结构以及任务队列
-*-------------------------------------------------------*/
/*
* Copyright (c) 2006,wsl
* All rights reserved
*
* 文件名称: SCH51.H
* 文件标识:
* 摘 要: 调度器的核心是调度器的数据结构.这是一种用户
* 自定义的数据类型,集中了每个任务所需的信息.
*
* 当前版本: 1.1 * 取代版本:
* 作 者: wsl * 原作者 : Michael J.Pont
* 完成日期: 2006-09-14 * 完成日期:
*********************************************************/
#ifndef _SCH51_H
#define _SCH51_H
#include"Main.H"
//---------------公用数据类型声明------------------------
// 可能的话,存储在DATA区,以供快速存取
// 每个任务的存储器总和是7个字节
typedef data struct
{
// 指向任务的指针(必须是一个'void(void)'函数)
// 构造一个指向函数的指针变量.专门用来存放函数的入口地址
void (code *pTask)(void);
// 延迟Delay个时标后函数将第一次运行
// 当Delay=0时,任务立即运行
unsigned int Delay;
// 在连续的运行之间的间隔(时标)
// 当Period=0时,任务运行一次.
unsigned int Period;
// 当任务需要运行时(由调度器)加1
unsigned char RunMe;
} sTask;
/*******************************************************/
//------------公用的函数原型----------------------------
// 调度器内核函数
extern void SCH_Dispatch_Tasks(void);
extern unsigned char SCH_Add_Task(void (code *pFunction)(), // 任务指针
const unsigned int DELAY, // 延迟Delay个时标后函数将第一次运行
const unsigned int PERIOD); // 连续的运行之间的间隔(时标)
extern bit SCH_Delete_Task(const unsigned char TASK_INDEX);
extern void SCH_Init_Timer2(void);
extern void SCH_Start(void);
//--------------------------------------------------------
#endif
//-------------------END OF FILE-------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -