Bits bonzen stapsgewijze: controle van de Arduino voor WS2811, WS2812 en WS2812B RGB LED's


Disclaimer: in het afgelopen jaar, een paar verschillende bibliotheken zijn geschreven voor het beheersen van deze alomtegenwoordige RGB LEDs door collega makers van Adafruit, PJRC en het FastSPI-project.  De bibliotheken werken prima, en we moeten proberen ze allemaal uit.  Onlangs werden we gevraagd door een paar mensen hoe de low-levelcode echt werkte.  Met de hoop dat anderen de uitleg nuttig vinden, zetten we samen dit Instructable met een gedetailleerd antwoord.
--

Overzicht
Wanneer we een microcontroller willen voor verzenden/ontvangen van gegevens naar/van apparaten met behulp van enige vorm van digitale logica, doen we vaak via standaardprotocollen zoals SPI, I2C/TWI, UART, enz.  Echter, er komt een moment in het leven van elk ingesloten hardware programmer's waar het is handig of noodzakelijk oprolbare haar mouwen en krukas-out haar eigen protocol.  Dit is het geval voor het beheersen van de alomtegenwoordige RGB LED's van WorldSemi: de WS281X-serie.

Opgemerkt moet worden dat er succesvolle pogingen om het SPI-protocol voor het beheersen van deze LED's zijn geweest.  Niettemin, gezien de aard van hun communicatie-protocol (hieronder beschreven) Dit is een perfecte setting voor de implementatie van een aangepaste oplossing met behulp van een programmering techniek die bekend staat als bitbanging.  Deze techniek maakt het mogelijk om na te bootsen verschillende functies van gespecialiseerde hardware met behulp van software.  In dit geval, zullen we ermee een pin van de digitale uitgang op de ATMega328p microcontroller in-/ uitschakelen op zeer nauwkeurige wijze, zodat het digitale signaal gemaakt laat ons toe om aan en uit een 1-door-60-matrix met WS2812 RGB LED's.

Moeilijkheidsgraad: Beginner + (enige vertrouwdheid met Arduino programmering)
Tijd om voltooiing: 15-30 minuten

Gerelateerde Artikelen

Controle van de Arduino met behulp van android app

Controle van de Arduino met behulp van android app

In deze instructables ga ik uit te leggen hoe de controle van de arduino IO pinnen met behulp van een android app, die we hier schrijven.De mededeling zal via ethernet en gebruiken we het GET-verzoek voor het activeren van de IO.Laten we beginnen!Sta
Controle van een Arduino met PHP

Controle van een Arduino met PHP

hier is hoe te maken van je Arduino doen meer dan het internet zonder een ethernet of wifi schild. Dit is een eenvoudige manier om uw project bestuurbaar overal in de wereld!Stap 1: Platform CompatabilityDeze methode werkt niet onder Windows. Ik kan
Controle van de Arduino van Unity3d

Controle van de Arduino van Unity3d

Hallo jongens. In deze snelle tutorial ik "ll tonen u de eenvoudigste en meest efficiënte manier om controle van de Arduino met behulp van Unity3d. Uitsluitend volgen naar de opvoeden en vergeet niet te graag en schrijf u in voor meer video's.
Stapsgewijze LCD bedrading (4 Bit modus) en voorbeelden van de programmering voor Arduino

Stapsgewijze LCD bedrading (4 Bit modus) en voorbeelden van de programmering voor Arduino

dit instructable zal gids een gebruiker stapsgewijze in bedrading en programmering van een Hitachi HD44780 (of compatibele) chipset LCD-scherm aan een Arduino, met behulp van de LiquidCrystal-bibliotheek. Programmering voorbeelden gegeven voor alle o
Controle van de Arduino met Gamepad

Controle van de Arduino met Gamepad

