-
was bitte soll denn dieser Beitrag??
1.) Das es per Software PWM geht, wurde hier schon gesagt...
2.) Du hast doch gar keine Ahnung, welche Programmiersprache der TE benutzen will, also brauchst du auch keine Befehle angeben
3.) Wenn, dann benutzt man für sowas den Timer, und schickt nicht den Contoller schlafen... Zumal das sowieso ausscheidet, wenn man noch Ordentlich Buskommunikation betreiben will
-
Das man den Controller bei der PWM Erzeugung nicht blockieren sollte hat nietzsche schon geschrieben.
Die eigentliche PWM Routine sollte möglichst schnell abgearbeitet werden.
Eine Hochsprache für das Hauptprogramm mit Inline Assembler für die PWM Erzeugung ( Im Interrupt ?! ) dürften hier genau der richtige Mix sein.
Zu DMX 512:
Guck mal hier:
http://www.soundlight.de/ unter der Rubrik Technik.
Da ist das Protokoll ziemlich gut dokumentiert.
Der USART eines ATMEGA kann das DMX Signal 250kBit/s 8,N,2, mit 8MHz oder noch schnellerem Quarz verarbeiten.
Das Reset ( 88µs ) wird dabei als "Frame Error" erkannt und als Start einer neuen Sequenz ausgewertet.