rgblite.h 506 B

1234567891011121314151617181920212223
  1. // Copyright 2022 Makoto Kurauchi (@MakotoKurauchi)
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #pragma once
  4. #include "ws2812.h"
  5. #include "color.h"
  6. static inline void rgblite_setrgb(RGB rgb) {
  7. LED_TYPE leds[RGBLED_NUM] = {{.r = rgb.r, .g = rgb.g, .b = rgb.b}};
  8. ws2812_setleds(leds, RGBLED_NUM);
  9. }
  10. static void rgblite_increase_hue(void) {
  11. static uint8_t state = 0;
  12. HSV hsv = { 255, 255, 255 };
  13. hsv.h = state;
  14. state = (state + 8) % 256;
  15. rgblite_setrgb(hsv_to_rgb(hsv));
  16. }