/** * @file KeyboardConfig.h * @brief Header file of keyboard configuration. * * @verbatim * ============================================================================== * ##### How to use ##### * ============================================================================== * * @ endverbatim * * @author HiView SoC Software Team * @version 1.0.0 * @date 2023-05-30 */ #ifndef __KEYBOARD_CONFIG_H__ #define __KEYBOARD_CONFIG_H__ #include "Keyboard.h" #define KEY_HOLD_TIME_MS 500 /* if don't support double kick, config it small. if support it, 250 maybe useful. */ #define KEY_DOUBLE_CLICK_TIME_MS 20 /* 两路ADC按键对应的使能开关,1:开 0:关 */ #define ADC0_KEY_ENABLE 1 #define ADC1_KEY_ENABLE 1 /* 单路ADC对应的按键数量,注意单路最多支持6个按键 */ #define SINGLE_ADC_KEY_NUMS 3 /* ADC功能按键的总数量(两路总和) */ #define ADC_KEY_NUMS (SINGLE_ADC_KEY_NUMS*2) /* 组合按键使能开关 */ #define ADC_COMBO_KEY_ENABLE 1 /* 组合按键的个数,注意:组合按键只支持两路ADC按键同时开启的情况 */ #define ADC_COMBO_KEY_NUMS 1 /* ADC键值的阈值,注意:ADC_Theshold_MAX 要大于所有ADC键值的最大值; ADC_Theshold_MIN要小于所有ADC键值的最小值 */ #define ADC_Theshold_MAX (0x700) #define ADC_Theshold_MIN (2) /* MENU + POWER 组合按键的定义,需要给出MENU按键在ADC0还是ADC1 */ #define PM51_CONFIG_MENU_KEY_WITH_ADC_INDEX MENU_KEY_WITH_ADC0 /* LED ON时对应PWM的极性 */ #define PM51_CONFIG_LED_ON_WITH_PWM_POL PWM_POL_LOW /* 工厂按键的对应的键值Index,注意:具体按键名称可以在结构体定义中查找; 进入工厂的方法是:关机后按住定义的按键,再交流开机,当系统显示LOGO的时候松开按键 */ #define PM51_CONFIG_FACTORY_MODE_KEY_VAL E_ADC0_KEY_VAL_4 /* 配置Powerkey对应的功能模式 */ #define PM51_CONFIG_POWER_KEY_MODE POWER_KEY_MODE_NORMAL /* 按键长按的时长,持续OSD_DEFAULT_KEY_HOLD_TIME_MS时间后,触发按键长按操作 */ #define OSD_DEFAULT_KEY_HOLD_TIME_MS (3000) /* 按键重复周期,用于OSD菜单的连续切换 */ #define OSD_DEFAULT_KEY_REPEAT_PERIOD_MS (200) /* 按键重复周期,用于OSD连续数据的调整 */ #define OSD_ADJUST_KEY_REPEAT_PERIOD_MS (20) /* LED 亮灭间隔时间 */ #define PM51_CONFIG_LED_BREATH_TIME (1) #ifdef HV_CONFIG_ARCH_RISC UINT32 GetAdcMappedValue(UINT32 uiAdcValue); #endif #endif