Inhaltsverzeichnis:

Infrarot NEC Protokoll Encoder und Decoder Board - Gunook
Infrarot NEC Protokoll Encoder und Decoder Board - Gunook

Video: Infrarot NEC Protokoll Encoder und Decoder Board - Gunook

Video: Infrarot NEC Protokoll Encoder und Decoder Board - Gunook
Video: IR decoder for NEC protocol.mp4 2024, November
Anonim
Infrarot NEC-Protokoll-Encoder- und -Decoder-Board
Infrarot NEC-Protokoll-Encoder- und -Decoder-Board
Infrarot NEC-Protokoll-Encoder- und -Decoder-Board
Infrarot NEC-Protokoll-Encoder- und -Decoder-Board

Empfängt ein rohes moduliertes oder demoduliertes NEC IR-Signal und wandelt es in Bytes um, die über den seriellen Port gesendet werden. Die serielle Baudrate ist aus zwei Standardgeschwindigkeiten wählbar. Der Standardverwendungsmodus sendet eine Befehlssequenz mit Rahmenbytes, Adresse hoch, Adresse niedrig und dem validierten Befehlsbyte aus. Dieses Gerät wurde entwickelt, um die Arbeitslast der Protokolldecodierung vom Hauptprozessor zu entfernen, der ein PIC, Arduino, FTDI oder ein anderes ähnliches serielles Gerät sein kann. Es unterstützt Vollduplex-Kommunikation bei Verwendung eines I. R. Transceiver.

Das Ausgabeprotokoll wurde so geschrieben, dass es einfach zu empfangen ist. Die Werte 255 & 254 für Byte-Framing gefolgt von Datenbytes, die Wiederholungscodes werden durch 250 & 253 angezeigt. Keiner dieser Werte würde normalerweise in einer NEC-Befehlssequenz oder zumindest nicht in dieser Reihenfolge vorliegen. Das Gerät erwartet das erweiterte NEC-Protokoll mit 16-Bit-Adresse anstelle der angegebenen 8-Bit-Adresse mit 8-Bit-Invers. Dieses Gerät akzeptiert alle Adressen und leitet die empfangene Adresse an das Host-Gerät weiter.

Das Datenblatt enthält weitere Informationen und Details. Laden Sie das Datenblatt herunter

Die Projektdateien können in diesem Schritt als ZIP heruntergeladen werden, oder besuchen Sie GitHub, um sie herunterzuladen.

Schritt 1: Teile und Werkzeuge

Teile: Einige Teile werden nicht nur für den Empfang benötigt.

  • Eine begrenzte Anzahl von montierten Geräten ist verfügbar - NLEDshop.com
  • Leiterplatte - Eagle-Dateien im Projektordner oder auf GitHub verfügbar
  • PIC12F1572 oder PIC12F1822/PIC12F1840 (nur Empfang)
  • 38KHz Infrarot-Empfänger wie TSOP38238 ODER TFBS4711 Transceiver.
  • 1x 5mm Infrarot LED passend für I. R. Übertragung
  • 2x 0.1uF 0805 SMD-Kondensator
  • 2x 47 Ohm 0805 SMD-Widerstand
  • 1x NPN-Transistor, SMD SOT-23 - BSR17A oder ähnlich
  • Infrarot-Fernbedienung mit N. E. C. Protokoll - das sind die billigsten chinesischen Controller - Finden Sie hier einige

Werkzeuge:

  • Elektronikwerkzeuge
  • Pinzette
  • Eine Möglichkeit zum Reflow von SMD-Platinen - Heißluftgebläse, Reflow-Ofen, Heizplatte

Schritt 2: Montage

Montage
Montage
Montage
Montage
Montage
Montage
Montage
Montage

Lotpaste auftragen, Teile platzieren und aufschmelzen.

Nutzung nur an der Rezeption:

  • Installieren Sie einen TSOP38238 oder ähnliches
  • R1, R2, R3 und T1 sind nicht erforderlich.
  • Binden Sie den CONFIG-Jumper an "PIN" oder lassen Sie ihn los.
  • Jeder der kompatiblen Mikrocontroller kann verwendet werden.

Vollduplex / bidirektionale Verwendung mit Transceiver:

  • Installieren Sie einen TFBS4711 oder einen ähnlichen I. R. Transceiver
  • R2, R3 und T1 sind nicht erforderlich.
  • Binden Sie den CONFIG-Jumper an "GND"
  • Nur der PIC12F1572 ist kompatibel.

Vollduplex / bidirektionale Nutzung mit LED und Empfänger:

  • Installieren Sie einen TSOP38238 oder ähnliches
  • Installieren Sie eine Infrarot-LED - 5 mm gewölbt oder ähnlich.
  • R1 ist nicht erforderlich.
  • Binden Sie den CONFIG-Jumper auf "PIN" oder lassen Sie ihn nicht gebunden Nur der PIC12F1572 ist kompatibel.

