Люди добрые помогите разобраться с кодингом радиоуправляемого реле

Proger_xxx
Offline
Зарегистрирован: 01.03.2016

Вот собственно код (Либо напишите одну логику на включение реле.Если мой кодинг с ошибками)

#include <RemoteSwitch.h>

int RCSwitch = mySwitch();

void setup()
  pinMode(3, OUTPUT);           //порт 3 питание приемника
  pinMode(5, OUTPUT);           //порт 5 питание приемника
  pinMode(6, OUTPUT);           //порт 6 питание приемника
  pinMode(9, OUTPUT);           //порт 9 питание приемника
  digitalWrite(3, 1);           
  digitalWrite(5, 0);
  digitalWrite(6, 1);           
  digitalWrite(9, 0);           
  Serial.begin(9600);
  mySwitch.enableReceive(1);
}

void loop() {
    if (mySwitch.getReceivedValue() == 5592323)}
    if (a==1){digitalWrite(3, HIGH);} else {digitalWrite(3, LOW); a=0;}
    else if (mySwitch.getReceivedValue() == 5592332) {
    if (b==1){digitalWrite(5, HIGH);} else {digitalWrite(5, LOW); b=0;}
    else if (mySwitch.getReceivedValue() == 5592232) {
    if (c==1){digitalWrite(6, HIGH);} else {digitalWrite(6, LOW); c=0;}
    else if (mySwitch.getReceivedValue() == 5192232) {
    if (d==1){digitalWrite(6, HIGH);} else {digitalWrite(6, LOW); d=0;}

 

Tomasina
Tomasina аватар
Offline
Зарегистрирован: 09.03.2013

зачем приемнику 4 линии питания?

что такое a,b,c,d?

Что вообще нужно?

alexvs
Offline
Зарегистрирован: 22.07.2014

Да тут воще какая то хрень написана, поскольку loop() заканчивается сразу после первого if.

И с русским у ТС проблема.

Клапауций 322
Offline
Зарегистрирован: 31.12.2015

походу, какой-то говновыш забыл закрыть курятник с абитуриентами - разбежались по тырнетах гадят кодом.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Proger_xxx пишет:

Вот собственно код (Либо напишите одну логику на включение реле.Если мой кодинг с ошибками)

Да хоть две логики. Вы бы ещё объяснили в чём эта логичка состоит. Если сами, конечно, понимаете.

std
Offline
Зарегистрирован: 05.01.2012

Афтар, рекомендую сразу научиться писать нормально. Ведь надо понимать, что остальные уже не смогут это развидеть.

#include <RemoteSwitch.h>

int RCSwitch = mySwitch();
boolean a=1,    // исходное состояние
        b=0,
        c=1,
        d=0;

void setup()
  pinMode(3,OUTPUT);           //порт 3 питание приемника
  pinMode(5,OUTPUT);           //порт 5 питание приемника
  pinMode(6,OUTPUT);           //порт 6 питание приемника
  pinMode(9,OUTPUT);           //порт 9 питание приемника
  setPorts();                  //вывод
  Serial.begin(9600);          //хз нахер нужно
  mySwitch.enableReceive(1);   //принимаем
}

void loop() {
  switch(mySwitch.getReceivedValue()){
  case 5592323: a=!a; break;  // поменять местами первый [вкл на выкл]
  case 5592332: b=!b; break;  // и т. д.
  case 5592232: c=!c; break;
  case 5192232: d=!d; break;
  }
  setPorts();
}

void setPorts(){
  digitalWrite(3,a);
  digitalWrite(5,b);
  digitalWrite(6,c);
  digitalWrite(9,d);
}

А то они злые, могут голову откусить.