Hello
i am new to arnoido programming.
I have the following situation:
- remotely (with start, stop, up, down, left, right buttons). Each button generates a binary radio signal
- a receiver converting the input radio signal into an output digital binary code (8 outputs with high / low signal = 00001001 (for example)).
- Arduino inputs are connected to the outputs of the converter.
- After the arduino, I have a board with 16 relays that I want to control with the generated binary code at the arduino input.
In practice, I have a wireless remote and relays. When I press a button on the remote control I want to activate a relay. + single press of the start button hold the "start" relay on. When the stop button is pressed, the start relay switches off.
It sounded very simple to me BUT programming turned out to be a difficult task for me.
My program so far is this one:
const int D1pin = 1;
const int D2pin = 2;
const int D3pin = 3;
const int D4pin = 4;
const int D5pin = 5;
const int D6pin = 6;
const int D7pin = 7;
const int D8pin = 8;
const int D21pinR1 = 21;
const int D22pinR2 = 22;
const int D23pinR3 = 23;
const int D24pinR4 = 24;
const int D25pinR5 = 25;
const int D26pinR6 = 26;
const int D27pinR7 = 27;
const int D28pinR8 = 28;
const int D29pinR9 = 29;
const int D30pinR10 = 30;
const int D31pinR11 = 31;
const int D32pinR12 = 32;
const int D33pinR13 = 33;
const int D34pinR14 = 34;
const int D35pinR15 = 35;
const int D36pinR16 = 36;
int D1pinState = 0;
int D2pinState = 0;
int D3pinState = 0;
int D4pinState = 0;
int D5pinState = 0;
int D6pinState = 0;
int D7pinState = 0;
int D8pinState = 0;
void setup() {
// put your setup code here, to run once:
//
pinMode(D1pin, INPUT);
pinMode(D2pin, INPUT);
pinMode(D3pin, INPUT);
pinMode(D4pin, INPUT);
pinMode(D5pin, INPUT);
pinMode(D6pin, INPUT);
pinMode(D7pin, INPUT);
pinMode(D8pin, INPUT);
pinMode(D21pinR1, OUTPUT); //R1
pinMode(D22pinR2, OUTPUT); //R2
pinMode(D23pinR3, OUTPUT); //R3
pinMode(D24pinR4, OUTPUT); //R4
pinMode(D25pinR5, OUTPUT); //R5
pinMode(D26pinR6, OUTPUT); //R6
pinMode(D27pinR7, OUTPUT); //R7
pinMode(D28pinR8, OUTPUT); //R8
pinMode(D29pinR9, OUTPUT); //R9
pinMode(D30pinR10, OUTPUT); //R10
pinMode(D31pinR11, OUTPUT); //R11
pinMode(D32pinR12, OUTPUT); //R12
pinMode(D33pinR13, OUTPUT); //R13
pinMode(D34pinR14, OUTPUT); //R14
pinMode(D35pinR15, OUTPUT); //R15
pinMode(D36pinR16, OUTPUT); //R16
}
void loop() {
D1pinState=digitalRead(D1pin);
D2pinState=digitalRead(D2pin);
D3pinState=digitalRead(D3pin);
D4pinState=digitalRead(D4pin);
D5pinState=digitalRead(D5pin);
D6pinState=digitalRead(D6pin);
D7pinState=digitalRead(D7pin);
D8pinState=digitalRead(D8pin);
digitalWrite(D1pin,HIGH);
digitalWrite(D2pin,HIGH);
digitalWrite(D3pin,HIGH);
digitalWrite(D4pin,HIGH);
digitalWrite(D5pin,HIGH);
digitalWrite(D6pin,HIGH);
digitalWrite(D7pin,HIGH);
digitalWrite(D8pin,HIGH);
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==HIGH||D6pinState==LOW||D7pinState==LOW||D8pinState==LOW){
digitalWrite(D21pinR1,HIGH);
} else {
digitalWrite(D21pinR1,LOW);
}
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==LOW||D6pinState==HIGH||D7pinState==HIGH||D8pinState==HIGH) {
digitalWrite(D22pinR2,HIGH);
} else {
digitalWrite(D22pinR2,LOW);
}
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==HIGH||D6pinState==LOW||D7pinState==HIGH||D8pinState==LOW) {
digitalWrite(D23pinR3,HIGH);
} else {
digitalWrite(D23pinR3,LOW);
}
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==HIGH||D6pinState==LOW||D7pinState==LOW||D8pinState==HIGH) {
digitalWrite(D24pinR4,HIGH);
} else {
digitalWrite(D24pinR4,LOW);
}
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==LOW||D6pinState==HIGH||D7pinState==LOW||D8pinState==LOW) {
digitalWrite(D25pinR5,HIGH);
} else {
digitalWrite(D25pinR5,LOW);
}
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==HIGH||D6pinState==HIGH||D7pinState==HIGH||D8pinState==LOW) {
digitalWrite(D26pinR6,HIGH);
} else {
digitalWrite(D26pinR6,LOW);
}
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==HIGH||D6pinState==HIGH||D7pinState==LOW||D8pinState==HIGH) {
digitalWrite(D27pinR7,HIGH);
} else {
digitalWrite(D27pinR7,LOW);
}
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==HIGH||D6pinState==HIGH||D7pinState==LOW||D8pinState==LOW) {
digitalWrite(D28pinR8,HIGH);
} else {
digitalWrite(D28pinR8,LOW);
}
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==LOW||D6pinState==HIGH||D7pinState==HIGH||D8pinState==LOW) {
digitalWrite(D29pinR9,HIGH);
} else {
digitalWrite(D29pinR9,LOW);
}
//////////////////////////////////////////////
if (D1pinState==LOW||D2pinState==LOW||D3pinState==LOW||D4pinState==LOW||D5pinState==HIGH||D6pinState==LOW||D7pinState==HIGH||D8pinState==HIGH) {
digitalWrite(D30pinR10,HIGH);
} else {
digitalWrite(D3
