From 1f7bbf279c925240630daacd3c29d51719112c3f Mon Sep 17 00:00:00 2001 From: Andrew Dunai Date: Sat, 9 May 2020 09:59:50 +0300 Subject: [Keyboard] Added D48 keyboard (#8548) * [Keyboard] Added D48 keyboard. * Updated README. * Cleanups. * Moved d48 to handwired/ * Added link to build process album. * Coding conventions cleanups. * Added DS1307 RTC! * Minor cleanups. * Apply suggestions from code review Co-Authored-By: Drashna Jaelre * Minor refactoring. * Readme fix. * Moved leftover keymap-specific code from keyboard space into keymap. * Added encoder button pins to extra matrix row. * Updated README, updated pinout & cleaned up the glcdfont * Apply suggestions from code review Co-Authored-By: Drashna Jaelre * Update config.h * Apply suggestions from code review Co-Authored-By: Ryan * Added default keymap. Refactored existing keymap. * Update keyboards/handwired/d48/README.md Co-Authored-By: Ryan * Apply suggestions from code review Co-Authored-By: Joel Challis * Minor alignment fix. * Update keyboards/handwired/d48/glcdfont_d48.c Co-Authored-By: Ryan * Changes as per PR. * Apply suggestions from code review Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Drashna Jaelre Co-authored-by: Ryan Co-authored-by: Joel Challis Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> --- .../handwired/d48/keymaps/anderson/lightmode.c | 44 ++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 keyboards/handwired/d48/keymaps/anderson/lightmode.c (limited to 'keyboards/handwired/d48/keymaps/anderson/lightmode.c') diff --git a/keyboards/handwired/d48/keymaps/anderson/lightmode.c b/keyboards/handwired/d48/keymaps/anderson/lightmode.c new file mode 100644 index 0000000000..bc05956214 --- /dev/null +++ b/keyboards/handwired/d48/keymaps/anderson/lightmode.c @@ -0,0 +1,44 @@ +#include "lightmode.h" + +#ifdef LIGHTMODE_ENABLE + +/* Light modes switcher */ + +uint8_t light_mode = SMOOTHLED; + +void set_light_mode(light_mode_t value, uint32_t color) { + light_mode = value; + if (light_mode == SMOOTHLED) { + smoothled_set(color); + } else { + dmc12_start(color, true); + } +} + +void process_light_mode(void) { + if (light_mode == SMOOTHLED) { + smoothled_process(); + } else { + dmc12_process(); + } +} + +void update_light_mode(uint32_t color) { + if (light_mode == SMOOTHLED) { + smoothled_set(color); + } else { + dmc12_start(color, false); + } +} + +void next_light_mode(uint32_t color) { + light_mode = (light_mode + 1) % LIGHT_MODE_SIZE; + set_light_mode(light_mode, color); +} + +void matrix_scan_kb(void) { + process_light_mode(); + matrix_scan_user(); +} + +#endif -- cgit v1.2.3