Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define LED1 D0
- #define LED2 D1
- #define button 13
- boolean LED1State = false;
- boolean LED2State = false;
- boolean buttonActive = false;
- boolean longPressActive = false;
- unsigned long buttonTimer = 0;
- unsigned long longPressTime = 450;
- void blink()
- {
- buttonActive = true;
- buttonTimer = millis();
- }
- void switcher(){
- if (digitalRead(button) == LOW) {
- if ((millis() - buttonTimer > longPressTime) && (longPressActive == false)) {
- longPressActive = true;
- LED1State = !LED1State;
- digitalWrite(LED1, LED1State);
- }
- } else {
- if (buttonActive == true) {
- if (longPressActive == true) {
- longPressActive = false;
- } else {
- LED2State = !LED2State;
- digitalWrite(LED2, LED2State);
- }
- buttonActive = false;
- }
- }
- }
- void setup() {
- Serial.begin ( 115200 );
- pinMode(LED1, OUTPUT);
- pinMode(LED2, OUTPUT);
- pinMode(button, INPUT);
- Serial.println("test");
- // attachInterrupt(digitalPinToInterrupt(15), blink,FALLING); //1 czyli INT1 pin 3
- }
- void loop() {
- switcher();
- }
RAW Paste Data