public static void LineDemo(APA102LEDStrip ledStripe) { int wait = 20; var quit = false; ledStripe.AllOff(); Console.Clear(); ConsoleEx.WriteMenu(-1, 4, "Q)uit"); while (!quit) { var j = 0; for (var i = 0; i < ledStripe.MaxLed; i++) { var bkColor = APA102LEDStrip.Wheel(((i * 256 / ledStripe.MaxLed) + j)); ledStripe.AddRGBSequence(true, 2, i+1, bkColor); if(++j >= 256) j = 0; while(!ledStripe.IsFull) ledStripe.AddRGBSequence(false, 2, Color.Black); ledStripe.Show().Wait(wait); Console.WriteLine(String.Format("Color:{0}, Html:{1}, Dec:{2}", bkColor.Name.PadRight(16), APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor))); if(Console.KeyAvailable) { while (Console.KeyAvailable) { var k = Console.ReadKey(true).Key; if (k == ConsoleKey.Q) { quit = true; break; } } } } ledStripe.Wait(wait*3).AllOff(); } ledStripe.AllOff(); }
public static void BrigthnessDemo(APA102LEDStrip ledStrip0, APA102LEDStrip ledStrip1) { Console.Clear(); ConsoleEx.TitleBar(0, "Brightness Demo", ConsoleColor.White, ConsoleColor.DarkBlue); ConsoleEx.WriteMenu(-1, 3, "Q)uit"); ledStrip0.AllOff(); ledStrip1.AllOff(); var bkColors = TargetColors.Replace(Environment.NewLine, ",").Split(',').ToList(); var wait = 15; while (!Console.KeyAvailable) { foreach (var sBColor in bkColors) { var bkColor = APA102LEDStrip.DrawingColors[sBColor]; for (var b = 1; b <= APA102LEDStrip.MAX_BRIGHTNESS; b += 2) { ConsoleEx.Write(1, 2, string.Format("Brightness {0:00}", b), ConsoleColor.DarkCyan); ledStrip0.SetColor(b, bkColor).Show(); ledStrip1.SetColor(b, bkColor).Show().Wait(wait); } if (Console.KeyAvailable) break; ledStrip0.Wait(wait * 10); // Wait when the fade in is done for (var b = APA102LEDStrip.MAX_BRIGHTNESS; b >= 0; b -= 2) { ConsoleEx.Write(1, 2, string.Format("Brightness {0:00}", b), ConsoleColor.DarkCyan); ledStrip0.SetColor(b, bkColor).Show(); ledStrip1.SetColor(b, bkColor).Show().Wait(wait); } if (Console.KeyAvailable) break; ledStrip0.Wait(wait * 10); // Wait when the fade out is deon } } ledStrip0.AllOff(); ledStrip1.AllOff(); var k = Console.ReadKey(true).Key; }
public static void RgbRainbowPlusLedOnGpio0To3Demo(Nusbio nusbio, APA102LEDStrip ledStripe, int jStep, APA102LEDStrip ledStripe2 = null) { Console.Clear(); ConsoleEx.TitleBar(0, "Rainbow Demo", ConsoleColor.White, ConsoleColor.DarkBlue); ConsoleEx.WriteMenu(-1, 4, "Q)uit"); // Allow to loop through the 4 available gpios on the RgbLedAdpater // and turn on and off 4 leds connected to gpio 0 to 3 var availableGpiosOnRgbLedAdapters = new List<NusbioGpio>() { NusbioGpio.Gpio0, NusbioGpio.Gpio1, NusbioGpio.Gpio2, NusbioGpio.Gpio3, }; var availableGpiosOnRgbLedAdaptersIndex = 0; int wait = 10; var quit = false; var rgbLedIntensisty = 30; ledStripe.AllOff(); ledStripe2.AllOff(); while (!quit) { nusbio[availableGpiosOnRgbLedAdapters[availableGpiosOnRgbLedAdaptersIndex]].AsLed.Set(true); // Turn on/off one of the 4 standard one color led connected to gpio 0..3 if (availableGpiosOnRgbLedAdaptersIndex > 0) // Turn off the current led nusbio[availableGpiosOnRgbLedAdapters[availableGpiosOnRgbLedAdaptersIndex - 1]].AsLed.Set(false); else if (availableGpiosOnRgbLedAdaptersIndex == 0) nusbio[availableGpiosOnRgbLedAdapters[availableGpiosOnRgbLedAdapters.Count - 1]].AsLed.Set(false); if (++availableGpiosOnRgbLedAdaptersIndex == availableGpiosOnRgbLedAdapters.Count) { availableGpiosOnRgbLedAdaptersIndex = 0; } // Animate the 2 RGB LED connected to gpio 4,5 and 6,7 usin SPI like protocol for(var j=0; j < 256; j += jStep) { ledStripe.Reset(); ledStripe2.Reset(); for (var i = 0; i < ledStripe.MaxLed; i++) ledStripe.AddRGBSequence(false, rgbLedIntensisty, APA102LEDStrip.Wheel(((i*256/ledStripe.MaxLed) + j))); for (var i = 0; i < ledStripe2.MaxLed; i++) ledStripe2.AddRGBSequence(false, rgbLedIntensisty, APA102LEDStrip.Wheel(((i*256/ledStripe.MaxLed) + j))); foreach (var bkColor in ledStripe.LedColors) { ConsoleEx.Gotoxy(1, 2); ConsoleEx.WriteLine(String.Format("Color:{0}, Html:{1}, Dec:{2}", bkColor.Name, APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor)), ConsoleColor.DarkCyan); } ledStripe.Show(); ledStripe2.Show().Wait(wait); if(Console.KeyAvailable) { var k = Console.ReadKey(true).Key; if (k == ConsoleKey.Q) { quit = true; break; } } } } ledStripe.AllOff(); ledStripe2.AllOff(); }
public static void RainbowDemo(APA102LEDStrip ledStrip0, int jStep, APA102LEDStrip ledStrip1 = null) { Console.Clear(); ConsoleEx.TitleBar(0, "Rainbow Demo", ConsoleColor.White, ConsoleColor.DarkBlue); ConsoleEx.WriteMenu(-1, 6, "Q)uit"); int wait = 26; var quit = false; var maxStep = 256; var brightness = 5; ledStrip0.AllOff(); ledStrip1.AllOff(); while (!quit) { var j2 = maxStep; for(var j=0; j < maxStep; j += jStep) { j2 = j; ledStrip0.Reset(); ledStrip1.Reset(); for (var i = 0; i < ledStrip0.MaxLed; i++) ledStrip0.AddRGBSequence(false, brightness, APA102LEDStrip.Wheel(((i * maxStep / ledStrip0.MaxLed) + j))); for (var i = 0; i < ledStrip1.MaxLed; i++) ledStrip1.AddRGBSequence(false, brightness, APA102LEDStrip.Wheel(((i * maxStep / ledStrip0.MaxLed) + j2))); foreach (var bkColor in ledStrip0.LedColors) { ConsoleEx.WriteLine(1, 2,String.Format("Strip 0 - Color:{0}, Html:{1}, Dec:{2}", bkColor.Name, APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor)), ConsoleColor.DarkCyan); } foreach (var bkColor in ledStrip1.LedColors) { ConsoleEx.WriteLine(1, 3,String.Format("Strip 1 - Color:{0}, Html:{1}, Dec:{2}", bkColor.Name, APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor)), ConsoleColor.DarkCyan); } ledStrip0.Show(); ledStrip1.Show().Wait(wait); if(Console.KeyAvailable) { var k = Console.ReadKey(true).Key; if (k == ConsoleKey.Q) { quit = true; break; } } } } ledStrip0.AllOff(); ledStrip1.AllOff(); }
/// <summary> /// /// *** ATTENTION *** /// /// WHEN CONTROLLING AN APA LED STRIP WITH NUSBIO YOU MUST KNOW THE AMP CONSUMPTION. /// /// USB DEVICE ARE LIMITED TO 500 MILLI AMP. /// /// AN LED IN GENERAL CONSUMES FROM 20 TO 25 MILLI AMP. AN RGB LED CONSUMES 3 TIMES /// MORE IF THE RED, GREEN AND BLUE ARE SET TO THE 255, 255, 255 WHICH IS WHITE /// AT THE MAXIMUN INTENSISTY WHICH IS 31. /// /// YOU MUST KNOW WHAT IS THE MAXIMUN CONSUMPTION OF YOUR APA 102 RGB LEB STRIP WHEN THE /// RGB IS SET TO WHITE, WHITE, WHITE AND THE BRIGTHNESS IS AT THE MAXIMUM. /// /// ------------------------------------------------------------------------------- /// --- NEVER GO OVER 300 MILLI AMP IF THE LED STRIP IS POWERED FROM THE NUSBIO --- /// ------------------------------------------------------------------------------- /// /// POWER ONLY A LED STRIP OF 5 LED WHEN DIRECTLY PLUGGED INTO NUSBIO. /// /// THE FUNCTION AmpTest() WILL LIGHT UP THE FIRST LED OF THE STRIP AT MAXIMUM BRIGHTNESS. /// USE A MULTI METER TO WATCH THE AMP COMSUMPTION. /// /// IF YOU WANT TO POWER MORE THAN 5 LEDS, THERE ARE 2 SOLUTIONS: /// /// (1) ONLY FOR 6 to 10 LEDs. ADD BETWEEN NUSBIO VCC AND THE STRIP 5V PIN A 47 OHM RESISTORS. /// YOU WILL LOOSE SOME BRIGTHNESS, BUT IT IS SIMPLER. THE RESISTOR LIMIT THE CURRENT THAT /// CAN BE USED FROM THE USB. /// /// (2) USE A SECOND SOURCE OF POWER LIKE: /// /// - A 5 VOLTS 1 AMPS ADAPTERS TO POWER A 30 LED STRIP /// - A 5 VOLTS 2 AMPS ADAPTERS TO POWER A 60 LED STRIP /// /// ~~~ ATTENTION ~~~ /// /// WHEN USING A SECOND SOURCE OF POWER IN THE SAME BREADBOARD OR PCB, ~ NEVER ~ /// CONNECT THE POSISTIVE OF THE SECOND SOURCE OF POWER WITH THE NUSBIO VCC. /// /// SEE OUR WEB SITE 'LED STRIP TUTORIAL' FOR MORE INFO. /// /// </summary> /// <param name="ledStrip"></param> public static void AmpTest(APA102LEDStrip ledStrip) { int wait = 37; ledStrip.Brightness = 22; var quit = false; ledStrip.AllOff(); Console.Clear(); // Set the first LED of the strip to max brithness and all other led will be off ledStrip.Reset(); ledStrip.AddRGBSequence(true, APA102LEDStrip.MAX_BRIGHTNESS, Color.White); while (!ledStrip.IsFull) { ledStrip.AddRGBSequence(false, 1, Color.Black); // Color black does not consume current } ledStrip.Show().Wait(wait); Console.WriteLine("Measure the AMP consumption - Hit enter to continue"); Console.ReadLine(); //////10 LED all white, minimun intensisty var b = 1; Console.WriteLine("Brigthness {0}", b); ledStrip.AllOff(); ledStrip.Reset(); while (!ledStrip.IsFull) { ledStrip.AddRGBSequence(false, b, Color.White); } ledStrip.Show().Wait(wait); Console.WriteLine("Measure the AMP consumption - Hit enter to continue"); Console.ReadLine(); ledStrip.AllOff(); }
public static void ColorsSequence(APA102LEDStrip ledStripe0, APA102LEDStrip ledStripe1) { var wait = 300; var quit = false; ledStripe0.Brightness = 7; ledStripe0.AllOff(); Console.Clear(); ConsoleEx.TitleBar(0, "Color Sequence Demo", ConsoleColor.White, ConsoleColor.DarkBlue); ConsoleEx.WriteMenu(-1, 4, "Q)uit"); var bkColors = TargetColors.Replace(Environment.NewLine, ",").Split(',').ToList(); while (!quit) { foreach (var sBColor in bkColors) { if(string.IsNullOrEmpty(sBColor.Trim())) continue; var bkColor = APA102LEDStrip.DrawingColors[sBColor]; ConsoleEx.Gotoxy(1, 2); ConsoleEx.WriteLine(string.Format("Background Color:{0}, Html:{1}, Dec:{2}", bkColor.Name.PadRight(16), APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor)), ConsoleColor.DarkCyan); ledStripe0.Reset().AddRGBSequence(true, ledStripe0.Brightness, ledStripe0.MaxLed, bkColor).Show(); ledStripe1.Reset().AddRGBSequence(true, ledStripe1.Brightness, ledStripe0.MaxLed, bkColor).Show().Wait(wait); if (Console.KeyAvailable) { quit = true; break; } } } ledStripe0.AllOff(); var k = Console.ReadKey(true).Key; }
public static void LineDemo(APA102LEDStrip ledStrip) { int wait = ledStrip.MaxLed <= 10 ? 55 : 0; var quit = false; ledStrip.AllOff(); Console.Clear(); ConsoleEx.TitleBar(0, "Line Demo"); ConsoleEx.WriteMenu(-1, 2, "Q)uit"); ConsoleEx.WriteMenu(-1, 3, ""); while (!quit) { var j = 0; for (var i = 0; i < ledStrip.MaxLed; i++) { // Remark: there should be a faster way to draw the line, by first setting all the led // to black and only resetting the one in color. Once we light up all the led, we would // turn them all off and re start... Todo, totry. var bkColor = APA102LEDStrip.Wheel(((i * 256 / ledStrip.MaxLed) + j)); ledStrip.AddRGBSequence(true, 2, i + 1, bkColor); if(++j >= 256) j = 0; while(!ledStrip.IsFull) ledStrip.AddRGBSequence(false, 2, Color.Black); ledStrip.Show().Wait(wait); Console.WriteLine(String.Format("Color:{0}, Html:{1}, Dec:{2}", bkColor.Name.PadRight(16), APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor))); if(Console.KeyAvailable) { while (Console.KeyAvailable) { var k = Console.ReadKey(true).Key; if (k == ConsoleKey.Q) { quit = true; break; } } } } ledStrip.Wait(wait*3).AllOff(); } ledStrip.AllOff(); }
public static void BrigthnessDemo(APA102LEDStrip ledStrip) { int maxBrightness = APA102LEDStrip.MAX_BRIGHTNESS / 2; int wait = GetWaitTimeUnit(ledStrip)/2; int step = 1; ledStrip.AllOff(); Console.Clear(); ConsoleEx.WriteMenu(-1, 3, "Q)uit"); while (!Console.KeyAvailable) { for (var b = 1; b <= maxBrightness; b += step) { ledStrip.Reset(); for (var l = 0; l < ledStrip.MaxLed; l++) { if(!ledStrip.IsFull) ledStrip.AddRGB(Color.Red, b); if(!ledStrip.IsFull) ledStrip.AddRGB(Color.Green, b); if(!ledStrip.IsFull) ledStrip.AddRGB(Color.Blue, b); } ConsoleEx.Write(0, 0,string.Format("Brightness {0:00}", b), ConsoleColor.DarkCyan); ledStrip.Show().Wait(wait); } ledStrip.Wait(wait*10); for (var b = maxBrightness; b >= 1; b -= step) { ledStrip.Reset(); for (var l = 0; l < ledStrip.MaxLed; l++) { if(!ledStrip.IsFull) ledStrip.AddRGB(Color.Red, b); if(!ledStrip.IsFull) ledStrip.AddRGB(Color.Green, b); if(!ledStrip.IsFull) ledStrip.AddRGB(Color.Blue, b); } ConsoleEx.Write(0, 0,string.Format("Brightness {0:00}", b), ConsoleColor.DarkCyan); ledStrip.Show().Wait(wait); } //ledStrip.AllOff(); ledStrip.Wait(wait*10); if(Console.KeyAvailable) break; } ledStrip.AllOff(); var k = Console.ReadKey(true).Key; }
public static void MultiShades(APA102LEDStrip ledStrip) { int wait = 0; var quit = false; ledStrip.AllOff(); while (!quit) { for(var j=0; j < 256; j++) { Console.Clear(); ledStrip.Reset(); for (var i = 0; i < ledStrip.MaxLed; i++) { ledStrip.AddRGBSequence(false, 10, APA102LEDStrip.Wheel(((i+j)))); } foreach (var bkColor in ledStrip.LedColors) { Console.WriteLine(String.Format("Color:{0}, Html:{1}, Dec:{2}", bkColor.Name.PadRight(16), APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor))); } ledStrip.Show().Wait(wait); if(Console.KeyAvailable) { var k = Console.ReadKey(true).Key; if (k == ConsoleKey.Q) { quit = true; break; } } } } ledStrip.AllOff(); }
public static void RGBDemo(APA102LEDStrip ledStrip) { int wait = GetWaitTimeUnit(ledStrip); int waitStep = 10; int maxWait = 200; var quit = false; var userMessage = "Speed:{0}. Use Left and Right keys to change the speed"; ledStrip.Brightness = 22; ledStrip.AllOff(); Console.Clear(); ConsoleEx.TitleBar(0, "RGB Demo"); ConsoleEx.WriteMenu(-1, 4, "Q)uit"); ConsoleEx.WriteLine(0, 2, string.Format(userMessage, wait), ConsoleColor.DarkGray); while (!quit) { ledStrip.AddRGBSequence(true, 2, ledStrip.MaxLed-1, Color.Blue); ledStrip.InsertRGBSequence(0, 14, Color.Red); ledStrip.ShowAndShiftRightAllSequence(wait); if(!Console.KeyAvailable) { ledStrip.AddRGBSequence(true, 3, ledStrip.MaxLed-1, Color.Green); ledStrip.InsertRGBSequence(0, 16, Color.Red); ledStrip.ShowAndShiftRightAllSequence(wait); } if(Console.KeyAvailable) { while (Console.KeyAvailable) { var k = Console.ReadKey(true).Key; if (k == ConsoleKey.Q) quit = true; if (k == ConsoleKey.RightArrow) { wait += waitStep; if(wait > maxWait) wait = maxWait; } if (k == ConsoleKey.LeftArrow) { wait -= waitStep; if(wait < 0) wait = 0; } } ConsoleEx.WriteLine(0, 2, string.Format(userMessage, wait), ConsoleColor.DarkGray); } } ledStrip.AllOff(); }
public static void RainbowDemo(APA102LEDStrip ledStrip, int jStep, APA102LEDStrip ledStrip2 = null) { Console.Clear(); ConsoleEx.TitleBar(0, "Rainbow Demo"); ConsoleEx.WriteMenu(-1, 2, "Q)uit"); ConsoleEx.WriteMenu(-1, 3, ""); int brigthness = 6; int wait = GetWaitTimeUnit(ledStrip)/2; var quit = false; ledStrip.AllOff(); if(ledStrip2 != null) ledStrip2.AllOff(); while (!quit) { for(var j=0; j < 256; j += jStep) { ConsoleEx.Gotoxy(0, 4); ledStrip.Reset(); if(ledStrip2 != null) ledStrip2.Reset(); for (var i = 0; i < ledStrip.MaxLed; i++) { ledStrip.AddRGBSequence(false, brigthness, APA102LEDStrip.Wheel(((i*256/ledStrip.MaxLed) + j))); } if (ledStrip2 != null) { for (var i = 0; i < ledStrip2.MaxLed; i++) { ledStrip2.AddRGBSequence(false, brigthness, APA102LEDStrip.Wheel(((i*256/ledStrip.MaxLed) + j) )); } } foreach (var bkColor in ledStrip.LedColors) Console.WriteLine(String.Format("Color:{0}, Html:{1}, Dec:{2}", bkColor.Name, APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor))); if (ledStrip2 != null) { ledStrip.Show(); ledStrip2.Show().Wait(wait); } else { ledStrip.Show().Wait(wait); } if(Console.KeyAvailable) { var k = Console.ReadKey(true).Key; if (k == ConsoleKey.Q) { quit = true; break; } } } } ledStrip.AllOff(); if(ledStrip2 != null) ledStrip2.AllOff(); }
public static void AlternateLineDemo(APA102LEDStrip ledStrip) { var wait = GetWaitTimeUnit(ledStrip); if (ledStrip.MaxLed <= 10) wait *= 3; var quit = false; ledStrip.Brightness = 16; ledStrip.AllOff(); Console.Clear(); ConsoleEx.TitleBar(0, "Alternate Line Demo"); ConsoleEx.WriteMenu(-1, 2, "Q)uit"); ConsoleEx.WriteMenu(-1, 3, ""); var bkColors = TargetColors.Replace(Environment.NewLine, ",").Split(',').ToList(); while (!quit) { foreach (var sBColor in bkColors) { if(string.IsNullOrEmpty(sBColor.Trim())) continue; var bkColor = APA102LEDStrip.ToBrighter(APA102LEDStrip.DrawingColors[sBColor], -75); Console.WriteLine(String.Format("Background Color:{0}, Html:{1}, Dec:{2}", bkColor.Name.PadRight(16), APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor))); var fgColor = APA102LEDStrip.ToBrighter(bkColor, 40); ledStrip.Reset(); for (var l = 0; l < ledStrip.MaxLed; l += 2) { ledStrip.AddRGBSequence(false, 4, bkColor); ledStrip.AddRGBSequence(false, 6, fgColor); } for (var i = 0; i < ledStrip.MaxLed*3; i+=4) { ledStrip.Show().ShiftRightSequence().Wait(wait); if (Console.KeyAvailable) break; } if (Console.KeyAvailable) { quit = true; break; } } } ledStrip.AllOff(); var k = Console.ReadKey(true).Key; }
public static void SpeedTest(APA102LEDStrip ledStrip) { ledStrip.Brightness = 16; ledStrip.AllOff(); Console.Clear(); Console.WriteLine("Running test..."); var bkColor = Color.Red; var sw = Stopwatch.StartNew(); var testCount = 1000; // This loop set the strip 500 x 2 == 1000 times for (var t = 0; t < (testCount/2); t++) { // Light up in red the 60 led strips ledStrip.Reset(); for (var l = 0; l < ledStrip.MaxLed; l ++) ledStrip.AddRGBSequence(false, 7, bkColor); ledStrip.Show(); // Turn it off the 60 led strips ledStrip.Reset(); for (var l = 0; l < ledStrip.MaxLed; l ++) ledStrip.AddRGBSequence(false, 7, Color.Black); ledStrip.Show(); } sw.Stop(); var bytePerSeconds = ledStrip.MaxLed * 4 * testCount / (sw.ElapsedMilliseconds/1000); Console.WriteLine("test Duration:{0}, BytePerSecond:{1}, NumberOfLedTurnOnOrOff:{2}", sw.ElapsedMilliseconds, bytePerSeconds, ledStrip.MaxLed*testCount ); var k = Console.ReadKey(true).Key; ledStrip.AllOff(); k = Console.ReadKey(true).Key; }
public static void ScrollDemo(APA102LEDStrip ledStrip) { var wait = GetWaitTimeUnit(ledStrip); var quit = false; ledStrip.Brightness = 16; ledStrip.AllOff(); Console.Clear(); ConsoleEx.TitleBar(0, "Scroll Demo"); ConsoleEx.WriteMenu(-1, 2, "Q)uit"); ConsoleEx.WriteMenu(-1, 3, ""); var bkColors = TargetColors.Replace(Environment.NewLine, ",").Split(',').ToList(); while (!quit) { foreach (var sBColor in bkColors) { if(string.IsNullOrEmpty(sBColor.Trim())) continue; var bkColor = APA102LEDStrip.DrawingColors[sBColor]; bkColor = APA102LEDStrip.ToBrighter(bkColor, -65); Console.WriteLine(String.Format("Background Color:{0}, Html:{1}, Dec:{2}", bkColor.Name.PadRight(16), APA102LEDStrip.ToHexValue(bkColor), APA102LEDStrip.ToDecValue(bkColor))); var fgColor = APA102LEDStrip.ToBrighter(bkColor, 20); ledStrip.AddRGBSequence(true, 4, ledStrip.MaxLed-1, bkColor); ledStrip.InsertRGBSequence(0, 15, fgColor); ledStrip.ShowAndShiftRightAllSequence(wait); if (Console.KeyAvailable) { quit = true; break; } } } ledStrip.AllOff(); var k = Console.ReadKey(true).Key; }
private static int GetWaitTimeUnit(APA102LEDStrip ledStrip) { var wait = (int)((80.0/(2*ledStrip.MaxLed))*10); return wait; }