Preciso de ajuda ... 

Meu codigo esta enviando sinal IR constante ... gostaria que só enviasse o sinal por um instante .

#include <dummy.h>

#include <boarddefs.h>
#include <IRremote.h>
#include <IRremoteInt.h>
#include <ir_Lego_PF_BitStreamEncoder.h>

IRsend irsend(17);

int tamanho = 68; //TAMANHO DA LINHA RAW(68 BLOCOS)
int frequencia = 38; //FREQUÊNCIA DO SINAL IR(32KHz)


unsigned int LD[68] = {9050,4450,650,500,600,500,650,450,650,500,650,500,650,500,600,500,650,500,600,1650,600,1650,650,1600,650,1600,650,1600,650,1600,650,1600,650,1650,600,1600,650,1650,600,1650,600,500,650,500,600,500,650,500,650,450,650,500,650,500,600,500,650,1600,650,1650,600,1650,600,1650,600,1600,700}; //COLE A LINHA RAW CORRESPONDENTE DENTRO DAS CHAVES


void setup(){
Serial.begin(115200); //INICIALIZA A PORTA SERIAL

}

void loop(){

char c = Serial.read(); //VARIÁVEL RESPONSÁVEL POR RECEBER O CARACTER DIGITADO NA JANELA SERIAL

if (c == 'a'){ //SE CARACTER DIGITADO FOR IGUAL A "a", FAZ
irsend.sendRaw(LD,tamanho,frequencia); // PARÂMETROS NECESSÁRIOS PARA ENVIO DO SINAL IR
Serial.println("Comando enviado: Liga / Desliga");
delay(50); // TEMPO(EM MILISEGUNDOS) DE INTERVALO ENTRE UM COMANDO E OUTRO
}

}

Exibições: 757

Responder esta

Respostas a este tópico

Olá.

  Tente depois do loop(){ 

  if (Serial.available()) {

...todo seu programa principal ...

}

Nao deu certo amigo 

Especifique no setup que o LED IR é uma saída e analise se deixará de manter a porta sempre energizada.

pinMode(17, OUTPUT);

continua energizada amigo ...

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço