palSetPadMode(GPIOC, 10, PAL_MODE_OUTPUT_PUSHPULL);
palSetPadMode(GPIOC, 11, PAL_MODE_OUTPUT_PUSHPULL);
- memset(matrix, 0, MATRIX_ROWS);
- memset(matrix_debouncing, 0, MATRIX_ROWS);
+ memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
+ memset(matrix_debouncing, 0, MATRIX_ROWS * sizeof(matrix_row_t));
+
+ matrix_init_quantum();
}
uint8_t matrix_scan(void)
case 8: palSetPad(GPIOC, 11); break;
}
- wait_us(10); // need wait to settle pin state
+ wait_us(20); // need wait to settle pin state
// read col data: { PTD0, PTD1, PTD4, PTD5, PTD6, PTD7, PTC1, PTC2 }
data = ((palReadPort(GPIOC) & 0x06UL) << 5) |
}
debouncing = false;
}
+ matrix_scan_quantum();
return 1;
}