Skocz do zawartości

Sterowanie przekaźniekiem przez pilota RF 433Mhz


busyboy

Pomocna odpowiedź

Witam,

Mam problem ze sterowaniem przekaźnikiem za pomocą pilota RF 433 Mhz

Co do samej obsługi pilota przez Arduino wszystko jest ok - odbiornik czyta poprawnie przycisk pilota ale chciałbym aby przekaźnik przełączał się tylko wtedy gdy jest wciśnięty przycisk na pilocie w momencie puszczenia przycisku przekaźnik by się wyłączał.

Mam taki kod



#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();

void setup()
{
  
  pinMode(8, OUTPUT);
  digitalWrite(8,HIGH);
  
  mySwitch.enableReceive(0);  
}

void loop()
{
  digitalWrite(8,HIGH);
  if (mySwitch.available())
  {
      int value = mySwitch.getReceivedValue();
      if ( mySwitch.getReceivedValue() == 1066005)
      digitalWrite(8,LOW);      
    }
digitalWrite(8,HIGH);
}

Ale niestety nie działa poprawnie. Tzn przekaźnik się załącza ale nie wyłącza się po puszczeniu przycisku.

Proszę o pomoc

Link do komentarza
Share on other sites

void loop()
{
  
  if (mySwitch.available())
  {
      if ( mySwitch.getReceivedValue() == 1066005) {
      digitalWrite(8,LOW); 
      }
 } else {
        digitalWrite(8,HIGH);
    }
}

Sprobuj tego...chociaz dziwne, bo tamten kod nie powinien wlaczac przekaznika..tzn powinien, ale nie ma zadnych delay'ow wiec bardzo szybko zmieni sie stan na pinie na wysoki...przekaznik nie powinien zdarzyc zareagowac ..

Link do komentarza
Share on other sites

Być może ten mySwith przechowuje ostatnią zapisaną wartość i temu tak się dzieje. Trzeba poszukać czy niema możliwości skasowania tej zmiennej kiedy brak sygnału rf

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • 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.