Arduino Trava depois que recebe instrução para enviar codigo pelo emissor infravermelho.

Boa Tarde pessoal, estou desenvolvendo um pequeno projeto e estou com dificuldade ao enviar um codigo pelo emissor ir, ao definir o codigo a ser enviado o arduino para de responder a comandos pelo receptor ir, tenho que desligar e ligar a fonte de energia para que volte ao normal, vou postar o codigo aqui em baixo se alguem tiver uma ideia do que eu posso estar fazendo de errado me ajudem por favor =)

#include <IRremote.h> //bliblioteca para controlar Ifravermelho

int RECV_PIN = 2;
const int ledIR = 3;


IRrecv irrecv(RECV_PIN);
IRsend irsend;

decode_results results;

void setup()
{
  Serial.begin(9600);
  pinMode(ledIR ,OUTPUT); // Emissor infravermelho   
  irrecv.enableIRIn(); // Inicia o Receptor IR
}

void loop() {
  if (irrecv.decode(&results)) {
    Serial.println(results.value, HEX);

        //Enviando Codigos pelo Trasmissor InfraVermelho
     
     //Aumentando volume do projetor pelo controle remoto universal.
       if (results.value == 0xFF906F)
          {
          irsend.sendNEC(0xC41BE, 32); // Aumenta o volume
          }

   irrecv.resume(); // Recebe o Proximo valor
  }
}

Obs: Estou usando o modulo da keyes

http://en.keyes-robot.com/productshow.aspx?id=202

Que esta ligado da seguinte maneira:

Na posição ao lado do sinal - esta ligado o GND, na posição do meio 5V e na posição ao lado do S esta ligado na porta 3.

Estou usando o UNO para conectar os sensores.

Exibições: 382

Responder esta

Respostas a este tópico

Bom dia.
É bem provável que já tenha conseguido resolver o problema, mas caso não tenha.
Quando o arduino envia o o sinal ir ele para a recepção para não atrapalhar o envio,
você deve colocar após o envio “irrecv.enableIRIn(); assim ele liga o receptor ir novamente, no seu código ficaria após “irrecv.resume(); // Recebe o Próximo valor” .

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço