LEDs
I did this circuit and did a code that created a christmas light effect I really like
const int Led1pin = 2;
const int Led2pin = 3;
const int Led3pin = 4;
const int Led4pin = 5;
const int Led5pin = 6;
const int BUTTON_PIN= 12;
int ledState = LOW; // the current state of LED
int lastButtonState; // the previous state of button
int currentButtonState; // the current state of button
int number = 0;
void setup() {
// put your setup code here, to run once:
pinMode(Led1pin,OUTPUT);
pinMode(Led2pin,OUTPUT);
pinMode(Led3pin,OUTPUT);
pinMode(Led4pin,OUTPUT);
pinMode(Led5pin,OUTPUT);
pinMode(BUTTON_PIN,INPUT_PULLUP);
currentButtonState = digitalRead(BUTTON_PIN);
}
void loop() {
// put your main code here, to run repeatedly:
lastButtonState = currentButtonState; // save the last state
currentButtonState = digitalRead(BUTTON_PIN); // read new state
if(lastButtonState == HIGH && currentButtonState == LOW) {
Serial.println("The button is pressed");
if (number < 3) {
(number) = (number) + 1;}
else {
(number) = 0;
}
}
if (number == 0) {
digitalWrite(Led1pin, HIGH);
digitalWrite(Led2pin, HIGH);
digitalWrite(Led3pin, HIGH);
digitalWrite(Led4pin, HIGH);
digitalWrite(Led5pin, HIGH);
}
if (number == 1) {
digitalWrite(Led1pin, HIGH);
digitalWrite(Led2pin, HIGH);
digitalWrite(Led3pin, HIGH);
digitalWrite(Led4pin, HIGH);
digitalWrite(Led5pin, HIGH);
delay(100);
digitalWrite(Led1pin, LOW);
digitalWrite(Led2pin, LOW);
digitalWrite(Led3pin, LOW);
digitalWrite(Led4pin, LOW);
digitalWrite(Led5pin, LOW);
delay(100);
}
if (number == 2) {
digitalWrite(Led1pin, HIGH);
digitalWrite(Led2pin, LOW);
digitalWrite(Led3pin, HIGH);
digitalWrite(Led4pin, LOW);
digitalWrite(Led5pin, HIGH);
delay(100);
digitalWrite(Led1pin, LOW);
digitalWrite(Led2pin, HIGH);
digitalWrite(Led3pin, LOW);
digitalWrite(Led4pin, HIGH);
digitalWrite(Led5pin, LOW);
delay(100);
}
if (number == 3) {
digitalWrite(Led1pin, HIGH);
delay(50);
digitalWrite(Led2pin, HIGH);
delay(50);
digitalWrite(Led3pin, HIGH);
delay(50);
digitalWrite(Led4pin, HIGH);
delay(50);
digitalWrite(Led5pin, HIGH);
delay(50);
digitalWrite(Led1pin, LOW);
delay(50);
digitalWrite(Led2pin, LOW);
delay(50);
digitalWrite(Led3pin, LOW);
delay(50);
digitalWrite(Led4pin, LOW);
delay(50);
digitalWrite(Led5pin, LOW);
delay(50);
}
}
This is the code I used, I had to try different logics to see which one worked best with this button system and this one works quite well.
Like
0
Liked
Liked