

Serial.println("Button has been held for 5 seconds") //print the number If (buttonCount = 5000) programCount = 1 //once the button is pressed enough times, move on Serial.println("Hold the button for 5 seconds to complete the program") īuttonCount = buttonCount+1 //count up every time the button is pressedĭelay(1) //small delay for counting milliseconds PinMode(button,INPUT) //set the button as an inputĭigitalWrite(button, HIGH) //enable internal pullup resistor Int buttonState = 1 //variable to hold the state of the button

Int buttonCount = 0 //variable to hold the button presses The button must be pressed 5 times to moveĬonst int button = 5 //attach the button on pin 5
#SWITCH CASE ARDUINO LIGHT SENSOR CODE#
* This code is to show how a digital input can move through cases Since these are just test programs, you can leave the board plugged into the computer so the Arduino can receive power. See the code below, then upload it to see how it works before moving to the next step.
#SWITCH CASE ARDUINO LIGHT SENSOR SERIAL#
Watch the serial monitor to see when the program is done. Once it has been held for 5 seconds, we'll move to the next state. In the first case, we'll use a counter to store how long the button has been pressed. We'll use a button to trigger the movement to the next state. Now that we know the basics of a switch statement, we can add in a basic digital input. ProgramCount = 0 //start at the beginning Serial.begin(9600) // initialize serial communication: Int programCount = 0 //variable to move through the program To 10 in the serial monitor using a delay. * This code is to show the basic workings of a switch statement. See the attached code, read the comments, and upload it to see how it works before moving on. The switch statement sits in each case until 1 second has passed, then moves to the next. By watching the serial monitor, you can see the program count to 5 over 5 seconds. There is also a default case, so that you can put a section of the program to happen when the variable you are watching does not match one of the programmed cases.įor the first example, we'll have a passive code. This property makes it very easy to make a program pointer that will move through your code, applying all the appropriate inputs and outputs at the correct time.

The basics of the switch() statement is that you watch a variable, and depending what the variable's value is, a different case in the switch() is activated. LeftButtonPressed = CircuitPlayground.leftButton() Ĭolor = (255- (CircuitPlayground.lightSensor()) ĬtPixelColor(i, 0, 0, Color) ĬtPixelColor(i, Color, 0, 0) ĬircuitPlayground.Before we dive into the coding, we need to understand what we are working with. It works perfectly for the first 2 cases but in the 3rd instance the program seems to stop looping. Upon pushing the left button, I want it to change from red, to green, to blue. The program is supposed to map the light sensor to the brightness value of the LEDS. but for some reason when my program moves to the third case- the program behaves differently despite identical copy/pasted code blocks for the other cases. I believe I understand the use of switch/case. This is a novice question, but I am stuck.
