Inhoudsopgave:

Infrarood NEC Protocol Encoder en Decoder Board: 5 stappen:
Infrarood NEC Protocol Encoder en Decoder Board: 5 stappen:

Video: Infrarood NEC Protocol Encoder en Decoder Board: 5 stappen:

Video: Infrarood NEC Protocol Encoder en Decoder Board: 5 stappen:
Video: NEC Protocol Driver (Infrared remote) | Embedded System Project Series #20 2024, Juli-
Anonim
Infrarood NEC Protocol Encoder en Decoder Board
Infrarood NEC Protocol Encoder en Decoder Board
Infrarood NEC Protocol Encoder en Decoder Board
Infrarood NEC Protocol Encoder en Decoder Board

Ontvangt een onbewerkt gemoduleerd of gedemoduleerd NEC IR-signaal en zet het om in bytes die via de seriële poort worden verzonden. De seriële baudrate kan worden geselecteerd uit twee standaardsnelheden. De standaard gebruiksmodus verzendt een opdrachtreeks met framebytes, adres hoog, adres laag en de gevalideerde opdrachtbyte. Dit apparaat is ontworpen om de werklast van protocoldecodering van de hoofdprocessor te verwijderen, wat een PIC, Arduino, FTDI of ander soortgelijk serieel geschikt apparaat kan zijn. Het ondersteunt full-duplex communicatie bij gebruik van een I. R. zendontvanger.

Het uitvoerprotocol is zo geschreven dat het gemakkelijk te ontvangen is. De waarden 255 & 254 voor byte framing gevolgd door databytes, de herhalingscodes worden aangegeven met 250 & 253. Geen van deze waarden zou normaal gesproken in een NEC-commandoreeks staan, of in ieder geval niet in die volgorde. Het apparaat verwacht het uitgebreide NEC-protocol, met 16-bits adres, in plaats van het gespecificeerde 8-bits adres met 8-bits inverse. Dit apparaat accepteert alle adressen en geeft het ontvangen adres door aan het hostapparaat.

De datasheet bevat meer informatie en details. Download het gegevensblad

De projectbestanden kunnen vanaf deze stap als ZIP worden gedownload, of bezoek GitHub om te downloaden.

Stap 1: Onderdelen en gereedschappen

Onderdelen: Sommige onderdelen zijn niet vereist voor gebruik alleen bij ontvangst.

  • Er is een beperkt aantal gemonteerde apparaten beschikbaar - NLEDshop.com
  • Printplaat - Eagle-bestanden beschikbaar in de map Projecten of GitHub
  • PIC12F1572 of PIC12F1822/PIC12F1840 (alleen receptie)
  • 38KHz infraroodontvanger zoals TSOP38238 OF TFBS4711 transceiver.
  • 1x 5mm Infrarood LED geschikt voor I. R. overdragen
  • 2x 0.1uF 0805 SMD-condensator
  • 2x 47ohm 0805 SMD-weerstand
  • 1x NPN-transistor, SMD SOT-23 - BSR17A of vergelijkbaar
  • Infrarood afstandsbediening die gebruik maakt van de N. E. C. protocol - wat de meeste goedkope Chinese controllers zijn - vind hier enkele

Gereedschap:

  • Elektronica gereedschap
  • Pincet
  • Een manier om SMD-kaarten te reflowen - heteluchtpistool, reflow-oven, kookplaat

Stap 2: Montage

samenkomst
samenkomst
samenkomst
samenkomst
samenkomst
samenkomst
samenkomst
samenkomst

Breng soldeerpasta aan, plaats de onderdelen en reflow.

Alleen receptie Gebruik:

  • Installeer een TSOP38238 of vergelijkbaar
  • R1, R2, R3 en T1 zijn niet vereist.
  • Bind de CONFIG-jumper aan "PIN" of laat los.
  • Elk van de compatibele microcontrollers kan worden gebruikt.

Volledig duplex/bidirectioneel gebruik met zendontvanger:

  • Installeer een TFBS4711 of soortgelijke I. R. zendontvanger
  • R2, R3 en T1 zijn niet vereist.
  • Bind de CONFIG-jumper aan "GND"
  • Alleen de PIC12F1572 is compatibel.

Full duplex / bidirectioneel gebruik met LED en ontvanger:

  • Installeer een TSOP38238 of vergelijkbaar
  • Installeer een infrarood LED - 5 mm koepelvormig of vergelijkbaar.
  • R1 is niet vereist.
  • Bind de CONFIG-jumper aan "PIN" of laat los. Alleen de PIC12F1572 is compatibel.

