9_13 Knob Controls Pixel Count

Knob Controls Pixel Count

Code

The code in the editor below is ready to run! Plug Code Lab Mini in to your computer's USB port, make sure that your Code Lab Mini Rainbow Add-On (sold separately) is attached, and hit 'Upload Your Code!' to see what it does. Change something in the code, like a delay or pin number. Try to add something new to the program - it's yours to tinker with! You can always press the 'Restore' button to return the code to the working example.

If you haven't set up your Code Lab Mini Rainbow Add-On yet, visit Chapter 0 to watch a video showing you how to do that.


/* Control how many of Code Lab Mini's LED pixels are on with a turn knob */ #include "LEDStrip.h" //The LEDStrip.h library gives your code access to special functions exclusive to the LED Pixels LEDStrip rainbow = LEDStrip(15, 13, A5); //Set up the pixels by defining how many pixels (15) and where it's connected to Code Lab Mini (always 13 and A5) void setup() { pinMode(A0,INPUT); //turn knob } void loop() { int pixelCount = analogRead(A0); //create a variable named pixelCount that is an integer and checks the reading from the knob pixelCount = map(pixelCount,0,1023,0,14); //'map' the readings from A0 onto Code Lab Mini's //Now a reading of 0 on the turn knob = 0 on the LED rainbow. A knob reading of 1023 = 14. A reading of 500 = 7 rainbow.clear(); //clear the pixels /* Create a variable i that has a starting value of 0 and, as long as i is less than pixelCount, run the code between the curly braces, then increase the value of the 'i' variable by 1*/ for(int i = 0; i <= pixelCount; i++){ rainbow.setPixel(i,random(0,300)); //Use the variable 'i' to set which LED pixel is being lit up } rainbow.draw(); //send the setPixel data to the LED pixels } // (c) 2023 Let's Start Coding. License: www.letsstartcoding.com/bsdlicense
 

Walkthrough Video

Watch the video for a line-by-line explanation of how the example program works. Then you'll be ready to make some changes of your own!

LED Pixel Color Spectrum


Use this spectrum to estimate the color values you'll need for your 'setPixel' arguments to achieve your favorite color!


Graphic of the Map Function

This graphic represents how some of the values from the turn knob will be "mapped" onto the colors of the LED pixels.


Challenges

Can you complete the challenges? Change the code in your code editor above. Upload your code to see the effect when you're finished. Complete a challenge? Check it off the list!