update key delay

This commit is contained in:
Steven Dan
2026-01-14 23:23:08 +08:00
parent f1e57e307c
commit ddd68d64e3

View File

@@ -1,4 +1,4 @@
#define DEBUG_PRINT_ENABLE 0
#define DEBUG_PRINT_ENABLE 1
#include <platform.h>
#include <xs1.h>
@@ -688,8 +688,8 @@ void update_button(unsigned char b)
#endif
#if defined (PHATEN_GSV2)
#define KEY_POLLING_INTERVAL 1000000L // 10ms polling interval (改动原因提高按键响应速度从100ms改为10ms)
#define HOLD_THRESHOLD 200 // time = HOLD_THRESHOLD * KEY_POLLING_INTERVAL = 2000ms (改动原因KEY_POLLING_INTERVAL改为10ms后HOLD_THRESHOLD需要改为200以保持2000ms长按时间)
#define KEY_POLLING_INTERVAL 10000000L // 100ms polling interval
#define HOLD_THRESHOLD 20 // time = HOLD_THRESHOLD * KEY_POLLING_INTERVAL = 2000ms
// 改动原因添加LED闪烁相关宏定义用于长按时直接循环闪烁3次
#define BLINK_COUNT 3 // LED闪烁次数3次
#endif
@@ -964,6 +964,7 @@ void hid_button_task(chanend_t cc_mic_level, chanend_t c_hidRcvData, chanend_t c
port_out(p_leds, leds1_val);
#endif
unsigned endData[1] = {0xffffffff};
debug_printf("endData[0]: %d\n", endData[0]);
chan_out_word(c_hidSendData, endData[0]);
}
}
@@ -1029,7 +1030,7 @@ void hid_button_task(chanend_t cc_mic_level, chanend_t c_hidRcvData, chanend_t c
port_disable(p_leds);
hwtimer_free(timer);
}
#define KEY_POLLING_INTERVAL 1000000L // 10ms polling interval (改动原因提高按键响应速度从100ms改为10ms)
#define KEY_POLLING_INTERVAL 10000000L // 100ms polling interval
void button_task(chanend_t c_hidSendData, chanend_t cc_mic_level, chanend_t c_uac_vol)
{
hwtimer_t timer = hwtimer_alloc();
@@ -1300,7 +1301,7 @@ void button_task(chanend_t c_hidSendData, chanend_t cc_mic_level, chanend_t c_ua
case KEY_PLAY_VOL_UP:
// 改动原因处理播放音量增按键发送HID控制命令
if ((curr_ctrl_keys & KEY_PLAY_VOL_UP) == 0) {
update_button(HID_CONTROL_VOLDN); // 更新HID报告
update_button(HID_CONTROL_VOLUP); // 更新HID报告
}
break;
default: