schon mal das DMX-Protokoll bei Wikipedia durchgelesen? Das scheint nicht ganz einfach zu sein...
Hi,
ich weiß , dass dies hier ein RoboterForum ist, dennoch sieht man eine vielfalt von Projekten hier, die hier Formen annehmen und ich lese seit einiger Zeit eifrig mit!!
Hier mein Anliegen, ich würde gerne RGB-Led Module/Kacheln bauen (grob 25cm x 25cm), diese sollen 9( oder 16, bin mir noch nicht ganz sicher) RGB-Leds besitzen welche ich einzeln ansteuern möchte, um so in Kombination mit mehreren Modulen gute LichtFade möglichkeiten zu erhalten!
Idee ist es eine Wand aus mehreren kacheln aufzubauen und mit dem PC anzusteuern!
Auf meiner Suche fand ich vorallem die DMX Lösung, vorteil gut erweiterbar durch andere Geräte und steuerbar über bereits fertige Software.... andereseits benötige ich soweit ich mich richtig informiert habe pro RGB led 3 Kanäle also alleine 27 bzw 48 stück und ihr könnt mich gern verbessern, d.h. pro BUS wären dann 18 bzw 10 Kacheln...anschließbar!
Da ich denk ich mal mehrere Kacheln herstellen und anschließen möchte hier die frage, kann ich einfach eine weitere DMX-Schnittstelle zum PC anschließen, können DMX Programme damit umgehen?
Oder gar, gibt es eine andere Idee auf die ich nicht gekommen bin, bin leider recht neu und unwissend was die elektronische Seite angeht....
vielen Dank für eure Hilfe
gruß PredKirK
P.S.:
btw mit welchem system werden LED-Leinwände angesprochen sind ja mega viele LEDs^^ vllt hilft mir das ja auch...
schon mal das DMX-Protokoll bei Wikipedia durchgelesen? Das scheint nicht ganz einfach zu sein...
jo habe ich.... also wollte dann pro kachel via Microcontroller den bus auslesen und damit die LEDs steuern.... die Idee ist es ja, dass es ein system wird was leicht erweiterbar und austauschbar ist!
hat hier vllt irgendwer ahnung von DMX?
mit dem µC wird das net so einfach: Du benötigst für jede LED einen eigenden PWM Port am µC! Die neunen Xmegas haben zwar 8st aber weiter wirst du da net kommen ?? Ne Möglichkeit wäre Software PWM: Du lässt den Timer so laufen, dass wenn du in der isr die led toggelst, sie deine Minimale helligkeit hat die du willst, und dann mit nem Zehler für jeden Kanal in der isr den erhöst und dann mit nem Vorgabewert in ner if ansteuerst:
Die vorgabe rechnest du dir dann aus den Vorgabe werten Raus. Dann kannst du auch dmx nemen !Code:timer1_isr: if (Zaehler1 = Vorgabe) then Toggle Led1 'z.B. Rot Zaehler1 = 0 endif incr Zaehler1 return
Thema DMX: Schau mal
Gruß
MiniMax
okay ich lern dazu^^ .... gut zu wissen leider funktioniert dein link leider nicht!
Hier war vor kurzen gerade ein ähnlicher Thread, dort wurde ein LED Treiber IC das 256 einzeln per PWM dimmbare LED's ansteuern konnte.Zitat von PredKirK
Wenn ich es richtig in Erinnerung habe, wurde das über I²C gesteuert?
An den Thread nahmen kann ich mich leider nicht erinnern, lichtspielereien sind nicht so mein Ding.
Gruß Richard
Ach was ... DMX ist einfach, geradezu primitiv
und für RGB brauchst Du 3 DMX und 3 PWM Kanäle,
es gibt AVR die für einen Timer 3 Output Compare Ausgänge haben
in Hardware, da brauchst Du dann nur noch in die entsprechenden ORR-Register
Deinen Farbwert rein zu schreiben.
Auch die Verarbeitung von DMX ist easy, nur keine Angst.
Ist einfach UART, 8n1 oder 8n2 ... weiss ich jetzt grad nicht sicher
mit nem RS485-Baustein davor auf 250kBaud.
Nimmste einfach das URXC-Interrupt und den Framing Error Flag
der UART, wenn das Flag gesetzt ist bedeutet das es ist ein nichterkennbares
Zeichen an der UART angekommen, das ist dann der Break der den
Anfang markiert,
dann nur noch im URXC-Interrupt nen Zähler hochzählen lassen bei
jedem Zeichenempfang, das sind dann die einzelnen DMX-Kanäle,
bis Deine gewünschte Adresse erreicht ist und die nachfolgenden
3 Bytes schreibst Du ins jeweilige OCR-Register deiner RGB-PWM
und gut ist.
30 Zeilen Code und die Sache ist erschlagen.
hab mir vor Jahren so 4-kanalige Dimmer für Straler gebastelt, keine große
Sache.
Vor den Erfolg haben die Götter den Schweiß gesetzt
Hey super vielen Dank... ich werd mich mal weiter reinlesen... damit ich deine Antwort auch komplett verstehe^^ ich hoffe ich kann mich nochmal melden wenn ich meine Fragen und Probleme genauer formulieren kann^^
Lesezeichen