|
@@ -24,13 +24,15 @@
|
|
|
#include "debug.h"
|
|
|
#include "matrix.h"
|
|
|
|
|
|
+typedef uint16_t matrix_col_t;
|
|
|
+
|
|
|
/*
|
|
|
* col: { B11, B10, B2, B1, A7, B0 }
|
|
|
* row: { A10, A9, A8, B15, C13, C14, C15, A2 }
|
|
|
*/
|
|
|
/* matrix state(1:on, 0:off) */
|
|
|
static matrix_row_t matrix[MATRIX_ROWS];
|
|
|
-static matrix_row_t matrix_debouncing[MATRIX_COLS];
|
|
|
+static matrix_col_t matrix_debouncing[MATRIX_COLS];
|
|
|
static bool debouncing = false;
|
|
|
static uint16_t debouncing_time = 0;
|
|
|
|
|
@@ -66,7 +68,7 @@ void matrix_init(void) {
|
|
|
palSetPadMode(GPIOA, 6, PAL_MODE_INPUT_PULLDOWN);
|
|
|
|
|
|
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
|
|
- memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_row_t));
|
|
|
+ memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_col_t));
|
|
|
|
|
|
matrix_init_quantum();
|
|
|
}
|
|
@@ -74,7 +76,7 @@ void matrix_init(void) {
|
|
|
uint8_t matrix_scan(void) {
|
|
|
// actual matrix
|
|
|
for (int col = 0; col < MATRIX_COLS; col++) {
|
|
|
- matrix_row_t data = 0;
|
|
|
+ matrix_col_t data = 0;
|
|
|
|
|
|
// strobe col { B11, B10, B2, B1, A7, B0 }
|
|
|
switch (col) {
|