73 lines
1.5 KiB
C
Executable File
73 lines
1.5 KiB
C
Executable File
#ifndef __SF_KEYMNG_H__
|
|
#define __SF_KEYMNG_H__
|
|
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
#endif
|
|
#include "sf_type.h"
|
|
#include "sf_hal_gpio.h"
|
|
|
|
#include "sf_param_common.h"
|
|
|
|
|
|
|
|
typedef enum sf_KEY_PIN_E
|
|
{
|
|
SF_KEY_PIN_RESET = 69,
|
|
SF_KEY_PIN_SYNC = 4,
|
|
SF_KEY_PIN_FORMAT = 66,
|
|
SF_KEY_PIN_DATAREADY = 6,
|
|
SF_KEY_PIN_FILESTATUS = 128,/*virtual key*/
|
|
} SF_KEY_PIN_E;
|
|
typedef enum sf_KEY_TYPE_E
|
|
{
|
|
SF_KEY_TYPE_CLICK = 0,
|
|
SF_KEY_TYPE_HOLD,
|
|
} SF_KEY_TYPE_E;
|
|
|
|
typedef enum sf_KEY_STATE_E
|
|
{
|
|
SF_KEY_STATE_DOWN = 0,
|
|
SF_KEY_STATE_UP,
|
|
SF_KEY_STATE_BUIT
|
|
} SF_KEY_STATE_E;
|
|
typedef enum sf_MESSAGE_CMD_KEY_e
|
|
{
|
|
SF_EVENT_KEY_SHORT_CLICK = 0x01,
|
|
SF_EVENT_KEY_LONG_CLICK,
|
|
SF_EVENT_KEY_HOLD_DOWN,
|
|
SF_EVENT_KEY_HOLD_UP,
|
|
SF_EVENT_KEY_GROUP,
|
|
SF_EVENT_KEY_BUTT
|
|
}SF_MESSAGE_CMD_KEY_E;
|
|
|
|
typedef struct tagKEYMNG_INFO_S
|
|
{
|
|
SF_KEY_PIN_E u8keyIdx; /* serial number*/
|
|
SF_BOOL u32status; /* PIN state*/
|
|
SINT16 u32keycount; /* Count value*/
|
|
SINT16 ShortLongMaxCount; /* Pin number*/
|
|
SF_KEY_STATE_E enState; /* Initial state*/
|
|
} SF_KEYMNG_INFO_S;
|
|
const SF_CHAR* sf_keyctrl_getstatusstring(SF_MESSAGE_CMD_KEY_E enType);
|
|
|
|
const SF_CHAR* sf_keypin_getstatusstring(SF_KEY_PIN_E enType);
|
|
|
|
SINT32 sf_Key_ctrl_init(void);
|
|
SINT32 sf_Key_ctrl_deinit(void);
|
|
SINT32 sf_Key_ctrl_Start(void);
|
|
SINT32 sf_Key_ctrl_Stop(void);
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|