diff options
author | Ryan <[email protected]> | 2024-05-02 19:48:49 +1000 |
---|---|---|
committer | GitHub <[email protected]> | 2024-05-02 10:48:49 +0100 |
commit | 61c7c1f74cc5365501a3038181df551df11f719e (patch) | |
tree | 67b134bfd3ba45660765f5c2c46b8d3f535b5b69 /keyboards/hotdox | |
parent | 7220715dd1619dfb073db78cfc23998a67994655 (diff) | |
download | qmk_firmware-61c7c1f74cc5365501a3038181df551df11f719e.tar.gz qmk_firmware-61c7c1f74cc5365501a3038181df551df11f719e.zip |
Convert some AVR GPIO operations to macros (#23424)
Diffstat (limited to 'keyboards/hotdox')
-rw-r--r-- | keyboards/hotdox/hotdox.h | 45 | ||||
-rw-r--r-- | keyboards/hotdox/matrix.c | 45 |
2 files changed, 62 insertions, 28 deletions
diff --git a/keyboards/hotdox/hotdox.h b/keyboards/hotdox/hotdox.h index b933344439..d0b6c401f9 100644 --- a/keyboards/hotdox/hotdox.h +++ b/keyboards/hotdox/hotdox.h @@ -4,17 +4,46 @@ #include <stdint.h> #include <stdbool.h> +#define HOTDOX_BOARD_LED_PIN B7 +#define HOTDOX_RIGHT_LED_1_PIN B5 +#define HOTDOX_RIGHT_LED_2_PIN B6 +#define HOTDOX_RIGHT_LED_3_PIN B4 + void init_ergodox(void); -inline void ergodox_board_led_on(void) { DDRB |= (1<<PB7); PORTB |= (1<<PB7); } -inline void ergodox_right_led_1_on(void) { DDRB |= (1<<PB5); PORTB &= ~(1<<PB5); } -inline void ergodox_right_led_2_on(void) { DDRB |= (1<<PB6); PORTB &= ~(1<<PB6); } -inline void ergodox_right_led_3_on(void) { DDRB |= (1<<PB4); PORTB &= ~(1<<PB4); } +inline void ergodox_board_led_on(void) { + gpio_set_pin_output(HOTDOX_BOARD_LED_PIN); + gpio_write_pin_high(HOTDOX_BOARD_LED_PIN); +} +inline void ergodox_right_led_1_on(void) { + gpio_set_pin_output(HOTDOX_RIGHT_LED_1_PIN); + gpio_write_pin_low(HOTDOX_RIGHT_LED_1_PIN); +} +inline void ergodox_right_led_2_on(void) { + gpio_set_pin_output(HOTDOX_RIGHT_LED_2_PIN); + gpio_write_pin_low(HOTDOX_RIGHT_LED_2_PIN); +} +inline void ergodox_right_led_3_on(void) { + gpio_set_pin_output(HOTDOX_RIGHT_LED_3_PIN); + gpio_write_pin_low(HOTDOX_RIGHT_LED_3_PIN); +} -inline void ergodox_board_led_off(void) { DDRB |= (1<<PB7); PORTB &= ~(1<<PB7); } -inline void ergodox_right_led_1_off(void) { DDRB |= (1<<PB5); PORTB |= (1<<PB5); } -inline void ergodox_right_led_2_off(void) { DDRB |= (1<<PB6); PORTB |= (1<<PB6); } -inline void ergodox_right_led_3_off(void) { DDRB |= (1<<PB4); PORTB |= (1<<PB4); } +inline void ergodox_board_led_off(void) { + gpio_set_pin_output(HOTDOX_BOARD_LED_PIN); + gpio_write_pin_low(HOTDOX_BOARD_LED_PIN); +} +inline void ergodox_right_led_1_off(void) { + gpio_set_pin_output(HOTDOX_RIGHT_LED_1_PIN); + gpio_write_pin_high(HOTDOX_RIGHT_LED_1_PIN); +} +inline void ergodox_right_led_2_off(void) { + gpio_set_pin_output(HOTDOX_RIGHT_LED_2_PIN); + gpio_write_pin_high(HOTDOX_RIGHT_LED_2_PIN); +} +inline void ergodox_right_led_3_off(void) { + gpio_set_pin_output(HOTDOX_RIGHT_LED_3_PIN); + gpio_write_pin_high(HOTDOX_RIGHT_LED_3_PIN); +} inline void ergodox_right_led_on(uint8_t l) { switch (l) { diff --git a/keyboards/hotdox/matrix.c b/keyboards/hotdox/matrix.c index 04b6d72b75..df2f9fcddf 100644 --- a/keyboards/hotdox/matrix.c +++ b/keyboards/hotdox/matrix.c @@ -163,14 +163,15 @@ void matrix_print(void) static void init_cols(void) { // Pro Micro - DDRB &= ~(1<<PB0 | 1<<PB1 | 1<<PB2 | 1<<PB3); - PORTB |= (1<<PB0 | 1<<PB1 | 1<<PB2 | 1<<PB3); + gpio_set_pin_input_high(B0); + gpio_set_pin_input_high(B1); + gpio_set_pin_input_high(B2); + gpio_set_pin_input_high(B3); - DDRD &= ~(1<<PD2 | 1<<PD3); - PORTD |= (1<<PD2 | 1<<PD3); + gpio_set_pin_input_high(D2); + gpio_set_pin_input_high(D3); - DDRC &= ~(1<<PC6); - PORTC |= (1<<PC6); + gpio_set_pin_input_high(C6); left_init(); } @@ -195,8 +196,12 @@ static matrix_row_t read_cols(uint8_t row) static void unselect_rows(void) { // Pro Micro - DDRF &= ~(1<<PF7 | 1<< PF6 | 1<<PF5 | 1<<PF4 | 1<<PF1 | 1<<PF0); - PORTF &= ~(1<<PF7 | 1<< PF6 | 1<<PF5 | 1<<PF4 | 1<<PF1 | 1<<PF0); + gpio_set_pin_input(F0); + gpio_set_pin_input(F1); + gpio_set_pin_input(F4); + gpio_set_pin_input(F5); + gpio_set_pin_input(F6); + gpio_set_pin_input(F7); left_unselect_rows(); } @@ -206,28 +211,28 @@ static void select_row(uint8_t row) // Pro Micro switch (row) { case 5: - DDRF |= (1<<PF0); - PORTF &= ~(1<<PF0); + gpio_set_pin_output(F0); + gpio_write_pin_low(F0); break; case 4: - DDRF |= (1<<PF1); - PORTF &= ~(1<<PF1); + gpio_set_pin_output(F1); + gpio_write_pin_low(F1); break; case 3: - DDRF |= (1<<PF4); - PORTF &= ~(1<<PF4); + gpio_set_pin_output(F4); + gpio_write_pin_low(F4); break; case 2: - DDRF |= (1<<PF5); - PORTF &= ~(1<<PF5); + gpio_set_pin_output(F5); + gpio_write_pin_low(F5); break; case 1: - DDRF |= (1<<PF6); - PORTF &= ~(1<<PF6); + gpio_set_pin_output(F6); + gpio_write_pin_low(F6); break; case 0: - DDRF |= (1<<PF7); - PORTF &= ~(1<<PF7); + gpio_set_pin_output(F7); + gpio_write_pin_low(F7); break; } |