1
0
Fork 0

[Keyboard] Fix symmetric70_proto build break on develop branch (#13667)

Co-authored-by: Drashna Jaelre <drashna@live.com>
This commit is contained in:
Takeshi ISHII 2021-07-24 01:05:06 +09:00 committed by GitHub
parent 6747890562
commit 5b904a92c4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -205,7 +205,7 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
# endif # endif
if (MATRIX_IO_DELAY_ALWAYS || current_row + 1 < MATRIX_ROWS) { if (MATRIX_IO_DELAY_ALWAYS || current_row + 1 < MATRIX_ROWS) {
MATRIX_DEBUG_DELAY_START(); MATRIX_DEBUG_DELAY_START();
matrix_output_unselect_delay(current_row, current_row_value != 0); matrix_output_unselect_delay(current_row, current_row_value != 0); // wait for col signal to go HIGH
MATRIX_DEBUG_DELAY_END(); MATRIX_DEBUG_DELAY_END();
} }
@ -238,6 +238,7 @@ static void init_pins(void) {
static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) {
bool matrix_changed = false; bool matrix_changed = false;
bool key_pressed = false;
// Select col // Select col
select_col(current_col); select_col(current_col);
@ -253,6 +254,7 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col)
if (readPin(row_pins[row_index]) == 0) { if (readPin(row_pins[row_index]) == 0) {
// Pin LO, set col bit // Pin LO, set col bit
current_row_value |= (MATRIX_ROW_SHIFTER << current_col); current_row_value |= (MATRIX_ROW_SHIFTER << current_col);
key_pressed = true;
} else { } else {
// Pin HI, clear col bit // Pin HI, clear col bit
current_row_value &= ~(MATRIX_ROW_SHIFTER << current_col); current_row_value &= ~(MATRIX_ROW_SHIFTER << current_col);
@ -268,7 +270,7 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col)
// Unselect col // Unselect col
unselect_col(current_col); unselect_col(current_col);
if (MATRIX_IO_DELAY_ALWAYS || current_col + 1 < MATRIX_COLS) { if (MATRIX_IO_DELAY_ALWAYS || current_col + 1 < MATRIX_COLS) {
matrix_output_unselect_delay(current_row, current_row_value != 0); matrix_output_unselect_delay(current_col, key_pressed); // wait for col signal to go HIGH
} }
return matrix_changed; return matrix_changed;