]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - keyboards/panc60/panc60.c
[Keyboard] Gingham (#6212)
[qmk_firmware.git] / keyboards / panc60 / panc60.c
index 4828cb9cfea34494e776acb92b092dadecd527ad..16674d30d266d17b677fb5051ab63ed2c52edcda 100644 (file)
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 #include "panc60.h"
+#ifdef BACKLIGHT_ENABLE
+#include "backlight.h"
+#endif
+#ifdef RGBLIGHT_ENABLE
+#include "rgblight.h"
+#endif
 
 #include <avr/pgmspace.h>
+
 #include "action_layer.h"
-#include "i2c.h"
+#include "i2c_master.h"
 #include "quantum.h"
 
 __attribute__ ((weak))
 void matrix_scan_user(void) {
 }
+
+#ifdef RGBLIGHT_ENABLE
+extern rgblight_config_t rgblight_config;
+
+void rgblight_set(void) {
+    if (!rgblight_config.enable) {
+        for (uint8_t i = 0; i < RGBLED_NUM; i++) {
+            led[i].r = 0;
+            led[i].g = 0;
+            led[i].b = 0;
+        }
+    }
+
+    i2c_init();
+    i2c_transmit(0xb0, (uint8_t*)led, 3 * RGBLED_NUM, 100);
+}
+#endif
+
+void backlight_init_ports(void) {
+       DDRD |= (1<<0 | 1<<1 | 1<<4 | 1<<6);
+       PORTD &= ~(1<<0 | 1<<1 | 1<<4 | 1<<6);
+}
+
+void backlight_set(uint8_t level) {
+       if (level == 0) {
+               // Turn out the lights
+               PORTD &= ~(1<<0 | 1<<1 | 1<<4 | 1<<6);
+       } else {
+               // Turn on the lights
+               PORTD |= (1<<0 | 1<<1 | 1<<4 | 1<<6);
+       }
+}