diff options
author | Nick Brassel <[email protected]> | 2024-08-26 10:01:57 +1000 |
---|---|---|
committer | Nick Brassel <[email protected]> | 2024-08-26 10:01:57 +1000 |
commit | 5d76c5280dc0aff398cdce19fa54d0e0725c418d (patch) | |
tree | 40026340f0d524a6006f18f01ef988e15d271075 /keyboards/planck/rev7/matrix.c | |
parent | e6a898e3eea3521d3f0497ee26937d5269d78fb7 (diff) | |
parent | 81dcf2b547bacc42bd9cf8ccaccd3d7164e69926 (diff) | |
download | qmk_firmware-5d76c5280dc0aff398cdce19fa54d0e0725c418d.tar.gz qmk_firmware-5d76c5280dc0aff398cdce19fa54d0e0725c418d.zip |
Merge branch 'develop'0.26.0
Diffstat (limited to 'keyboards/planck/rev7/matrix.c')
-rw-r--r-- | keyboards/planck/rev7/matrix.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/keyboards/planck/rev7/matrix.c b/keyboards/planck/rev7/matrix.c index 777bd6a7fe..44f532db65 100644 --- a/keyboards/planck/rev7/matrix.c +++ b/keyboards/planck/rev7/matrix.c @@ -111,13 +111,21 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) { return changed; } +#if defined(ENCODER_ENABLE) || defined(ENCODER_MAP_ENABLE) +#if !defined(PLANCK_ENCODER_SETTLE_PIN_STATE_DELAY) +# define PLANCK_ENCODER_SETTLE_PIN_STATE_DELAY 10 +#endif + +void encoder_quadrature_init_pin(uint8_t index, bool pad_b) { +} + uint8_t encoder_quadrature_read_pin(uint8_t index, bool pad_b) { - pin_t pin = pad_b ? B13: B12; - gpio_set_pin_input_high(pin); - gpio_write_pin_low(matrix_row_pins[index]); - wait_us(10); - uint8_t ret = gpio_read_pin(pin) ? 1 : 0; - gpio_set_pin_input_low(matrix_row_pins[index]); - gpio_set_pin_input_low(pin); + pin_t col_pin = pad_b ? B13 : B12; + gpio_set_pin_output(col_pin); + gpio_write_pin_high(col_pin); + wait_us(PLANCK_ENCODER_SETTLE_PIN_STATE_DELAY); + uint8_t ret = gpio_read_pin(matrix_row_pins[index]) ? 0 : 1; + gpio_set_pin_input_low(col_pin); return ret; } +#endif // ENCODER_ENABLE || ENCODER_MAP_ENABLE |