meta data for this page
  •  

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
uebung:itt11:neopixel-leds [2023/01/13 14:58] – angelegt juergenhaasuebung:itt11:neopixel-leds [2023/01/23 08:48] (aktuell) juergenhaas
Zeile 3: Zeile 3:
 [[uebung:itt11:beispielcode_esp8266|zurück zur Übersicht]] [[uebung:itt11:beispielcode_esp8266|zurück zur Übersicht]]
  
 +Bei NeoPixel-LEDs handelt es sich um mehrfarbige LEDs mit einem integrierten Microcontroller. Dieser ermöglicht es, dass eine ganze Reihe von LEDs mit nur einem einzigen von LED zu LED weitergereichten Datenpin gesteuert werden kann.
  
-<code javascript NeoPixel-LEDs.ino>+**Wichtig:** Bei diesen LEDs muss unbedingt darauf geachtet werden, dass sie korrekt angeschlossen werden. Einmaliges Anschließen bei falscher Polung kann zur sofortigen **Zerstörung** der LED führen.
  
 +Vor dem Data-In-Anschluss des ersten Pixels in der Reihe sollte ein Widerstand von ca. 300-500 Ohm verwendet werden. Dadurch wird Fehlern in der Datenübertragung entgegengewirkt.
 +
 +<code cpp NeoPixel-LEDs.ino>
 +/* NeoPixel-Beispiel für ESP8266 */
 +
 +/* Wichtige Hinweise für die praktische Umsetzung
 + * Für den Betrieb der NeoPixel ist eine eigenständige 5V-Stromversorgung notwendig. Die
 + * Minus-Pole der Stromversorgung und des ESP-Boards müssen miteinander verbunden sein. Der
 + * Plus-Pol der Stromversorgung kann mit Vin (5V) am ESP-Board verbunden werden.
 + * ---------------------------------------------------------------------------------------------
 + * Beim Anschließen der NeoPixel muss unbedingt auf korrekte Polarität geachtet werden, da diese
 + * ansonsten umgehend kaputtgehen.
 + * ---------------------------------------------------------------------------------------------
 + */
 +#include <Adafruit_NeoPixel.h>
 +
 +#define PIXEL_PIN D6
 +#define NUMPIXELS 2
 +
 +// Bei den meisten NeoPixel-LEDs ist die Farbreihenfolge Green Red Blue (GRB).
 +Adafruit_NeoPixel pixels(NUMPIXELS, PIXEL_PIN, NEO_GRB + NEO_KHZ800);
 +
 +
 +void setup()
 +{
 + // NeoPixel-Reihe initialisieren
 + pixels.begin();
 + // Anzeigewert für alle Pixel auf 0 0 0 stellen
 + pixels.clear();
 + // aktuelle Anzeigewerte an die Pixel senden
 + pixels.show();
 +}
 +
 +void loop()
 +{
 + // erstes Pixel grün
 + pixels.setPixelColor(0, pixels.Color(255, 0, 0));
 + // zweites Pixel rot
 + pixels.setPixelColor(1, pixels.Color(0, 255, 0));
 + pixels.show();
 + delay(2000);
 +
 + // erstes Pixel blau
 + pixels.setPixelColor(0, pixels.Color(0, 0, 255));
 + // zweites Pixel gelb
 + pixels.setPixelColor(1, pixels.Color(255, 255, 0));
 + pixels.show();
 + delay(2000);
 +
 + // Helligkeit reduzieren
 + pixels.setBrightness(127);
 + pixels.show();
 + delay(2000);
 +
 + // Helligkeit erhöhen
 + pixels.setBrightness(255);
 + pixels.show();
 + delay(2000);
 +}
 </code> </code>
  
 [[uebung:itt11:beispielcode_esp8266|zurück zur Übersicht]] [[uebung:itt11:beispielcode_esp8266|zurück zur Übersicht]]