Projetos Arduino
Projetos Arduino
pinMode(pino_led1, OUTPUT);
pinMode(pino_led2, OUTPUT);
digitalWrite(pino_rele, estado_rele); // Coloca os pinos todos os pino em...
digitalWrite(pino_led1, estado_led1); // estado baixo (pinos desligados).
digitalWrite(pino_led2, estado_led2);
Serial.begin(9600); // Inicializa a serial monitor.
irrecv.enableIRIn(); // Inicializa o receptor IR.
}
void loop()
{
// Verifica se o sensor IR recebeu algum sinal.
if (irrecv.decode(&results))
{
// Mostra na serial o valor lido pelo sensor IR.
Serial.print("Valor lido : ");
Serial.println(results.value, HEX);
// Armazena o sinal recebido pelo sensor IR.
armazenavalor = (results.value);
switch (armazenavalor)
{
case 0xE0E020DF: // Verifica se o boto nmero 1 do controle remoto foi
prescionada.
// Se prescionado aciona o rele.
estado_rele = !estado_rele;
digitalWrite(pino_rele, estado_rele);
break;
case 0xE0E0A05F: // Verifica se o boto nmero 2 do controle remoto foi
prescionada.
// Se prescionado acende o primeiro LED.
estado_led1 = !estado_led1;
digitalWrite(pino_led1, estado_led1);
break;
case 0xE0E0609F: // Verifica se o boto nmero 3 do controle remoto foi
prescionada.
// Se prescionado ascende o segundo LED.
estado_led2 = !estado_led2;
digitalWrite(pino_led2, estado_led2);
break;
}
irrecv.resume(); //Le o prximo valor
}
}
void loop()
{
for(pos = 0; pos < 180; pos += 1) // Vai de 0 grau a 180 em passo de 1 grau
{
servo1.write(pos); // Chama o servo1 para ir para a posio da variavel
"pos"
delay(50); // Agurade 50ms para para o servo1 atingir a posio
}
for(pos = 180; pos>=1; pos-=1) // Vai de 180 graus ate 0
{
servo1.write(pos); // Chama o servo1 para ir para a posio da variavel
"pos"
delay(10); // Aguarda 10ms para o servo1 atingir a posio
}
}
Projeto 34 Verificando cdigo de comando de um controle remoto
Componentes necessrios
1 Infravermelho receptor TL1838 (ou similar)
1 Protobord
Fios jumpers
int RECV_PIN = 6; // Pino utilizado para fazer a leitura dos valores dos botes do
controle remoto.
IRrecv irrecv(RECV_PIN);
void setup()
{
Serial.begin(9600); // Inicia o Serial Monitor.
irrecv.enableIRIn(); // Inicia o infrared receptor.
}
void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX); // Imprime na tela do Serial Monitor o valor dos
botes do controle remoto em hexatecimal.
Pressione qualquer boto de seu controle remoto e se tudo estiver OK voc ver
impresso na tela do Serial Monitor os dados de seu controle remoto.