25 lines
791 B
C
25 lines
791 B
C
#ifndef __KEY_POWER_H
|
||
#define __KEY_POWER_H
|
||
|
||
|
||
// 按键参数配置
|
||
#define KEY_PRESS_TIME_SHORT 50 // 短按阈值:50ms(防抖)
|
||
#define KEY_PRESS_TIME_LONG 500 // 长按阈值:2000ms(关机触发)
|
||
#define KEY_SCAN_INTERVAL 10 // 按键扫描间隔:10ms
|
||
|
||
// 设备状态枚举
|
||
typedef enum {
|
||
DEVICE_STATE_OFF = 0, // 关机(深度休眠)
|
||
DEVICE_STATE_ON, // 开机(正常工作)
|
||
// DEVICE_STATE_SHUTDOWN // 关机中(过渡状态)
|
||
} Device_StateTypeDef;
|
||
|
||
// 函数声明
|
||
void Key_Power_Init(void); // 引脚初始化(PA0输入、PA1输出)
|
||
void Key_Scan_Task(void); // 按键扫描任务(需定时调用)
|
||
Device_StateTypeDef Get_Device_State(void); // 获取当前设备状态
|
||
void Unit_key(void); //单位按键检测函数,在定时器中断里调用
|
||
|
||
#endif
|
||
|