Paso 3: Código de Arduino
El código siguiente recibe el marco en RC5. Si la Junta recibió el comando del Código 5 y 16 sistema que se activará el relé y si recibe el código de comando código 5 y 56 sistema el relé se desactiva. Tenga en cuenta que dicho código puede variar según el mando utilizado es recomendable imprimir el sistema mediante código de serie y verificar el código de comando recibido y así ajustar el código.
Intel Iot Roadshow Nov/2015 - Brasil
Autores: Vitor Amadeu e Renata Leal
/* * * * * * * * * * * * * * Declaração de I/Os * * * * * * * * * * * * * */
#define RC_5 A0
#define RELE1 3
#define TEMPO 890 char le_bit(void);
/ * ************* Função de inicialização ************* * /
void setup(void) {}
pinMode(RC_5,INPUT_PULLUP);
pinMode(RELE1,OUTPUT);
Serial.Begin(9600);}
/* * * * * * * * * * * * * * Função de loop * * * * * * * * * * * * * */
void loop(void) {i
Si (digitalRead(RC_5)==0) {}
char comando = 0, sistema = 0;
delayMicroseconds(4000);
sistema=sistema|le_bit() << 4;
sistema=sistema|le_bit() << 3;
sistema=sistema|le_bit() << 2;
sistema=sistema|le_bit() << 1;
sistema=sistema|le_bit() << 0;
comando=comando|le_bit() << 5;
comando=comando|le_bit() << 4;
comando=comando|le_bit() << 3;
comando=comando|le_bit() << 2;
comando=comando|le_bit() << 1;
comando=comando|le_bit() << 0;
Si (sistema == 5 & & comando == 16)
digitalWrite(RELE1,1);
Si (sistema == 5 & & comando == 56)
digitalWrite(RELE1,0);}
}
/ * ************* Poco de Função para ler ************* * /
char le_bit(void) {}
char last_rx = 1;
delayMicroseconds(890);
Si (digitalRead(RC_5))
last_rx = 0;
delayMicroseconds(890);
Return(last_rx);
}