Laatste tijd ik heb nieuwsgierig geweest over befriending Arduino of elke andere microcontroller met een gamepad om fysieke interactie met de dingen die ik maak, maar er leek te zijn geen snel of goedkope manier om te doen.De meeste oplossingen zijn
Met behulp van de Intel Edison op een koud gassysteem voor de controle van de reactie voor een raket klinkende

Met behulp van de Intel Edison op een koud gassysteem voor de controle van de reactie voor een raket klinkende

Wat is het doel van het maken van een controlesysteem reactie?Conventionele houding controlesystemen voor amateur-raketten gebruikt bijgevoegde vinnen, die stabiliteitscontrole van de passieve bieden. Voor het uitvoeren van actieve stabilisatie en ma
Controle van een arduino project via een aanpasbare android / Iphone app met Blynk en Wemos D1: de 2016 SUPER NOOB vriendelijke manier

Controle van een arduino project via een aanpasbare android / Iphone app met Blynk en Wemos D1: de 2016 SUPER NOOB vriendelijke manier

Het doel van dit instructable is om je te leren hoe wifi aangesloten arduino projecten de eenvoudigste en snelste manier mogelijk te maken. Als u een arduino project die u wilt vanaf beheren kunt uw smartphone en dat kostte slechts 4 eurs in hardware
Controle van de Arduino met visual basic 6.0

Controle van de Arduino met visual basic 6.0

Dit instructable is onderdeel van mijn boek Arduino + visual basic 6.0 (aanbrengen in uw eigen software controle arduino Robot.Visual basic 6.0 is een zeer oude versie sommigen kunnen vragen waarom we gebruik wilt maken van visual basic 6.0. Visual b
Controle van uw Arduino met een afstandsbediening

Controle van uw Arduino met een afstandsbediening

benieuwd over hoe om te controleren alles in uw huis met een eenvoudige afstandsbediening? Het is vrij eenvoudig en goedkoop.Stap 1: Verzamel spullen Hier is wat u nodig heeft:-Arduino (ik gebruik UNO)-Solderless breadboard-Een infrarood ontvanger-So
Controle van uw arduino vanaf uw PC met de Qt Gui

Controle van uw arduino vanaf uw PC met de Qt Gui

voor mijn eerste instructable ik zal u tonen het gebruik van Qt voor grafische interfaces voor je arduino (of elk apparaat rs232) makenDus als u maken van uw eigen grafische interfaces wilt, u bepalen spullen gewoon door te klikken op knoppen van uw
Controle van een Arduino met uw telefoon.

Controle van een Arduino met uw telefoon.

In dit Instructable zal ik laten zien hoe om te controleren uw spullen met uw telefoon en de arduino board. Ik heb alles gecontroleerd uit rookmachines ook Kerstmis licht is met dit programma.Video:Sorry dat de video is nogal vreemd, want mijn camera
Controle van de arduino met behulp van Blynk via usb

Controle van de arduino met behulp van Blynk via usb

Dit is mijn tweede instructable. In dit instructable zal ik laten zien hoe u kunt besturen LED met behulp van Blynk.Blynk is een applicatie die ons dashboard, evenals connectiviteit biedt. die u kunt downloaden van google play store (voor Android). &
Hoe de controle van de arduino met een mail

Hoe de controle van de arduino met een mail

Er zijn een heleboel oplossingen waarmee een Arduino board: web oplossingen, desktop applicatie oplossingen, hardwareoplossingen. Maar hoe zit het met e-mail? Ja, vind je iets op het web, maar ze nodig hebben voor ethernet schilden en vaak is Arduino
Controle van een Arduino met een horloge (TI eZ430 Chronos)

Controle van een Arduino met een horloge (TI eZ430 Chronos)

het horlogeDe Texas Instruments eZ430 Chronos is een coole gadget. Het heeft bidirectionele radiocommunicatie, en een gehele bos van sensoren: temperatuur, druk, versnelling.Het is in feite een development kit voor de MSP-430 (een low-power microcont