summaryrefslogtreecommitdiff
path: root/keyboards/ergodone/ergodone.h
diff options
context:
space:
mode:
authorToshiki Yagi2017-08-27 08:21:53 +0900
committerJack Humbert2017-08-26 23:32:25 -0400
commitde315c54eb244821aef39e75c3f5d1c8e96d1273 (patch)
tree2618504d2c2fc6f5c6b7f87573094c32fbec3226 /keyboards/ergodone/ergodone.h
parenta6fe0320f5dbbeca1822d9b02159678fde3da8a5 (diff)
make ergodone's led work well
Diffstat (limited to 'keyboards/ergodone/ergodone.h')
-rw-r--r--keyboards/ergodone/ergodone.h63
1 files changed, 51 insertions, 12 deletions
diff --git a/keyboards/ergodone/ergodone.h b/keyboards/ergodone/ergodone.h
index 9f6c8f841..0826e9521 100644
--- a/keyboards/ergodone/ergodone.h
+++ b/keyboards/ergodone/ergodone.h
@@ -10,18 +10,57 @@
void init_ergodox(void);
-inline void ergodox_right_led_1_off(void) {}
-inline void ergodox_right_led_1_on(void) {}
-inline void ergodox_right_led_2_off(void) {}
-inline void ergodox_right_led_2_on(void) {}
-inline void ergodox_right_led_3_off(void) {}
-inline void ergodox_right_led_3_on(void) {}
-inline void ergodox_right_led_on(uint8_t l) {}
-inline void ergodox_right_led_off(uint8_t l) {}
-inline void ergodox_board_led_off(void) {}
-inline void ergodox_board_led_on(void) {}
-inline void ergodox_led_all_on(void) {}
-inline void ergodox_led_all_off(void) {}
+inline void ergodox_right_led_1_off(void) { DDRB &= ~(1<<PB5); PORTB &= ~(1<<PB5); }
+inline void ergodox_right_led_1_on(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_2_on(void) { DDRB |= (1<<PB6); PORTB |= (1<<PB6); }
+inline void ergodox_right_led_3_off(void) { DDRB &= ~(1<<PB3); PORTB &= ~(1<<PB3); }
+inline void ergodox_right_led_3_on(void) { DDRB |= (1<<PB3); PORTB |= (1<<PB3); }
+inline void ergodox_right_led_on(uint8_t l) {
+ switch (l) {
+ case 1:
+ ergodox_right_led_1_on();
+ break;
+ case 2:
+ ergodox_right_led_2_on();
+ break;
+ case 3:
+ ergodox_right_led_3_on();
+ break;
+ default:
+ break;
+ }
+}
+
+inline void ergodox_right_led_off(uint8_t l) {
+ switch (l) {
+ case 1:
+ ergodox_right_led_1_off();
+ break;
+ case 2:
+ ergodox_right_led_2_off();
+ break;
+ case 3:
+ ergodox_right_led_3_off();
+ break;
+ default:
+ break;
+ }
+}
+inline void ergodox_board_led_off(void) { DDRB &= ~(1<<PB0); PORTB |= (1<<PB0); }
+inline void ergodox_board_led_on(void) { DDRB |= (1<<PB0); PORTB &= ~(1<<PB0); }
+inline void ergodox_led_all_on(void) {
+ ergodox_right_led_1_on();
+ ergodox_right_led_2_on();
+ ergodox_right_led_3_on();
+ ergodox_board_led_on();
+}
+inline void ergodox_led_all_off(void) {
+ ergodox_right_led_1_off();
+ ergodox_right_led_2_off();
+ ergodox_right_led_3_off();
+ ergodox_board_led_off();
+}
inline void ergodox_right_led_1_set(uint8_t n) {}
inline void ergodox_right_led_2_set(uint8_t n) {}
inline void ergodox_right_led_3_set(uint8_t n) {}