From 2795b7a0a30c351a85f17cb4c0b414297e096282 Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 27 Mar 2013 17:15:06 +0900 Subject: Fix debouncing on gh60, hbkb, macway --- keyboard/hbkb/Makefile.lufa | 4 ++-- keyboard/hbkb/config.h | 2 +- keyboard/hbkb/matrix.c | 50 +++++++++++++++------------------------------ 3 files changed, 20 insertions(+), 36 deletions(-) (limited to 'keyboard/hbkb') diff --git a/keyboard/hbkb/Makefile.lufa b/keyboard/hbkb/Makefile.lufa index 33366d7208..a626d476c8 100644 --- a/keyboard/hbkb/Makefile.lufa +++ b/keyboard/hbkb/Makefile.lufa @@ -97,11 +97,11 @@ F_USB = $(F_CPU) # Build Options # comment out to disable the options. # +BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = yes # Console for debug -#NKRO_ENABLE = yes # USB Nkey Rollover -#PS2_MOUSE_ENABLE = yes # PS/2 mouse(TrackPoint) support +COMMAND_ENABLE = yes # Commands for debug and configuration # Boot Section Size in bytes diff --git a/keyboard/hbkb/config.h b/keyboard/hbkb/config.h index aa3af30c14..b31a865382 100644 --- a/keyboard/hbkb/config.h +++ b/keyboard/hbkb/config.h @@ -37,7 +37,7 @@ along with this program. If not, see . #define MATRIX_HAS_GHOST /* Set 0 if need no debouncing */ -#define DEBOUNCE 10 +#define DEBOUNCE 5 /* legacy keymap support */ #define USE_LEGACY_KEYMAP diff --git a/keyboard/hbkb/matrix.c b/keyboard/hbkb/matrix.c index f6830a0f71..ee32312d9a 100644 --- a/keyboard/hbkb/matrix.c +++ b/keyboard/hbkb/matrix.c @@ -37,16 +37,14 @@ along with this program. If not, see . #endif static uint8_t debouncing = DEBOUNCE; -// matrix state buffer(1:on, 0:off) -static uint8_t *matrix; -static uint8_t *matrix_debouncing; -static uint8_t matrix0[MATRIX_ROWS]; -static uint8_t matrix1[MATRIX_ROWS]; +/* matrix state(1:on, 0:off) */ +static matrix_row_t matrix[MATRIX_ROWS]; +static matrix_row_t matrix_debouncing[MATRIX_ROWS]; #ifdef MATRIX_HAS_GHOST static bool matrix_has_ghost_in_row(uint8_t row); #endif -static uint8_t read_col(void); +static matrix_row_t read_cols(void); static void unselect_rows(void); static void select_row(uint8_t row); @@ -65,13 +63,6 @@ uint8_t matrix_cols(void) void matrix_init(void) { - print_enable = true; - debug_enable = true; - debug_matrix = true; - debug_keyboard = false; - debug_mouse = false; - print("debug enabled.\n"); - // JTAG disable for PORT F. write JTD bit twice within four cycles. MCUCR |= (1<