Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Amber
- * Version 1
- */
- const int pinLed1 = 4;
- const int pinLed2 = 5;
- const int pinLed3 = 6;
- const int pinButt = 9;
- boolean readVal = 0;
- boolean flag = 0;
- boolean lastButton = 0;
- int counter = 0;
- void setup() {
- // put your setup code here, to run once:
- pinMode (pinLed1, OUTPUT);
- pinMode (pinLed2, OUTPUT);
- pinMode (pinLed3, OUTPUT);
- pinMode (pinButt, INPUT);
- Serial.begin (9600);
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, HIGH);
- digitalWrite (pinLed3, HIGH);
- delay (500); ;
- digitalWrite (pinLed1, LOW);
- digitalWrite (pinLed2, LOW);
- digitalWrite (pinLed3, LOW);
- Serial.begin (9600);
- }
- void loop()
- {
- // put your main code here, to run repeatedly:
- readVal = debounce (lastButton);
- // will go and read the Button
- Serial.println (readVal);
- if (lastButton == LOW && readVal == HIGH) // Checks if the button has been pressed
- {
- counter++;
- }
- switch (counter)
- {
- case 1:
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, LOW);
- digitalWrite (pinLed3, LOW);
- break;
- case 2:
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, HIGH);
- digitalWrite (pinLed3, LOW);
- break;
- case 3:
- digitalWrite (pinLed1, HIGH);
- digitalWrite (pinLed2, HIGH);
- digitalWrite (pinLed3, HIGH);
- break;
- case 4:
- digitalWrite (pinLed1, LOW);
- digitalWrite (pinLed2, LOW);
- digitalWrite (pinLed3, LOW);
- counter = 0;
- break;
- }
- lastButton = readVal;
- }
- boolean debounce (boolean last)
- {
- boolean current = digitalRead(pinButt);
- if (last != current)
- {
- delay(5);
- current = digitalRead(pinButt);
- }
- return current;
- }
Advertisement
Add Comment
Please, Sign In to add comment