aboutsummaryrefslogtreecommitdiff
path: root/keyboards/facew/facew.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/facew/facew.c')
-rw-r--r--keyboards/facew/facew.c66
1 files changed, 66 insertions, 0 deletions
diff --git a/keyboards/facew/facew.c b/keyboards/facew/facew.c
new file mode 100644
index 000000000..9c255c68f
--- /dev/null
+++ b/keyboards/facew/facew.c
@@ -0,0 +1,66 @@
1/*
2Copyright 2017 Luiz Ribeiro <luizribeiro@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 "facew.h"
19#ifdef BACKLIGHT_ENABLE
20#include "backlight.h"
21#endif
22#ifdef RGBLIGHT_ENABLE
23#include "rgblight.h"
24#endif
25
26#include <avr/pgmspace.h>
27
28#include "action_layer.h"
29#include "i2c.h"
30#include "quantum.h"
31
32#ifdef RGBLIGHT_ENABLE
33extern rgblight_config_t rgblight_config;
34
35void rgblight_set(void) {
36 if (!rgblight_config.enable) {
37 for (uint8_t i = 0; i < RGBLED_NUM; i++) {
38 led[i].r = 0;
39 led[i].g = 0;
40 led[i].b = 0;
41 }
42 }
43
44 i2c_init();
45 i2c_send(0xb0, (uint8_t*)led, 3 * RGBLED_NUM);
46}
47#endif
48
49__attribute__ ((weak))
50void matrix_scan_user(void) {
51}
52
53void backlight_init_ports(void) {
54 DDRD |= (1<<0 | 1<<1 | 1<<4 | 1<<6);
55 PORTD &= ~(1<<0 | 1<<1 | 1<<4 | 1<<6);
56}
57
58void backlight_set(uint8_t level) {
59 if (level == 0) {
60 // Turn out the lights
61 PORTD &= ~(1<<0 | 1<<1 | 1<<4 | 1<<6);
62 } else {
63 // Turn on the lights
64 PORTD |= (1<<0 | 1<<1 | 1<<4 | 1<<6);
65 }
66}