summaryrefslogtreecommitdiff
path: root/keyboards/xiudi/xd002/keymaps/rgb_lite/rgblite.h
blob: 15ee0c0f6b3c0b76bbbe3ffe5035469e3ff33163 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#pragma once

#include "ws2812.h"
#include "color.h"

static inline void rgblite_setrgb(uint8_t _r, uint8_t _g, uint8_t _b) {
    rgb_led_t leds[RGBLED_NUM] = {{.r = _r, .g = _g, .b = _b}, {.r = _r, .g = _g, .b = _b}};
    ws2812_setleds(leds, RGBLED_NUM);
}

static void rgblite_increase_hue(void) {
    static uint8_t state = 0;

    state = (state + 1) % 3;
    switch (state) {
        case 1:
            rgblite_setrgb(RGB_RED);
            break;
        case 2:
            rgblite_setrgb(RGB_BLUE);
            break;
        default:
            rgblite_setrgb(RGB_GREEN);
            break;
    }
}