Skocz do zawartości

Arduino przełącznik on/off


dominik.andreck

Pomocna odpowiedź

4 minuty temu, farmaceuta napisał:
#define PRZEKAZNIK1_PIN 2 // pin przekaznika 1
#define PRZEKAZNIK2_PIN 3 // pin przekaznika 2
#define LED_PIN 4 // pin leda
#define INTERWAL 500 // czas "mrygania" led w ms
#define SW_PIN 5   //pin przelacznika 
#define ILOSC_MIGNIEC 10   // ilosc migniec led * 2 (5 migniec = 10)

bool flaga_s1 = 1;
bool flaga_s2 = 1;
bool stan_led = 0;

void setup() {
   pinMode(PRZEKAZNIK1_PIN, OUTPUT);
   pinMode(PRZEKAZNIK2_PIN, OUTPUT);
   pinMode(LED_PIN, OUTPUT);
   pinMode(SW_PIN, INPUT_PULLUP);
   digitalWrite(PRZEKAZNIK1_PIN, HIGH);
   digitalWrite(PRZEKAZNIK2_PIN, HIGH);

}

void loop() {
    if (digitalRead(SW_PIN) == HIGH && flaga_s1 == true) {
      fun(PRZEKAZNIK1_PIN, LED_PIN,INTERWAL, 1);
      flaga_s1 = false;
      flaga_s2 = true;
   }
    if (digitalRead(SW_PIN) == LOW && flaga_s2 == true) {
      fun(PRZEKAZNIK2_PIN, LED_PIN, INTERWAL, 0);
      flaga_s2 = false;
      flaga_s1 = true;
   }

    
}

void fun(byte relay, byte led_pin, int interwal, bool stan) {

    digitalWrite(relay, LOW);
    stan_led = 0;
  for (byte i = 0; i < ILOSC_MIGNIEC; i++) {
    digitalWrite(led_pin, stan_led = !stan_led);
    delay(interwal);
  
}
     digitalWrite(relay, HIGH);
    
     if (stan == 1) {
     digitalWrite(LED_PIN, HIGH);
  }  else { 
     digitalWrite(LED_PIN, LOW);
    }
  
}

 

Działa wszystko idealnie, dziękuje bardzo 😄

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.