DMX Empfang analysieren wie?

Gast #652878
Lesenswert?
• ▲
▼
Hallo

Ich bin gerade an einem DMX Empfänger.
Da ich mein Gerät auch darauf vorbereiten möchte, dass es auch beim 
Ausfall von DMX weiter stabil funktioniert.
Deswegen suche ich nach einer Möglickeit, zu Überprüfen ob wirklich DMX 
Empfangen wird.

Ich realisiere den DMX Empfang im USART RXC Interupt.
Als Vorlage habe ich mal das von Henne genommen.
http://www.hoelscher-hi.de/hendrik/light/ressources/AN012.pdf

Reicht es im Hauptprogramm abzufragen ob ein BREAK vorhanden ist?
Oder muss ich irgendwelche FE zählen?

Es soll prinzipell abgefragt werden
1
for(;;)
2
{
3
   if (!dmxOK)
4
   {
5
   standalone();
6
   }
7
}

Gruß Ingo
Gast #653324
Lesenswert?
• ▲
▼
ich mache es auch wie Jürgen.

Wäre nett, wenn Du Dein Programm am Ende veröffentlichen könntest, Ingo.
(Ich bekomme dauernd Anfragen zu Steppersteuerungen, Pulten, Analyzern 
und CFL - habe aber sehr wenig Zeit...)


Viel Erfolg,
Hendrik
#653565
Lesenswert?
• ▲
▼
Möchte mich auch zu diesem Thema melden.

Ich habe auch immer wieder solche Aufgabenstellungen.
Gelöst habe ich es mit einem Art DMX Watchdog.

Jedesmal wenn der Uart ein Byte empfängt setzt der Interupt ein 
Zählregister auf 0xff;

dann lasse ich zusätzlich einen Timer mit einem bestimmten Interupt 
laufen.
Bei jedem Overflow Interrupt wird dann dieser Zähler dekrementiert.
Wenn also das DMX Signal gestört ist läuft das Zählregister ab.

Im Hauptprogramm überprüfe ich einfach ob das Zählregister == 0
Fertig!

Werde bei nächster Gelegenheit auch noch ein kleines AppNote 
veröffentlichen.

@Henne
Werde dir diesbezüglich noch ein paar Infos per Mail zukommen lassen.

Julien
Gast #653835
Lesenswert?
• ▲
▼
Laut DMX-Spezifikation kann zwischen zwei Frames bis zu einer Sekunde 
vergehen.
Ergo einfach bei jedem Break / MAB nen Timer auf 1s resetten. Wenn der 
dann ausläuft, dann ist dein DMX-Signal abwesend.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren