Convert some AVR GPIO operations to macros (#23424)
This commit is contained in:
parent
7220715dd1
commit
61c7c1f74c
71 changed files with 877 additions and 840 deletions
|
@ -24,13 +24,11 @@ extern inline void ergodox_board_led_on(void);
|
|||
extern inline void ergodox_right_led_1_on(void);
|
||||
extern inline void ergodox_right_led_2_on(void);
|
||||
extern inline void ergodox_right_led_3_on(void);
|
||||
extern inline void ergodox_right_led_on(uint8_t led);
|
||||
|
||||
extern inline void ergodox_board_led_off(void);
|
||||
extern inline void ergodox_right_led_1_off(void);
|
||||
extern inline void ergodox_right_led_2_off(void);
|
||||
extern inline void ergodox_right_led_3_off(void);
|
||||
extern inline void ergodox_right_led_off(uint8_t led);
|
||||
|
||||
extern inline void ergodox_led_all_on(void);
|
||||
extern inline void ergodox_led_all_off(void);
|
||||
|
@ -53,17 +51,14 @@ void matrix_init_kb(void) {
|
|||
TCCR1B = 0b00001001; // set and configure fast PWM
|
||||
|
||||
// (tied to Vcc for hardware convenience)
|
||||
DDRB &= ~(1 << 4); // set B(4) as input
|
||||
PORTB &= ~(1 << 4); // set B(4) internal pull-up disabled
|
||||
gpio_set_pin_input(B4); // set B(4) as input, internal pull-up disabled
|
||||
|
||||
// unused pins - C7, D4, D5, D7, E6
|
||||
// unused pins - C7, D4, D5, E6
|
||||
// set as input with internal pull-up enabled
|
||||
DDRC &= ~(1 << 7);
|
||||
DDRD &= ~(1 << 5 | 1 << 4);
|
||||
DDRE &= ~(1 << 6);
|
||||
PORTC |= (1 << 7);
|
||||
PORTD |= (1 << 5 | 1 << 4);
|
||||
PORTE |= (1 << 6);
|
||||
gpio_set_pin_input_high(C7);
|
||||
gpio_set_pin_input_high(D4);
|
||||
gpio_set_pin_input_high(D5);
|
||||
gpio_set_pin_input_high(E6);
|
||||
|
||||
keyboard_config.raw = eeconfig_read_kb();
|
||||
ergodox_led_all_set((uint8_t)keyboard_config.led_level * 255 / 4);
|
||||
|
|
|
@ -51,18 +51,40 @@ uint8_t ergodox_left_leds_update(void);
|
|||
#define LED_BRIGHTNESS_HI 255
|
||||
#endif
|
||||
|
||||
#define ERGODOX_EZ_BOARD_LED_PIN D6
|
||||
#define ERGODOX_EZ_RIGHT_LED_1_PIN B5
|
||||
#define ERGODOX_EZ_RIGHT_LED_2_PIN B6
|
||||
#define ERGODOX_EZ_RIGHT_LED_3_PIN B7
|
||||
|
||||
inline void ergodox_board_led_on(void) { DDRD |= (1<<6); PORTD |= (1<<6); }
|
||||
inline void ergodox_right_led_1_on(void) { DDRB |= (1<<5); PORTB |= (1<<5); }
|
||||
inline void ergodox_right_led_2_on(void) { DDRB |= (1<<6); PORTB |= (1<<6); }
|
||||
inline void ergodox_right_led_3_on(void) { DDRB |= (1<<7); PORTB |= (1<<7); }
|
||||
inline void ergodox_right_led_on(uint8_t led) { DDRB |= (1<<(led+4)); PORTB |= (1<<(led+4)); }
|
||||
inline void ergodox_board_led_on(void) {
|
||||
gpio_set_pin_output(ERGODOX_EZ_BOARD_LED_PIN);
|
||||
gpio_write_pin_high(ERGODOX_EZ_BOARD_LED_PIN);
|
||||
}
|
||||
inline void ergodox_right_led_1_on(void) {
|
||||
gpio_set_pin_output(ERGODOX_EZ_RIGHT_LED_1_PIN);
|
||||
gpio_write_pin_high(ERGODOX_EZ_RIGHT_LED_1_PIN);
|
||||
}
|
||||
inline void ergodox_right_led_2_on(void) {
|
||||
gpio_set_pin_output(ERGODOX_EZ_RIGHT_LED_2_PIN);
|
||||
gpio_write_pin_high(ERGODOX_EZ_RIGHT_LED_2_PIN);
|
||||
}
|
||||
inline void ergodox_right_led_3_on(void) {
|
||||
gpio_set_pin_output(ERGODOX_EZ_RIGHT_LED_3_PIN);
|
||||
gpio_write_pin_high(ERGODOX_EZ_RIGHT_LED_3_PIN);
|
||||
}
|
||||
|
||||
inline void ergodox_board_led_off(void) { DDRD &= ~(1<<6); PORTD &= ~(1<<6); }
|
||||
inline void ergodox_right_led_1_off(void) { DDRB &= ~(1<<5); PORTB &= ~(1<<5); }
|
||||
inline void ergodox_right_led_2_off(void) { DDRB &= ~(1<<6); PORTB &= ~(1<<6); }
|
||||
inline void ergodox_right_led_3_off(void) { DDRB &= ~(1<<7); PORTB &= ~(1<<7); }
|
||||
inline void ergodox_right_led_off(uint8_t led) { DDRB &= ~(1<<(led+4)); PORTB &= ~(1<<(led+4)); }
|
||||
inline void ergodox_board_led_off(void) {
|
||||
gpio_set_pin_input(ERGODOX_EZ_BOARD_LED_PIN);
|
||||
}
|
||||
inline void ergodox_right_led_1_off(void) {
|
||||
gpio_set_pin_input(ERGODOX_EZ_RIGHT_LED_1_PIN);
|
||||
}
|
||||
inline void ergodox_right_led_2_off(void) {
|
||||
gpio_set_pin_input(ERGODOX_EZ_RIGHT_LED_2_PIN);
|
||||
}
|
||||
inline void ergodox_right_led_3_off(void) {
|
||||
gpio_set_pin_input(ERGODOX_EZ_RIGHT_LED_3_PIN);
|
||||
}
|
||||
|
||||
#ifdef LEFT_LEDS
|
||||
bool ergodox_left_led_1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue