You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

29 lines
1.4 KiB

  1. #include "oled_helper.h"
  2. #include "progmem.h"
  3. #include "rgblight.h"
  4. #include "oled_driver.h"
  5. #include <stdio.h>
  6. #include <string.h>
  7. #ifdef OLED_ENABLE
  8. void render_logo(void) {
  9. static const char PROGMEM logo[] = {0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0};
  10. oled_write_P(logo, false);
  11. }
  12. # ifdef RGBLIGHT_ENABLE
  13. extern rgblight_config_t rgblight_config;
  14. static char led_buf[24] = "LED state ready.\n";
  15. rgblight_config_t rgblight_config_bak;
  16. void update_led_status(void) {
  17. if (rgblight_config_bak.enable != rgblight_config.enable || rgblight_config_bak.mode != rgblight_config.mode || rgblight_config_bak.hue != rgblight_config.hue || rgblight_config_bak.sat != rgblight_config.sat || rgblight_config_bak.val != rgblight_config.val) {
  18. snprintf(led_buf, sizeof(led_buf) - 1, "%c H%2d S%2d V%2d MODE%2d", rgblight_config.enable ? '*' : '.', (uint8_t)(rgblight_config.hue / RGBLIGHT_HUE_STEP), (uint8_t)(rgblight_config.sat / RGBLIGHT_SAT_STEP), (uint8_t)(rgblight_config.val / RGBLIGHT_VAL_STEP), (uint8_t)rgblight_config.mode);
  19. rgblight_config_bak = rgblight_config;
  20. }
  21. }
  22. void render_led_status(void) { oled_write(led_buf, false); }
  23. # endif
  24. #endif