Forum: Mikrocontroller und Digitale Elektronik DMX-Daten empfangen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Heiko Thole (Gast)


Lesenswert?

Hallo ihr.
Ich möchte mit einem Mega8 DMX-Daten mit dem eingebauten UART
empfangen. Die Daten an sich zu empfangen ist nicht das Problem da der
µC das ja fast von alleine macht.
Mein Problem ist nun den Reset abzufragen. Ich muss ja im Prinzip mit
dem UART auf Daten warten und eigentlich auch gleichzeitig gucken ob
ein Reset (min. 88µs Lowpegel) kommt.
Kann mir da jemand ein paar Tips geben?

Danke
Heiko

PS: Infos zum DMX-Protokoll gibts unter:
http://www.soundlight.de/techtips/dmx512/dmx512.htm

von mmerten (Gast)


Lesenswert?

Break Erkennung kannst du ganz einfach über das FE-Flag (Framing Error)
im UART-Statusregister realisieren.

von Stefan (Gast)


Lesenswert?

FE-Flag funktioniert prima. Um sich von Übertragungsfehlern zu schützen
(die auch FE setzen könnten) solltest Du noch auswerten, dass das
nächste Byte nach FE das Startbyte ist.

Stefan

von Heiko Thole (Gast)


Lesenswert?

Hallo Ihr.
danke schon mal für die Tips.
Doch irgendwie klappt das noch nicht so.
Wenn ich auf das FE-Flag warte (while(!(UCSRA & (1<<FE)));) um dannach
dann mit der Auswertung anzufangen, bleibt der µC in der while-Schleife
hängen.
Muss ich noch irgendwelche anderen Flags setzen?

MfG
Heiko

von mmerten (Gast)


Lesenswert?

Mit dem warten auf FE ist's so eine sache da unterscheiden sich AT90S
und ATMega erheblich, da die neuen Megas über FIFO verfügen. Schau die
mal die Codebespiele im Datenblatt an.

von Heiko Thole (Gast)


Lesenswert?

Hallo.
Da steht leider kein Bsp. zum FE.

Gruß Heiko

von mmerten (Gast)


Lesenswert?

zwar nicht explizit zum FE-Flag, sondern dem korrekten Zugriff auf UCSRA
und UDR beim USART.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.