#ifndef __BSP_KEY_H__ #define __BSP_KEY_H__ // #include "CONFIG.h" #include #include #define KEY_TIMOUT_MS 3000 #define KEY_LONG_PRESS_MS 5000 #define KEY_SACN_MS 40 #define KEY_SCAN_EVT (0x0001 << 0) #define KEY_WAKEUP_EVT (0x0001 << 1) #define KEY_RELEASE_EVT (0x0001 << 2) #define KEY_IDLE_TIMEOUT_EVT (0x0001 << 3) // KEY_B_PIN at PB0, low->active #define KEY_B_PIN GPIO_Pin_0 // #define KEY_B_PIN GPIO_Pin_0 #define IS_KEY_Vaild() ((GPIOB_ReadPortPin(KEY_B_PIN) ? 0 : 1)) typedef enum { kKeyShort = 0, kKeyLong, kKeyRelease, } TeAppEvtType; typedef void (*app_task_evt_handler_t)(TeAppEvtType app_task_evt_type); void BSP_KEY_EnterLowpower(void); void BSP_KEY_ExitLowpower(void); void BSP_KEY_Init(app_task_evt_handler_t handler); void KEY_ProcessLoop(void); #endif // !__BSP_KEY_H__