aboutsummaryrefslogtreecommitdiff
path: root/keyboard/phantom/led.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboard/phantom/led.c')
-rw-r--r--keyboard/phantom/led.c44
1 files changed, 44 insertions, 0 deletions
diff --git a/keyboard/phantom/led.c b/keyboard/phantom/led.c
new file mode 100644
index 000000000..e45cc0964
--- /dev/null
+++ b/keyboard/phantom/led.c
@@ -0,0 +1,44 @@
1/*
2Copyright 2012 Jun Wako <wakojun@gmail.com>
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#include <avr/io.h>
19#include "stdint.h"
20#include "led.h"
21
22
23void led_init_ports() {
24 // * Set our LED pins as output
25 DDRB |= (1<<6);
26 DDRB |= (1<<7);
27}
28
29void led_set_kb(uint8_t usb_led) {
30 if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
31 // Turn capslock on
32 PORTB |= (1<<6);
33 } else {
34 // Turn capslock off
35 PORTB &= ~(1<<6);
36 }
37 if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
38 // Turn scrolllock on
39 PORTB |= (1<<7);
40 } else {
41 // Turn scrolllock off
42 PORTB &= ~(1<<7);
43 }
44}