📄 scheduler.h
字号:
/*H**************************************************************************
* NAME: scheduler.h
*----------------------------------------------------------------------------
* Copyright (c) 2002 Atmel.
*----------------------------------------------------------------------------
* RELEASE: snd1c-refd-nf-3_0_0
* REVISION: 1.7
*----------------------------------------------------------------------------
* PURPOSE:
* This file contains the scheduler definition and the task function to be
* executed by the scheduler
*
* NOTE:
* SCHEDULER_TICK & FPER are defined in config.h
*
*****************************************************************************/
#ifndef _SCHEDULER_H_
#define _SCHEDULER_H_
/*_____ I N C L U D E S ____________________________________________________*/
#include "modules\mode\mode_task.h" /* mode task definition */
#include "modules\mem\mem_task.h" /* memory task definition */
#include "modules\display\disp_task.h" /* display task definition */
#include "modules\kbd\kbd_task.h" /* memory task definition */
#include "modules\mass\usb_task.h" /* usb task definition */
extern bit connected;
/*_____ M A C R O S ________________________________________________________*/
/*----- Scheduler Types -----*/
#define SCH_TIMED 0
#define SCH_TASK 1
#define SCH_FREE 2
/*----- Scheduler Timer -----*/
#define SCH_TIMER0 0
#define SCH_TIMER1 1
#define SCH_TIMER2 2
/*----- Scheduler Configuration -----*/
#define SCH_TYPE SCH_FREE /* SCH_TIMED, SCH_TASK, SCH_FREE */
#define SCH_TIMER SCH_TIMER0 /* SCH_TIMER0, SCH_TIMER1, SCH_TIMER2 */
/*----- Scheduler Timer Configuration -----*/
#define TIM_ADJUST (Byte)4 /* to be modified for timing adjustment */
#define TIM_LOW LOW(65536 - (SCHEDULER_TICK * (FPER / 6)) + TIM_ADJUST)
#define TIM_HIGH HIGH(65536 - (SCHEDULER_TICK * (FPER / 6)))
/*----- Task Definitions -----*/
#define Task_1_init() disp_task_init()
#define Task_2_init() mode_task_init()
#define Task_3_init() usb_task_init()
#define Task_4_init() mem_task_init()
#define Task_5_init() kbd_task_init()
#define Task_6_init()
#define Task_7_init()
#define Task_8_init()
#define Task_9_init()
#define Task_10_init()
#define Task_1_fct() mode_task()
#define Task_2_fct() if (connected) usb_task()
#define Task_3_fct() mem_task()
#define Task_4_fct() disp_task()
#define Task_5_fct() kbd_task()
#define Task_6_fct()
#define Task_7_fct()
#define Task_8_fct()
#define Task_9_fct()
#define Task_10_fct()
/*_____ D E F I N I T I O N ________________________________________________*/
/*_____ D E C L A R A T I O N ______________________________________________*/
void sch_scheduler_init(void);
void sch_scheduler(void);
void sch_default_fct (void);
#if (SCH_TYPE == SCH_FREE)
#define Sch_new_schedule()
#define Sch_call_next_task()
#elif (SCH_TYPE == SCH_TIMED)
#define Sch_new_schedule() while (!sch_tick_flag); sch_tick_flag = FALSE
#define Sch_call_next_task()
#elif (SCH_TYPE == SCH_TASK)
#define Sch_new_schedule()
#define Sch_call_next_task() while (!sch_tick_flag); sch_tick_flag = FALSE
#endif
#endif /* _SCHEDULER_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -