/** * @file TimeTask_Event.h * @author Zhang, Kai(zhangkai71@midea.com) * @brief Time task control * @version 0.1 * @date 2021-09-27 * * @copyright Copyright (c) 2021 * */ #ifndef TIMETEVENT_H #define TIMETEVENT_H /**************************************** * * Definitions & Macros * ****************************************/ #define proc_cnt 5 /*************************************** * * Type Definations * ***************************************/ /** * @brief Type of time task * */ typedef struct { void (*const proc)(void); // process program SLONG timespan; // process period SLONG tick; // process tick } _op_; /**************************************** * * Exported variable * ****************************************/ extern _op_ Op[proc_cnt]; /*************************************** * * Function Definations * ***************************************/ /** * @brief Event happens every 1ms * */ void Event_1ms(void); /** * @brief Event happens every 5ms * */ void Event_5ms(void); /** * @brief Event happens every 10ms * */ void Event_10ms(void); /** * @brief Event happens every 20ms * */ void Event_20ms(void); /** * @brief Event happens every 100ms * */ void Event_100ms(void); /** * @brief Event happens every 200ms * */ void Event_200ms(void); /** * @brief Update timer counter (Call in the interrupt) * */ void TimingTaskTimerServer(void); /** * @brief Update process (Call in the main function) * */ void TimingTaskLoopServer(void); void Signal_detect(void); #endif