Gast
#160167
Hallo, mir ist gerade etwas bei der Nutzung des UART und gleichzeitiger Nutzung von Interrupts aufgefallen, vielleicht könnte mir das irgendjemand hier bestätigen bzw. einen Alternativen Workaround vorschlagen: Ich nutze den UART und übertrage in einer Endlosschleife eine Zeichenkette (Routinen von Peter Fleury). Wenn ich nun einen Beep (5000Hz über Ausgang an Piezo) mit einem Timer0 Interrupt erzeuge stopt der UART plötzlich, also der Text wird nicht mehr übertragen. Wenn ich nun allerdings den UART auf der Computerseite oder auf der uC Seite neu initialisiere läuft wieder alles. Ich benutze einen ATMega8, der Piezo wird mit Timer0 gesteuert und der Interrupt wird etwa 10000 mal pro Sek aufgerufen (für 5000Hz). Wie schon erwähnt, ist meine Lösung, den UART dann nach jedem Beep-Komando (das den Timer-Interrupt initialisiert) einfach den UART neu zu initialisieren. Aber das finde ich ist eine unsaubere Lösung; geht das nicht noch anders? Vielen Dank, Daniel