Hallo, Ich reihe mich ein in die lange Kette der Menschen, die DMX mit dem Attiny2313 umsetzen wollen … irgendwie klappt es immer noch nicht … Ich bin auch nach wie vor Anfänger. Wie hier Beitrag "UART auf Attiny kaputt ?" beschrieben empfängt der Attiny2313 irgendwie Datenmüll oder sogar das richtige DMX-Signal, denn, wenn ich die Schaltung an ein anderes DMX-Gerät (also einfach nur den SN75176 in der Grundbeschaltung) anschließe, dann kann ich RGB ansteuern … gar kein Problem. Ab und zu zuckt meine Test-LED, wahrscheinlich wird dann doch mal ein Byte valide erkannt. Aber Alles in Allem zufällig. Schaltplan: dmx_empfang.png Der Code ist aus anderen Projekten zusammen kopiert. Ich bin aber immer noch davon überzeugt, dass es so funktionieren müsste. Siehe Anhang (main.c). Eine Idee hatte ich noch … vielleicht ist das auch schon die Antwort … Bei einem anderen RGB-DMX-Empfänger (3-Kanal RGB von U. Radig, woher auch der C-Code her stammt, irgendwo muss ich ja anfangen :) ) gingen die Pins 2 und 3 vom SN75176 noch an den INT0 vom Attiny und zusätzlich auf GND, denn soweit ich den SN75176 richtig verstanden habe, müssen Pin 2 & Pin 3 auf GND, damit er empfangen kann. (Siehe zweiter Schaltplan (dmx_empfang_2_3_INT0.png )). Rate und Rätselfrage: Ist das etwa das Signal, was in den INT0 geht, welches der Attiny braucht um die DMX-Pakete richtig zu zählen? Noch etwas, die Fuses sind laut avrdude E:FF, H:DF, L:4E. Der Attiny hat einen Quartz mit 12Mhz angeschlossen (Kondensatoren: 22pF). Ich bin der Meinung, dass die Fuses so richtig sind, lasse mich aber natürlich gerne eines Besseren belehren. Für alle Hilfe wie immer dankbar! Viele Grüße!
Hallo! Die PINs 2 und 3 sind die Richtungsumschaltung für den DMX-Bus und sind keine Signalausgänge. Wenn da ein PIN des Controllers dran hängt, kann von Senden auf Empfang umgeschalten werden. Das ist bei DMX wohl nie notwendig. Du mußt aber meineer Meinung nach die Datenleitungen A und B am Empfänger über Widerstände auf definierte Pegel legen, damit bei offenen Eingängen kein "Müll" erkannt wird.
Route 66 schrieb: > Die PINs 2 und 3 sind die Richtungsumschaltung für den DMX-Bus und sind > keine Signalausgänge. Wenn da ein PIN des Controllers dran hängt, kann > von Senden auf Empfang umgeschalten werden. Das ist bei DMX wohl nie > notwendig. ...außer man möchte (später mal) RDM* unterstützen ;D *http://en.wikipedia.org/wiki/RDM_%28lighting%29#Uses_for_RDM
Hallo! Wunsch von bluppdidupp (Gast) Datum: 29.01.2015 17:02 :"...außer man möchte (später mal) RDM* unterstützen " deswegen für Attiny2313 RGB-Dimmer DMX mit RDM Anhang:RGB_DMX_RDM.zip
HALLO! Ich habe meinen Anhang:RGB_DMX_RDM.zip überarbeitet , um AVR DMX Einsteigern es zu erleichtern und einen Erfolg zu ermöglichen . Alles ganz leicht ?!? nein -> Doch !!! kein C/C++ sonder dummer weise *** AVR-Assembler-Code *** Viele Grüße! Helmar
Hendrik W. schrieb: > Der Code ist aus anderen Projekten zusammen kopiert. Ich bin aber immer > noch davon überzeugt, dass es so funktionieren müsste. Genau das ist das Problem. Von völlig inkompetenten Leuten zusammenkopierter unverstandener Code. Wie wäre es mal mit Lernen? Muss ja nicht soweit gehen, dass du was wirklich Eigenes schreiben könntest, aber doch wenigstens soweit, dass du in die Lage versetzt wirst, halbwegs kompetent diese "C&P-Programmierung" zu betreiben...
Nicht um mich zu rechtfertigen, sondern um darzustellen, warum ich C&P-Programmierung gerade für Einsteiger für gut halte: Mit den Projekten und dem dazu gehörigen C-Code von Hoelscher, Radig und Co. habe ich einen guten und verständlichen Einstieg gefunden. Es sind immerhin Beispiele, die funktionieren. Bei meinem ursprünglichen Problem (s.o.) lag es eh an der Hardware. c-hater schrieb: > Wie wäre es mal mit Lernen? Muss ja nicht soweit gehen, dass du was > wirklich Eigenes schreiben könntest, aber doch wenigstens soweit, dass > du in die Lage versetzt wirst, halbwegs kompetent diese > "C&P-Programmierung" zu betreiben... Inzwischen läuft das C-Programm für DMX auf einem Atmega8. Hätte ich den Beispiel-Code nicht gehabt, dann hätte das alles wesentlich länger gedauert inklusive noch mehr Frustration. Gelernt habe ich dabei übrigens trotzdem sehr viel! Ging ja nie darum einfach nur C-Code zu kopieren, sondern auch zu verstehen, warum die Codezeilen am Ende eine LED Faden können. Das Ziel habe ich auf jeden Fall erreicht. Also, an alle EinsteigerInnen: Kopiert und mixed soviel ihr wollt und soviel die Lizenzen hergeben. Wenn der Anspruch da ist, dann vertiefen die Menschen eben ihr Wissen, alle anderen wirst du mit deiner Problemanalyse eh nicht erreichen: > Genau das ist das Problem. Von völlig inkompetenten Leuten > zusammenkopierter unverstandener Code. Kompetenz entsteht meines Erachtens aus der Auseinandersetzung mit der Materie. Für mich ist es immer sehr hilfreich gewesen Code zu lesen und zu verstehen, wie er funktioniert. Für andere ist es aber vielleicht einfacher ein C-Buch oder Assembler-Buch zu lesen und alles von Grund auf Schritt für Schritt umzusetzen. Ich halte beide Wege für richtig, kommt ja immer auch auf den Lerntypen an. Ich habe übrigens den Code mit hier reingestellt. Gruß
:
Bearbeitet durch User
HALLO ! Ich gratuliere für den Erfolg Hendrik W. (heni_w) und zu wissen das du nicht aufgeben hast . Sich viele Codebeispiele zu holen ist ein wichtiger guter Weg . Ursprungsthema „DMX und der Attiny2313“ ATmega8 = Attiny2313 + Wachstum (gut begossen) → Passt !!! Meine Ziele und Wunsche : LED – Dimmer mit DMX und RDM IR-Bedienung 1. 16 Bit Dimmung 2. Flimmer frei voll Kamera , Film Kamera tauglich auch bei sehr kurzen Verschluss Zeiten 3. gamma-kurve angepasst 4. Funktionen Dimmung und Flashen möglich 5. mal schauen was noch fehlt ups !!! das passt nicht in den Attiny2313 aber in den Atmega8 oder ... oder ... ich will auch dranbleiben . Gruß Helmar
Die Ursprungsidee kommt von hier: http://www.ulrichradig.de/home/index.php/dmx/alias-4 Das ist ein DMX-Empfänger, der für LED-Stripes mit dem Attiny2313 umgesetzt wurde. Und im Code ist das dann auch ein Soft-PWM, der Mosfets mit Compare an und ausschaltet, sprich Timerwerte werden mit dem Wert des DMX-Kanals verglichen und der Kanal dementsprechend an oder ausgeschaltet.
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.