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

📄 timer.h

📁 Realtek 公司的RTD2523A芯片原厂source code,没有被修改过的。
💻 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 + -