struct StructTimerFlag uint16_t u16_b100ms 1; BIT0 1100ms鏃堕棿鍒 uint16_t u16_b20ms 1; BIT1 120ms鏃堕棿鍒 uint16_t u16_b5ms
struct StructTimerFlag { uint16_t u16_b100ms :1; // 1位,表示100ms定时器标志 uint16_t u16_b20ms :1; // 1位,表示20ms定时器标志 uint16_t u16_b5ms :1; // 1位,表示5ms定时器标志 uint16_t u16_b10ms :1; // 1位,表示10ms定时器标志
uint16_t u16_b4ms :1; // 1位,表示4ms定时器标志
uint16_t u16_b1ms :1; // 1位,表示1ms定时器标志
uint16_t u16_bgt10ms :1; // 1位,表示10.2ms定时器标志,保证DSP时钟精度
uint16_t u16_Power_On :1; // 1位,表示电源开启标志
uint16_t u16_PowerCharge_On :1; // 1位,表示电源充电开启标志
uint16_t u16_PowerCharge_Delay :2; // 2位,表示电源充电延迟时间,用于控制电源充电开始时的延迟
};
struct StructTimer1Flag { uint16_t u16_b1Second :1; // 1位,表示1秒定时器标志 uint16_t u16_b1Minute :1; // 1位,表示1分钟定时器标志 uint16_t u16_b1Hour :1; // 1位,表示1小时定时器标志 uint16_t u16_b1Day :1; // 1位,表示1天定时器标志 uint16_t u16_b1Month :1; // 1位,表示1个月定时器标志 uint16_t u16_b3Month :1; // 1位,表示3个月定时器标志 uint16_t u16_b1Year :1; // 1位,表示1年定时器标志 };
//Chg_Fsw=60000 用于时钟计数 #define Fint 32895 // 时钟频率
#define K100msCnst 12 // 100ms定时器常数,用于计算计数器溢出次数 #define K20msCnst 60 // 20ms定时器常数,用于计算计数器溢出次数 #define K10msCnst 120 // 10ms定时器常数,用于计算计数器溢出次数 #define K5msCnst 241 // 5ms定时器常数,用于计算计数器溢出次数 #define K4msCnst 301 // 4ms定时器常数,用于计算计数器溢出次数 #define K2msCnst 602 // 2ms定时器常数,用于计算计数器溢出次数 #define K1msCnst 1206 // 1ms定时器常数,用于计算计数器溢出次数 #define Kgt10msCnst 100 // 10.2ms定时器常数,用于计算计数器溢出次数,保证DSP时钟精度
extern struct StructTimerFlag st_TimerFlag; // 定时器标志
extern struct StructTimer1Flag st_TimerFlag1; // 定时器1标志
extern uint32_t m_u32_Clk100msCnt; // 100ms时钟计数器 extern uint32_t m_u32_Clk20msCnt; // 20ms时钟计数器 extern uint32_t m_u32_Clk10msCnt; // 10ms时钟计数器 extern uint32_t m_u32_Clk4msCnt; // 4ms时钟计数器 extern uint32_t m_u32_Clk1msCnt; // 1ms时钟计数器 extern uint32_t m_u32_Clkgt10msCnt; // 10.2ms时钟计数器,保证DSP时钟精度 extern uint32_t m_u32_10msecCnt; // 10ms计数器 extern uint32_t m_u32_TimerCnt; // 通用定时器计数器,每1ms加1 extern uint32_t m_u32_Timer1msCnt; // 1ms定时器计数器 extern uint32_t m_u32_Timer1secCnt; // 1秒定时器计数器 extern uint32_t m_u32_Timer1minCnt; // 1分钟定时器计数器 extern uint32_t m_u32_Timer1hourCnt; // 1小时定时器计数器 extern uint32_t m_u32_Timer1dayCnt; // 1天定时器计数器 extern uint16_t RunToBootTimer; // 进入Boot定时器 extern uint16_t RunChargeTimer; // 充电定时器
extern int16_t Drv_100msCome(void); // 100ms定时器中断处理函数,返回1表示定时器溢出 extern int16_t Drv_20msCome(void); // 20ms定时器中断处理函数,返回1表示定时器溢出 extern int16_t Drv_10msCome(void); // 10ms定时器中断处理函数,返回1表示定时器溢出 extern int16_t Drv_4msCome(void); // 4ms定时器中断处理函数,返回1表示定时器溢出 extern int16_t Drv_1msCome(void); // 1ms定时器中断处理函数,返回1表示定时器溢出
原文地址: https://www.cveoy.top/t/topic/bYLX 著作权归作者所有。请勿转载和采集!