Hallo, ich habe mir das Tutorial zum DMX-Empfang auf hennes site angeschaut blicke aber nicht ganz durch. Die Ganze Initialisierung ist mir soweit klar, aber wo lege ich fest wie viel Kanäle ich auslese und wie kann ich dann die Daten richtig verarbeiten(in den SRAM schreiben). Zur Info: ich habe vor eine uralte deckenlichtsteuerung in der Schule auf DMX aufzupeppen. Da die Anlage aber anscheinend keinem Standart entspricht (0-10V, etc.) möchte ich die potis durch digitale ersetzen. Diese sollen dann von nem ATMega angesteuert werden. Wie kann ich also festlegen wie viele Kanäle ich auslese und wie kann ich separat auf diese Werte zugreifen um diese dann z.B. in den SRAM zu schreiben? Danke für eure Antworten
Vertehe ich das richtig? Wenn das Byte das über die Startadresse erreicht wurde wird es in dmx_byte geschrieben und dmx_status wird auf 3 gesetzt. Dann wird zu handle_byte: gesprungen und dort kann man das Byte mit der Nummer der Startadresse das in dmx_byte gepeichert wurde verarbeiten. Aber wie stelle ich ein wie viele Bytes ab der Startadresse ausgelesen werden und wie kann ich dann darauf zugreifen? Weil jetzt wird doch nur ein byte gelesen oder??? Danke für eure Antworten
Es wird immer nur ein Byte gelesen, ja - diese kommen im Gänsemarsch hintereinander ´reingewackelt. Allerdings kannst Du den Code so modifizieren, daß ALLE Bytes OBERHALB der Basisadresse erkannt werden. Diese schreibst Du dann in einen Buffer und diesen wiederum begrenzt Du auf die Anzahl der Bytes, die Du gelesen haben möchtest. Ist der Buffer dann vollgerödelt, läßt Du den DMX-Status auf "Habe alles, auf nächstes RESET/Startbyte warten" kippen.
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.