Afstandsbediening: de meeste kleine goedkope Chinese infraroodcontrollers werken. Ze zijn er in verschillende vormen, maten en aantallen sleutels. Hier wordt een afstandsbediening met 24 toetsen gebruikt, maar afstandsbedieningen met meer of minder toetsen zouden hetzelfde werken.

Er zijn enkele aangepaste emblemen afgedrukt die op de afstandsbediening zijn geplaatst met aangepaste grafische afbeeldingen op de knop. Dit is niet noodzakelijk, maar maakt het gebruik een stuk eenvoudiger. Het sjabloon voor de 24-toets (4x6 toetsen) is beschikbaar.

Stap 3: Firmwaredetails en programmering

Firmwaredetails en programmering
Firmwaredetails en programmering
Firmwaredetails en programmering
Firmwaredetails en programmering

De firmware is geschreven in Assembly voor de PIC12-serie processors. Assemblage was vereist om de vereiste code-efficiëntie te bereiken met behulp van relatief lage (en goedkope) microcontrollers. De projectbestanden bevatten een MPLABX-project en het maakt gebruik van de standaard MPASM-compiler.

Zoals vermeld in stap 1, leest dit apparaat eenvoudig de binnenkomende opdrachten op basis van het NEC-protocol en zet ze om in standaard 8-N-1 seriële bytes die gemakkelijk leesbaar zijn door aangesloten apparaten zoals PIC's, Arduninos of andere seriële/COM-gebaseerde apparaten.

Codestroom:

Over het algemeen vrij eenvoudig, maar ingewikkeld om naar te kijken. Zowel het gemoduleerde als het gedemoduleerde signaal wordt gelezen en getimed door middel van interrupts. Wanneer volledige opdrachtcodes correct zijn ontvangen, stelt de firmware een vlag in voor de ontvangen opdrachtcodes om te worden omgezet in seriële bytes en de UART van het apparaat te verzenden.

Gebruik Selectie:

Dit apparaat heeft twee soldeerjumpers die kunnen worden gebruikt om het gebruik van het apparaat te definiëren. De BAUD-jumper selecteert een langzame of snelle baudrate, die standaard is ingesteld op 19, 200 en 250.000. De firmware kan eenvoudig worden gewijzigd om verschillende baudrates te gebruiken. De CONFIG-jumper wordt gebruikt om te selecteren of het apparaat een gemoduleerd of gedemoduleerd signaal mag verwachten. Beide worden in meer detail beschreven op het gegevensblad.

Stap 4: Hostinterfacedetails

Gegevens hostinterface
Gegevens hostinterface
Gegevens hostinterface
Gegevens hostinterface

Het hostapparaat kan van alles zijn met een seriële poort (UART) op TTL (3,3v of 5v) niveau. Alles zoals een FTDI, PIC, Arduino, ATMEL, enz. kan worden gebruikt om met dit apparaat te communiceren.

De projectbestanden hebben een TXT-bestand met de voorbeeld-C-code. Hoewel de code is geschreven voor XC16- en PIC24F-processors, is de syntaxis redelijk generiek, dus het overzetten naar uw taal/compiler naar keuze zou triviaal moeten zijn.

Als je de code voor jezelf schrijft/wijzigt en deze wilt delen, stuur me dan een bericht en ik zal hem hier plaatsen.

Stap 5: Voltooiing en gebruik

Voltooiing en gebruik
Voltooiing en gebruik

Hoewel dit apparaat is gemaakt om oudere NLD-controllers te upgraden voor compatibiliteit met infraroodafstandsbedieningen. Het kan veel andere toepassingen hebben met andere apparaten, vooral apparaten die niet over de verwerkingsoverhead beschikken om het NEC-protocol op afstand te decoderen. Het ontvangen van een reeks seriële bytes is voor de meeste processors snel en gemakkelijk.

NLD-controllers en software worden voortdurend verbeterd en bijgewerkt. Neem contact op met eventuele functieverzoeken of bugrapporten.

Bedankt voor het lezen, bezoek www. NLEDshop.com voor Made In The USA LED-controllers en LED-producten. Of vind meer projecten die NLED-producten gebruiken op ons Instructables-profiel of de projectenpagina op onze website.

Ga voor nieuws, updates en productoverzichten naar www.northernlightselectronicdesign.com. Neem contact met ons op voor vragen, opmerkingen of bugrapporten.

NLED is beschikbaar voor embedded programmering, firmware-ontwerp, hardware-ontwerp, LED-projecten, productontwerp en advies. Neem contact met ons op om uw project te bespreken.

Aanbevolen: