Преглед изворни кода

Added fade for color change.

Vladimir N. Shilov пре 3 година
родитељ
комит
b97a74093d
1 измењених фајлова са 13 додато и 1 уклоњено
  1. 13 1
      Src/main.c

+ 13 - 1
Src/main.c

@@ -144,7 +144,19 @@ static void Color_RGB(uint8_t r, uint8_t g, uint8_t b) {
 
 /* cheng led color by time seconds */
 static void ColorCircle(void) {
-  uint8_t hue = Clock.Sec * 6;
+  static uint8_t hue = 0, stage = 0;
+
+  if (stage == 0) {
+    hue = Clock.Sec * 6;
+    RTOS_SetTask(ColorCircle, 20, 20);
+  } else if (stage > 8) {
+    RTOS_DeleteTask(ColorCircle);
+    stage = 0;
+    hue ++;
+  } else {
+    hue ++;
+    stage ++;
+  }
   HSV2LED(hue, 255, 255);
 }