Fernbedienung: Die meisten der kleinen billigen chinesischen Infrarot-Controller funktionieren. Es gibt sie in verschiedenen Formen, Größen und Anzahl von Schlüsseln. Hier wird eine 24-Tasten-Fernbedienung verwendet, aber Fernbedienungen mit mehr oder weniger Tasten würden genauso funktionieren.

Es wurden einige benutzerdefinierte Aufkleber gedruckt, die mit benutzerdefinierten Tastengrafiken auf der Fernbedienung angebracht sind. Dies ist nicht notwendig, erleichtert aber die Bedienung erheblich. Die Vorlage für die 24-Tasten (4x6 Tasten) ist verfügbar.

Schritt 3: Firmware-Details und Programmierung

Firmware-Details und Programmierung
Firmware-Details und Programmierung
Firmware-Details und Programmierung
Firmware-Details und Programmierung

Die Firmware ist in Assembly für die PIC12-Prozessorserie geschrieben. Die Montage war erforderlich, um die erforderliche Codeeffizienz unter Verwendung eines relativ stromsparenden (und billigen) Mikrocontrollers zu erreichen. Die Projektdateien enthalten ein MPLABX-Projekt und es verwendet den Standard-MPASM-Compiler.

Wie in Schritt 1 erwähnt, liest dieses Gerät einfach die eingehenden NEC-Protokoll-basierten Befehle und wandelt sie in standardmäßige serielle 8-N-1-Bytes um, die von angeschlossenen Geräten wie PICs, Arduninos oder anderen seriellen/COM-basierten Geräten leicht gelesen werden können.

Codefluss:

Insgesamt recht einfach, aber kompliziert anzusehen. Sowohl das modulierte als auch das demodulierte Signal wird gelesen und durch Interrupts zeitlich gesteuert. Wenn vollständige Befehlscodes korrekt empfangen wurden, setzt die Firmware ein Flag, damit die empfangenen Befehlscodes in serielle Bytes umgewandelt und an den UART des Geräts gesendet werden.

Verwendungsauswahl:

Dieses Gerät verfügt über zwei Lötjumper, die verwendet werden können, um die Geräteverwendung zu definieren. Der BAUD-Jumper wählt entweder eine langsame oder eine schnelle Baudrate, die standardmäßig auf 19, 200 und 250.000 eingestellt ist. Die Firmware kann leicht geändert werden, um andere Baudraten zu verwenden. Mit dem CONFIG-Jumper wird ausgewählt, ob das Gerät ein moduliertes oder demoduliertes Signal erwarten soll. Beides wird im Datenblatt genauer beschrieben.

Schritt 4: Details zur Hostschnittstelle

Details zur Hostschnittstelle
Details zur Hostschnittstelle
Details zur Hostschnittstelle
Details zur Hostschnittstelle

Das Host-Gerät kann alles mit einem seriellen Port (UART) auf TTL-Ebene (3,3 V oder 5 V) sein. Alles wie ein FTDI, PIC, Arduino, ATMEL usw. kann als Schnittstelle zu diesem Gerät verwendet werden.

Die Projektdateien haben eine TXT-Datei mit dem Beispiel-C-Code. Während der Code für XC16- und PIC24F-Prozessoren geschrieben wurde, ist die Syntax ziemlich generisch, so dass die Portierung auf die Sprache/den Compiler Ihrer Wahl trivial sein sollte.

Wenn Sie den Code selbst schreiben/ändern und ihn teilen möchten, senden Sie mir eine Nachricht und ich werde ihn hier veröffentlichen.

Schritt 5: Fertigstellung und Nutzung

Fertigstellung und Nutzung
Fertigstellung und Nutzung

Dieses Gerät wurde zwar entwickelt, um ältere NLED-Controller für die Kompatibilität mit Infrarot-Fernbedienungen zu aktualisieren. Es könnte viele andere Anwendungen mit anderen Geräten haben, insbesondere solchen, die nicht den Verarbeitungsaufwand haben, um das NEC-Remote-Protokoll zu timen und zu decodieren. Der Empfang einer Reihe serieller Bytes ist für die meisten Prozessoren schnell und einfach.

NLED-Controller und Software werden ständig verbessert und aktualisiert. Kontakt mit Funktionsanfragen oder Fehlerberichten.

Vielen Dank fürs Lesen, besuchen Sie bitte www. NLEDshop.com für Made In The USA LED-Controller und LED-Produkte. Oder finden Sie weitere Projekte, die NLED-Produkte verwenden, auf unserem Instructables-Profil oder der Projektseite auf unserer Website.

Für Neuigkeiten, Updates und Produktlisten besuchen Sie bitte www.northernlightselectronicdesign.com Bitte kontaktieren Sie uns bei Fragen, Kommentaren oder Fehlerberichten.

NLED steht für Embedded-Programmierung, Firmware-Design, Hardware-Design, LED-Projekte, Produktdesign und Beratung zur Verfügung. Bitte kontaktieren Sie uns, um Ihr Projekt zu besprechen.

Empfohlen: