Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Bounce2.h>
- int buttonState = 0;
- int counter = 2;
- int buttonStateHIGH = 0;
- unsigned long currentMillis = 0;
- unsigned long timestamp = 0;
- const long anzeigedauer = 5000;
- unsigned long currentMillis_1 = 0;
- unsigned long timestamp_1 = 0;
- const long anzeigedauer_1 = 5000;
- Bounce debouncer = Bounce();
- void setup() {
- Serial.begin(9600);
- pinMode(8,INPUT_PULLUP);
- pinMode(4, OUTPUT);
- pinMode(5, OUTPUT);
- debouncer.attach(8);
- debouncer.interval(5); // interval in ms
- }
- void loop()
- {
- debouncer.update();
- int value = debouncer.read();
- Serial.println(value);
- //Zähler 0-3
- value = digitalRead(8);
- if(value == HIGH)
- {
- buttonStateHIGH = 1;
- }
- if(value == LOW && buttonStateHIGH == 1)
- {
- counter++;
- buttonStateHIGH = 0;
- }
- if(counter == 4)
- {
- counter = 0;
- }
- Serial.println(counter);
- //Ansteuerung von zwei LEDs
- switch (counter)
- {
- case 0:
- digitalWrite(4, LOW);
- digitalWrite(5, LOW);
- break;
- case 1:
- currentMillis = millis();
- if(currentMillis - timestamp > anzeigedauer)
- {
- timestamp = currentMillis;
- counter = 2;
- }
- digitalWrite(4, LOW);
- digitalWrite(5, HIGH);
- break;
- case 2:
- digitalWrite(4, LOW);
- digitalWrite(5, LOW);
- break;
- case 3:
- currentMillis_1 = millis();
- if(currentMillis_1 - timestamp_1 > anzeigedauer_1)
- {
- timestamp_1 = currentMillis_1;
- counter = 0;
- }
- digitalWrite(5, LOW);
- digitalWrite(4, HIGH);
- break;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment