Hello my friend and I are working on a project by making holiday lights we have to have the potentiometer along with a push button to control the lights. The push button works fine and is able to switch between the two modes. The potentiometer is not dimming the lights but when we check serial monitor it is showing that the switch is being read and giving numbers all the way up to 1023.
int readValue = 0;
int writeValue = 0;
void setup() {
// put your setup code here, to run once:
pinMode(6, OUTPUT); //green light
pinMode(7, OUTPUT); //red light
pinMode(8, OUTPUT); //green light
pinMode(9, OUTPUT);
pinMode(10, OUTPUT); //red light
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
pinMode(2, INPUT);
Serial.begin(9600);
}
void loop() {
readValue = analogRead(A0);
writeValue = readValue / 4;
analogWrite(6, writeValue);
analogWrite(7, writeValue);
analogWrite(8, writeValue);
analogWrite(9, writeValue);
analogWrite(10, writeValue);
analogWrite(11, writeValue);
analogWrite(12, writeValue);
analogWrite(13, writeValue);
Serial.print(readValue);
Serial.print(" : ");
Serial.println(writeValue);
delay(100);
if (digitalRead(2) == LOW) {
digitalWrite(6, LOW); //green light off
digitalWrite(7, LOW); // red light on
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW); //green light off
digitalWrite(13, LOW);
digitalWrite(13, LOW);
delay(1000);
digitalWrite(6, HIGH); //green light off
digitalWrite(7, LOW); // red light on
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW); //green light off
digitalWrite(13, LOW);
digitalWrite(13, LOW);
delay(1000);
digitalWrite(6, HIGH); //green light off
digitalWrite(7, HIGH); // red light on
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW); //green light off
digitalWrite(13, LOW);
digitalWrite(13, LOW);
delay(1000);
digitalWrite(6, HIGH); //green light off
digitalWrite(7, HIGH); // red light on
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW); //green light off
digitalWrite(13, LOW);
digitalWrite(13, LOW);
delay(1000);
digitalWrite(6, HIGH); //green light off
digitalWrite(7, HIGH); // red light on
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
digitalWrite(12, LOW); //green light off
digitalWrite(13, LOW);
digitalWrite(13, LOW);
delay(1000);
digitalWrite(7, HIGH); // red light on
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, HIGH);
digitalWrite(12, LOW); //green light off
digitalWrite(13, LOW);
digitalWrite(13, LOW);
delay(1000);
digitalWrite(7, HIGH); // red light on
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, HIGH);
digitalWrite(12, HIGH); //green light off
digitalWrite(13, LOW);
digitalWrite(13, LOW);
delay(1000);
digitalWrite(7, HIGH); // red light on
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, HIGH);
digitalWrite(12, HIGH); //green light off
digitalWrite(13, HIGH);
digitalWrite(13, LOW);
delay(1000);
digitalWrite(7, HIGH); // red light on
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, HIGH);
digitalWrite(12, HIGH); //green light off
digitalWrite(13, HIGH);
digitalWrite(13, HIGH);
delay(1000);
}
if (digitalRead(2) == HIGH) { //if the button is pressed:
digitalWrite(6, HIGH); //green light off
digitalWrite(7, LOW); // red light on
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
digitalWrite(12, HIGH); //green light off
digitalWrite(13, LOW); // turn the red LED on pin 5 OFF
delay(3000); // wait for 3 seconds
digitalWrite(6, LOW); //green light off
digitalWrite(7, HIGH); // red light on
digitalWrite(8, LOW);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
digitalWrite(11, HIGH);
digitalWrite(12, LOW); //green light off
digitalWrite(13, HIGH); // turn the red LED on pin 5 OFF
delay(1000);
digitalWrite(6, HIGH); //green light off
digitalWrite(7, LOW); // red light on
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
digitalWrite(12, HIGH); //green light off
digitalWrite(13, LOW); // turn the red LED on pin 5 OFF
delay(1000); // wait for 3 seconds
digitalWrite(6, LOW); //green light off
digitalWrite(7, HIGH); // red light on
digitalWrite(8, LOW);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
digitalWrite(11, HIGH);
digitalWrite(12, LOW); //green light off
digitalWrite(13, HIGH); // turn the red LED on pin 5 OFF
delay(50);
}
}
