Taula de continguts:

Transmissor i receptor infrarojos USB NEC: 4 passos (amb imatges)
Transmissor i receptor infrarojos USB NEC: 4 passos (amb imatges)

Vídeo: Transmissor i receptor infrarojos USB NEC: 4 passos (amb imatges)

Vídeo: Transmissor i receptor infrarojos USB NEC: 4 passos (amb imatges)
Vídeo: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Desembre
Anonim
Transmissor i receptor infrarojos USB NEC
Transmissor i receptor infrarojos USB NEC

Aquest projecte és una derivació d’un altre projecte en què estic treballant i, ja que hi ha un concurs de Control remot 2017 a Instructables, vaig pensar que publiqués aquest projecte. Per tant, si t’agrada aquest projecte, vota’l. Gràcies.

Com sabreu, sóc un gran fan dels controladors PIC de 8 bits Microchip, consulteu:

Faig servir el llenguatge de programació JAL ja que sembla Pascal (que també m’agrada). El compilador JAL i les biblioteques es poden descarregar des de: https://www.justanotherlanguage.org/downloads (desplaceu-vos cap avall per veure la darrera versió publicada).

Normalment escric tot el codi jo mateix per entendre completament el que estic fent, però per a aquest projecte necessitava connectar el PIC al port USB del PC i, per tant, necessitava un controlador de sèrie JAL USB per a aquest controlador PIC. He utilitzat el controlador de sèrie USB al paquet de descàrrega JAL que sembla funcionar bé. Com que aquest controlador de sèrie USB es va escriure per a un PIC específic, vaig utilitzar aquest PIC que és el PIC18F14K50. Aquest controlador té molta més funcionalitat de la que necessito per a aquest projecte, de manera que actualment estic en procés de fer funcionar aquest controlador USB en una versió PIC més senzilla, el PIC16F1455, que també és més barata.

Llavors, de què tracta aquest projecte? Amb el dispositiu esmentat en aquest manual d’instruccions podeu enviar i rebre comandes de control remot infrarojos des del PC i des del vostre PC mitjançant el port USB mitjançant el popular protocol infrarouge NEC. D'aquesta manera, podeu controlar les ordres d'Infra-Red i controlar qualsevol dispositiu que utilitzi el protocol de control remot Infra-Red de NEC. El projecte descodifica i tradueix els missatges infrarojos en un byte d’adreça i un byte d’ordre o en un missatge de repetició. L’adreça, per descomptat, s’utilitza per adreçar-se a un dispositiu determinat, com ara un televisor o una ràdio, on el byte d’ordre indica la funció que cal realitzar, com ara Pujar volum, Baixar volum. Al costat de descodificar aquests missatges, també es poden transmetre mitjançant Infra-Red mitjançant aquest dispositiu.

Pas 1: algunes informacions sobre el protocol infrarojo NEC

Alguna informació sobre el protocol infrarojo NEC
Alguna informació sobre el protocol infrarojo NEC

Una breu introducció a aquest protocol. El protocol de control remot infraroig NEC s’utilitza en molts dispositius i controls remots que podeu comprar. Modula un senyal Infra Red en una portadora de 38 kHz i utilitza la codificació de distància d’impulsos per codificar un ‘1’ lògic i un ‘0’ lògic. El protocol utilitza una comprovació senzilla per veure si el missatge està bé enviant l’adreça i el byte d’ordre i una versió invertida de tots dos en un mateix missatge i comprovant si són els mateixos després de la recepció. Quan es prem un botó al control remot, envia un missatge complet de color vermell amb adreça i ordre una vegada. Si mantingueu premut el botó, s’enviarà un missatge de repetició més curt sense adreça ni informació d’ordres. El temps de repetició dels missatges transmesos mantenint premut el botó és fix.

Per exemple, es pot trobar més informació sobre el protocol NEC Infra Red a:

Pas 2: components necessaris

Components obligatoris
Components obligatoris
Components obligatoris
Components obligatoris

Cal que tingueu els components següents per a aquest projecte:

  • Microcontrolador PIC PIC18F14K50, vegeu:
  • Cristall 12 MHz
  • Condensador ceràmic: 2 * 100nF, 1 * 220 nF, 2 * 18pF
  • Condensador electrolític 47 uF / 16V
  • Receptor infraroig TSOP4838, vegeu:
  • Resistències: 2 * 33k, 1 * 4k7, 1 * 1k, 3 * 330 Ohm, 1 * 22 Ohm
  • LED: 2 * infrarojos, 1 ambre, 1 verd, 1 vermell
  • Transistor BC640, vegeu:
  • Jumper (opcional)
  • Connector USB

Consulteu l’esquema esquemàtic sobre com connectar els components. He utilitzat una taula de treball per a aquest projecte com podeu veure a la imatge i al vídeo. El circuit s’energia des del port USB del PC.

Pas 3: el programari i el funcionament del dispositiu

Com ja s'ha esmentat, el programari està escrit per a un PIC18F14K50. Va ser escrit a JAL. S'adjunta el fitxer Intel Hex per programar el vostre PIC. El programari realitza les funcions següents:

  • Descodificació de missatges infrarojos NEC i enviament al PC mitjançant USB. El missatge es descodifica a partir del flux de bits que genera el receptor Infra-Red i es tradueix a una adreça + missatge d’ordre o un missatge de repetició.
  • Enviament de missatges NEC Infra Red rebuts del PC mitjançant USB. Tingueu en compte que el programari també crea la freqüència de portadora de 38 kHz que acciona directament els LED infrarojos. Paral·lelament al LED infraroig, es connecta un LED ambre per fer visible la transmissió d’un missatge.

