ESP8266 DMX Receiver für Arduino/C

#7501258
Lesenswert?
• ▲
▼

Hi,

ich suche auch nach einer Möglichkeit mit einem D1 Mini das DMX Signal aus einem Max485 Chip auszulesen. Ein W-Lan Art Net irgendwas ist mir leider bei weitem zu komplex.

Mit DmxSimple bekomme ich leider diese Fehlermeldung: c:\Users\timru\Documents\Arduino\libraries\DmxSimple\DmxSimple.cpp:7:10: fatal error: avr/io.h: No such file or directory 7 | #include <avr/io.h> | ^~~~~~~~~~ compilation terminated.

exit status 1

Compilation error: exit status 1

Mit DMXSerial bekomme ich diese Fehlermeldung: In file included from C:\Users\timru\Documents\Arduino\Flamer\D1_DMX_test\D1_DMX_test.ino:1: c:\Users\timru\Documents\Arduino\libraries\DMXSerial\src/DMXSerial.h:39:10: fatal error: avr/io.h: No such file or directory 39 | #include <avr/io.h> | ^~~~~~~~~~ compilation terminated.

exit status 1

Compilation error: exit status 1

Wäre sehr für Hilfe Dankbar.

#7501766
Lesenswert?
• ▲
▼

Hi, danke für den Tipp. ich stoße aber auf folgende Probleme: 1.) Das ist gemacht für ein ESP32, ich benutzte aber einen ESP8266- --> Macht das was aus? 2.) Aufgrund des DMX Lesen Beispiel schließe ich darauf, das man mit diesem Tool nur das ganze DMX Paket auslesen und über dem Seriellen Monitor an einen PC senden kann. Ich muss aber einzelne DMX Kanäle direkt auslesen und in dem ESP8266 direkt verarbeiten und die Ausgänge schalten. --> Ist das damit überhaupt möglich?

Außerdem: Ich habe auch noch das Tool ESPDMX (ohne den Unterstrich bzw. mit Bindestrich) gefunden, aber damit funktioniert nichts, ich kann die Kanäle wohl nicht wirklich auslesen, habe einen Max 485 Chip am RX Pin angeschlossen, wenn ich den Aufbau mit einem Arduino Nano (und DMXSerial) teste läuft das.

Hier das Programm das ich geschrieben habe: #include <ESPDMX.h>

DMXESPSerial dmx;

// DMX Settings int RedCH = 1; // Red LED (0-255) int GreenCH = 2; // Green LED (0-255) int BlueCH = 3; // Blue LED (0-255)

// Pins Output int RedMosfet = 14; // Red LED Mosfet Output Pin (PWM) int GreenMosfet= 12; // Green LED Mosfet Output Pin (PWM) int BlueMosfet = 13; // Blue LED Mosfet Output Pin (PWM)

// DMX Value Variables int RedValue = 0; // DMX Value RedCH int GreenValue = 0; // DMX Value GreenCH int BlueValue = 0; // DMX Value BlueCH int MappedRedValue=0; int MappedGreenValue=0; int MappedBlueValue=0;

void setup() { dmx.init(); // initialization

//Outputs pinMode(RedMosfet,OUTPUT); pinMode(GreenMosfet,OUTPUT); pinMode(BlueMosfet,OUTPUT); }

void loop() { dmx.update(); // update the DMX bus RedValue = dmx.read(RedCH); GreenValue = dmx.read(GreenCH); BlueValue = dmx.read(BlueCH);

MappedRedValue = map(RedValue, 0, 255, 0, 1023); MappedGreenValue = map(GreenValue, 0, 255, 0, 1023); MappedBlueValue = map(BlueValue, 0, 255, 0, 1023);

analogWrite(RedMosfet, MappedRedValue); analogWrite(GreenMosfet, MappedGreenValue); analogWrite(BlueMosfet, MappedBlueValue); }

Jemand eine Idee was ich falsch mache?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.