Este projeto é muito simples, tem como principal função,
acionar qualquer tipo de dispositivo através de um controle remoto (Pode ser da TV, DVD, Ar condicionado, etc...), neste
exemplo é feito o acionamento de um led, mas para projetos futuros, podemos
ligar uma lâmpada, um motor e outra infinidade de aparelhos.
Iremos utilizar para este projeto além do arduino, um
receptor de infravermelho 38Khz, 1 Led e
um resistor de 220Ohm.
Obs: Para saber qual o valor correspondente ao botão no
controle remoto, basta abrir o exemplo
"File>Examples>IRremote>IRrecvDump" na IDE do arduino, e
retirar a conversão para hexadecimal no comando Serial.println na linha 70,
assim será mostrado o valor decimal do botão.
Fonte do projeto:
O código abaixo faz ligar/desligar o led utilizando o mesmo
botão do controle remoto.
#include
int RECEPTOR_IR = 8; //Pino onde esta ligado o receptor IR
int LED = 13; //Pino do led
long VALOR_BOTAO = 16637983; //Valor do botao
boolean TESTADOR; //Variavel para testar se o led esta ligado ou desligado
IRrecv irrecv(RECEPTOR_IR);
decode_results results;
void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
pinMode(LED, OUTPUT);
TESTADOR = false; //inicia com o led desligado
}
void loop() {
if (irrecv.decode(&results)) {
if((results.value) == VALOR_BOTAO){ //Se o botao for pressionado
if(TESTADOR){ //Se ligado->desliga
digitalWrite(LED, LOW);
TESTADOR = false;
}else{ //Se desligado->liga
digitalWrite(LED, HIGH);
TESTADOR = true;
}
}
irrecv.resume(); // Receive the next value
}
}