Codigo utilizado:
//==========================>Definição dos pinos e nomes das variáveis
int Rele1 = 2;
int Rele2 = 3;
int Rele3 = 4;
int Rele4 = 5;
int Rele5 = 6;
int Rele6 = 7;
int Rele7 = 8;
int Rele8 = 9;
int Rele9 = 10;
int Rele10 = 11;
int Rele11 = 12;
int Rele12 = 13;
int Rele13 = A0;
int Rele14 = A1;
int Rele15 = A2;
int Rele16 = A3;
int i = 0;
int incomingByte[16];
void setup() {
//==========================>Velocidade da comunicação Serial
Serial.begin(57600);
//==========================>Define como saída
pinMode(Rele1, OUTPUT);
pinMode(Rele2, OUTPUT);
pinMode(Rele3, OUTPUT);
pinMode(Rele4, OUTPUT);
pinMode(Rele5, OUTPUT);
pinMode(Rele6, OUTPUT);
pinMode(Rele7, OUTPUT);
pinMode(Rele8, OUTPUT);
pinMode(Rele9, OUTPUT);
pinMode(Rele10, OUTPUT);
pinMode(Rele11, OUTPUT);
pinMode(Rele12, OUTPUT);
pinMode(Rele13, OUTPUT);
pinMode(Rele14, OUTPUT);
pinMode(Rele15, OUTPUT);
pinMode(Rele16, OUTPUT);
}
void loop() {
if (Serial.available() >= 16) {
for (int i = 0; i < 16; i++) {
incomingByte[i] = Serial.read();
} // Pinos do Arduino
digitalWrite(Rele1, incomingByte[0]); // Pino 2
digitalWrite(Rele2, incomingByte[1]); // Pino 3
digitalWrite(Rele3, incomingByte[2]); // Pino 4
digitalWrite(Rele4, incomingByte[3]); // Pino 5
digitalWrite(Rele5, incomingByte[4]); // Pino 6
digitalWrite(Rele6, incomingByte[5]); // Pino 7
digitalWrite(Rele7, incomingByte[6]); // Pino 8
digitalWrite(Rele8, incomingByte[7]); // Pino 9
digitalWrite(Rele9, incomingByte[8]); // Pino 10
digitalWrite(Rele10, incomingByte[9]); // Pino 11
digitalWrite(Rele11, incomingByte[10]); // Pino 12
digitalWrite(Rele12, incomingByte[11]); // Pino 13
analogWrite(Rele13, incomingByte[12]), // Pino A0
analogWrite(Rele14, incomingByte[13]); // Pino A1
analogWrite(Rele15, incomingByte[14]); // Pino A2
analogWrite(Rele16, incomingByte[15]); // Pino A3
}
}