Ir ao conteúdo
  • Cadastre-se

Emitir sinal hexadecimal emissor IR arduino


MicSG

Posts recomendados

  • Membro VIP

lá. 

Tenho um projeto de controlar a TV minha com o arduino. Já Pesquisei e vi programas para mostrar o código hexadecimal com arduino. Fiz isso. Veja:

1)      FF9A65   

2)      FF9867

3)      FFB24D

4)      FF708F

5)      FFB04F

6)      FF8A75

7)      FF48B7

8-      FF8877

9)      FFA25D

10)   FF609F   

Agora queria um código para a IDE arduino para o arduino emitir esses códigos com um LED infravermelho. Só que até agora minhas pesquisas não me mostraram isso. Se vcs pudessem me ajudar.

Link para o comentário
Compartilhar em outros sites

4 horas atrás, Isadora Ferraz disse:

Mas ... de onde veio e como você fez aquilo antes de fazer um led piscar com arduino?

Provavelmente apontou o controle da TV para um receptor acoplado no arduino, eu já fiz isso, mas usei pic. 

Ao ler a memória do uC se encontra os dados. 

 

Porém os sistemas de controle remoto tem uma codificação padrão que muda de acordo com a marca da TV. 

Os pulsos iniciais ao apertar uma tecla indicam o padrão, depois disso é que são enviados os códigos hexadecimais. 

 

Dos padrões mais conhecidos temos o padrão NEC, é usado pela LG, Philips e a finada Gradiente e também até mesmo algumas marcas genéricas. 

A Samsung usa uma variante do padrão NEC, que no caso tem o sinal invertido. 

 

Já a Sony e a Toshiba cada uma tem seu padrão, porém existem aparelhos da Toshiba que também usam o padrão NEC. 

 

Existem outros padrões exclusivos de outras marcas menos conhecidas também, como por exemplo os fabricantes de aparelhos conversores de canais satélite, terrestre ou a cabo. 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

ok. Se o garoto 'fez' aquilo, então é razoável pensar que já possui conhecimento a contento bastando-lhe um empurrãozinho... Vejamos...

Pra transmitir aquilo através dum pino, basta-lhe desmembrar bit a bit e ajustar a frequência num delayzinho, algo como:
 

void transimite_sinal(unsigned long dado)
{
unsigned char i;
for(i=0;i<24;i++)//3 bytes
	{
	PORT_Bit=dado; //só o bit0 vai pro pino
	asm(nop);//asm(nop);//... ajuste da freq
	dado<<=1;
	}
}

(se achar que ctrl-c ctrl-v vai resolver o problema, lá vai cóqui...)

Dá pra ver a forma de onda. Agora o lance é a modulação que pode ser por porta lógica ou interrupt ou do gênero (não explico)

 

E sobre padrões ele pode até estudá-los se quiser mas k entre nós nem precisa perder tempo com isso desde que copie e cole certinho aquele que ele 'fez'.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Olá.

Achei um vídeo que mostra exatamente o que eu quero: 

EDITADO EM 09/06/2020:

Fui fazer o que estava no vídeo e ficou faltando no código a parte onde é posto o led infravermelho. Então fui pesquisar de novo e achei este outro video em que TESTEI o código e deu certo:

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...