#define ledPin 5
#define inPin 2
#define czasKrotki 100
#define czasDlugi 200
int stan = 1;
int stary_stan = 0;
int czas = czasKrotki;
void setup(){
pinMode(ledPin, OUTPUT);
pinMode(inPin, INPUT_PULLUP);
Serial.begin(9600);
}
void loop(){
stan = digitalRead(inPin); // odczytaj logiczny stan portu inPin (wynik "0" lub "1")
if (stan != stary_stan){ // jeżeli aktualny stan przycisku jest różny od zapamiętanego wtedy:
stary_stan = stan; // zapamiętaj nowy stan przycisku
czas = stan ? czasKrotki : czasDlugi; // jeśli przycisk został zwolniony ustaw czasKrotki a jesli wcisiniety to czasDlugi
Serial.print("Stan = "); // wyświetl wartość "stan" i napis określający stan przycisku
Serial.print(stan); // wyświetl wartość "stan" i napis określający stan przycisku
if (stan) Serial.print(" Przycisk zwolniony"); // jeśli przycisk został zwolniony wyświetl napis: "Przycisk zwolniony"
else Serial.print(" Przycisk nacisniety"); // jeśli przycisk został naciśnięty wyświetl napis: "Przycisk nacisniety"
Serial.print(" Czas blysku = "); // wyświetl wartość "czas" i napis określający czas blysku
Serial.println(czas); // wyświetl wartość "czas" i napis określający czas blysku
}
digitalWrite(ledPin, HIGH); // zapal diodę
delay(czas); // odczekaj czas
digitalWrite(ledPin, LOW); // zgaś diodę
delay(czas); // odczekaj czas
}