Explorar o código

Clean up #343's code (#348)

Eric Tang %!s(int64=9) %!d(string=hai) anos
pai
achega
1ae6011cef
Modificáronse 2 ficheiros con 5 adicións e 7 borrados
  1. 2 2
      quantum/matrix.c
  2. 3 5
      tmk_core/common/keyboard.c

+ 2 - 2
quantum/matrix.c

@@ -37,10 +37,8 @@ static const io_pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
 /* matrix state */
 #if DIODE_DIRECTION == COL2ROW
 static matrix_row_t matrix[MATRIX_ROWS];
-static matrix_row_t debouncing_matrix[MATRIX_ROWS];
 #else
 static matrix_col_t matrix[MATRIX_COLS];
-static matrix_col_t debouncing_matrix[MATRIX_COLS];
 #endif
 static int8_t debouncing_delay = -1;
 
@@ -99,6 +97,7 @@ void matrix_init(void) {
 
 #if DIODE_DIRECTION == COL2ROW
 uint8_t matrix_scan(void) {
+    static matrix_row_t debouncing_matrix[MATRIX_ROWS];
     for (int8_t r = MATRIX_ROWS - 1; r >= 0; --r) {
         toggle_row(r);
         matrix_row_t state = read_cols();
@@ -146,6 +145,7 @@ matrix_row_t matrix_get_row(uint8_t row) {
 
 #else
 uint8_t matrix_scan(void) {
+    static matrix_col_t debouncing_matrix[MATRIX_COLS];
     for (int8_t c = MATRIX_COLS - 1; c >= 0; --c) {
         toggle_col(c);
         matrix_col_t state = read_rows();

+ 3 - 5
tmk_core/common/keyboard.c

@@ -96,17 +96,15 @@ void keyboard_init(void) {
 
 /* does routine keyboard jobs */
 void keyboard_task(void) {
-    static matrix_row_t previous_matrix[MATRIX_ROWS];
-#ifdef MATRIX_HAS_GHOST
-    static matrix_row_t deghosting_matrix[MATRIX_ROWS];
-#endif
-    static uint8_t led_status = 0;
+    static uint8_t led_status;
     matrix_scan();
     for (int8_t r = MATRIX_ROWS - 1; r >= 0; --r) {
+        static matrix_row_t previous_matrix[MATRIX_ROWS];
         matrix_row_t state = matrix_get_row(r);
         matrix_row_t changes = state ^ previous_matrix[r];
         if (changes) {
 #ifdef MATRIX_HAS_GHOST
+            static matrix_row_t deghosting_matrix[MATRIX_ROWS];
             if (is_row_ghosting(r)) {
                 /* debugs the deghosting mechanism */
                 /* doesn't update previous_matrix until the ghosting has stopped