Per defecte, aquest circuit silenciarà el receptor infraroig durant la transmissió d’un missatge infraroig. Si es col·loca un pont a la posició "Deixa de silenciar", desactivarà aquesta funció de silenci. En aquest cas, el missatge infraroig transmès també es descodificarà en paral·lel a la transmissió i, després de la recepció completa, s’enviarà com a missatge infraroig rebut al PC. Si es rep un missatge infrarouge NEC vàlid, s’encendrà el LED vermell ‘IR OK’.

Per fer funcionar aquest dispositiu, heu de tenir un programa Terminal Emulator al vostre PC. He utilitzat "Termite" per a aquest propòsit. Quan el dispositiu estigui connectat al PC, el Windows 10 el reconeixerà automàticament com a port COM addicional, ja que sembla que hi ha un controlador de microprocessador per a aquest dispositiu a Windows 10 preinstal·lat. La configuració d’aquest port COM ha de ser: 19200 baud de 8 bits, 1 bit d’aturada, sense paritat i mitjançant control de flux RTS / CTS. La velocitat en bauds es pot establir en qualsevol altre valor si cal, de manera que també funcionarà una velocitat en bauds de 115200. Una vegada que el dispositiu es configura a través del port USB, connectant-s’hi mitjançant el programa Terminal Emulator, s’encendrà el LED verd ‘Configurat’.

Recepció de missatges infrarojos

Quan es rebi un missatge infraroig, es mostrarà el següent al programa Terminal Emulator:

  • "A: xx C: xx" en cas d'un missatge complet, on xx és el número hexadecimal de l'adreça (A) i de l'ordre (C). Els valors per a tots dos poden oscil·lar entre 0x00 (0) i 0xFF (255).
  • "Repetir" en cas que es repeteixi el missatge.

Enviament de missatges infrarojos

Per a això, he necessitat definir un protocol que indiqui al dispositiu què ha de fer. Com que fem servir un emulador de terminal, he utilitzat caràcters ASCII per definir un missatge. El protocol per enviar una ordre al dispositiu utilitza el format següent: "! AACCRR #", on (tots els caràcters distingeixen entre majúscules i minúscules):

  • "!" Indica l'inici del missatge.
  • "AA" és el valor de l'adreça en notació hexadecimal, de manera que "0" a "9" i "A" a "F",
  • "CC" és el valor de l'ordre en notació hexadecimal, de manera que "0" a "9" i "A" a "F"
  • "RR" és el nombre de missatges repetits que cal transmetre en notació hexadecimal, de manera que "0" a "9" i "A" a "F". El valor "00" significa que no s'envia cap missatge de repetició.

Un exemple de missatge amb l'adreça 0x07, l'ordre 0x05 i 3 repeticions s'hauria d'escriure de la manera següent al programa Terminal Emulator:! 070503 #

El dispositiu té respostes diferents després d'enviar una ordre des del PC:

  • "Y" significa que s'ha transmès un missatge. Tingueu en compte que aquesta resposta es dóna després de la transmissió de tots els missatges (incloses totes les repeticions), de manera que pot passar un temps abans que es doni aquesta resposta quan cal transmetre molts missatges de repetició.
  • "N" significa que hi havia un caràcter il·legal al missatge enviat al PC.
  • "B" significa que una transmissió infrarroja encara estava ocupada quan es va donar l'ordre.
  • ?’Significa que el dispositiu esperava"! ", Però va rebre una altra cosa.

Pas 4:

Vaig fer un petit vídeo del dispositiu en acció. Per a aquest vídeo he utilitzat una làmpada LED comercial amb el seu control remot per veure que la transmissió i la recepció funcionen. El vídeo mostra el següent:

  • Configuració del dispositiu USB des del programa Emulació de terminal. Quan el dispositiu està configurat, respon amb el missatge "Transmissor i receptor infrarojos USB NEC". Al dispositiu s’encén el LED verd que mostra que el dispositiu l’ha configurat el PC.
  • El llum s’encén amb el control remot. Per a això, el control remot utilitza l'adreça 0x00 i l'ordre 0x07 que el dispositiu descodifica i es mostra a l'ordinador.
  • El llum s’apaga amb el control remot. Per a això, el control remot utilitza l'adreça 0x00 i l'ordre 0x06 que el dispositiu descodifica i es mostra a l'ordinador.
  • El llum s’encén escrivint la mateixa ordre de control remot del PC amb un valor de repetició de 0 (sense repetició), de manera que escriviu ‘! 000700 #’. El llum s’encén.
  • Canviant el color de la làmpada a blau mitjançant l'adreça 0x00 i l'ordre 0x0A i l'ús de repeticions 0x30. El Led Amber, que està connectat en paral·lel amb els LED Infra Red, parpelleja i mostra la transmissió del missatge de repetició mitjançant Infra Red. El missatge escrit és "! 000A30 #".

Tingueu en compte que durant l’enregistrament d’aquest vídeo la connexió de pont "Activa el so" estava activa, de manera que també podríeu veure el missatge transmès "! 000700 #", que es rebia com a "A: 00 C: 07" al programa Emulació de terminal. A la demostració de la làmpada de color blau, també podeu veure que el LED vermell està encès sempre que es transmetin els missatges vàlids de repetició, ja que es reben i es descodifiquen paral·lelament a la transmissió dels missatges de repetició.

Diverteix-te construint el teu propi projecte i esperant les teves reaccions. No us oblideu de votar aquest projecte al concurs Control Remot 2017 si us agrada. Gràcies de nou.

Recomanat: