Hemautomation med Intel Edison (3 / 4 steg)
Steg 3: Arduino kod
Följande kod tar emot RC5 bildrutan. Om styrelsen mottog kommandot system kod 5 och 16 reläet kommer att utlösas och fått systemet kod 5 och 56 kommandokoden är reläet avstängd. Observera att sådan kod kan variera beroende på fjärrkontrollen används rekommenderas Skriv system via följetong koden och verifiera mottagna kommandokoden och så justera koden.
Intellekten Iot Roadshow Nov/2015 - Brasilien
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
om (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;
om (sistema == 5 & & comando == 16)
digitalWrite(RELE1,1);
om (sistema == 5 & & comando == 56)
digitalWrite(RELE1,0);}
}
/ * ************* Função para ler lite ************* * /
char le_bit(void) {
char last_rx = 1;
delayMicroseconds(890);
om (digitalRead(RC_5))
last_rx = 0;
delayMicroseconds(890);
Return(last_rx);
}