parent
897f5b2f9d
commit
1ae6011cef
2 changed files with 5 additions and 7 deletions
|
@ -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();
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue