aboutsummaryrefslogtreecommitdiff
path: root/keyboards/planck/rev7/matrix.c
diff options
context:
space:
mode:
authorNick Brassel <[email protected]>2024-08-26 10:01:57 +1000
committerNick Brassel <[email protected]>2024-08-26 10:01:57 +1000
commit5d76c5280dc0aff398cdce19fa54d0e0725c418d (patch)
tree40026340f0d524a6006f18f01ef988e15d271075 /keyboards/planck/rev7/matrix.c
parente6a898e3eea3521d3f0497ee26937d5269d78fb7 (diff)
parent81dcf2b547bacc42bd9cf8ccaccd3d7164e69926 (diff)
downloadqmk_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.c22
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