📄 timer.h
字号:
// Period in ns
#define IR_POLLING_PERIOD (unsigned long)375000
#define MAIN_LOOP_PERIOD (unsigned long)20000000
#define DELAY_ONE_MS (unsigned long)1000000
#define DELAY_HALF_MS (unsigned long)500000
#define MCU_INST_CYCLE ((unsigned long)1000000 * 12 / MCU_XTAL)
#if (IRPOLLING)
// Timer0 Period : 0.375ms
#define TIME0_COUNTER_NUM (0xFFFF - (IR_POLLING_PERIOD / MCU_INST_CYCLE))
#define TIME0_COUNTER_LBYTE (TIME0_COUNTER_NUM & 0xFF)
#define TIME0_COUNTER_HBYTE (TIME0_COUNTER_NUM >> 8)
#else
// Timer0 Period : 20 ms
#define TIME0_COUNTER_NUM (0xFFFF - (MAIN_LOOP_PERIOD / MCU_INST_CYCLE))
#define TIME0_COUNTER_LBYTE (TIME0_COUNTER_NUM & 0xFF)
#define TIME0_COUNTER_HBYTE (TIME0_COUNTER_NUM >> 8)
#endif
// Timer1 Period : 1 ms
#define TIME1_COUNTER_NUM (0xFFFF - (DELAY_ONE_MS / MCU_INST_CYCLE))
#define TIME1_COUNTER_LBYTE (TIME1_COUNTER_NUM & 0xFF)
#define TIME1_COUNTER_HBYTE (TIME1_COUNTER_NUM >> 8)
#ifdef __TIMER__
bit bNotify_Timer0_Int = 0;
bit bNotify_Timer1_Int = 0;
void Delay_Xms(unsigned char x); // For delay 0 ~ 255 ms
#else
extern bit bNotify_Timer0_Int;
extern bit bNotify_Timer1_Int;
extern void Delay_Xms(unsigned char x); // For delay 0 ~ 255 ms
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -