Gast
#2230845
Hallo liebe Gemeinde, ich habe hier ein eigenwilliges Problem, bei dem Ihr mir hoffentlich helfen koennt. Ich versuche einen Atmega328 ueber RS232 (mit Pegelwandler) an einen PC zu schliessen und kontinuierlich Messdaten vom uC zum PC senden zu lassen. Nach einigem Werkeln kam auch etwas auf dem Bildschirm an, aber das war Datenmuell. Nach laengerem Probieren kam ich auf die Idee, die Datentransferraten von uC und PC mal in Vielfachen gegeneinander zu verstellen. Nun klappt es, wenn der PC mit 1200 und der uC mit 9600 Baud arbeitet. Die Berechnung des UBRR-Registers habe ich vom Compiler mittlerweile entkoppelt und der ermittelte Wert stimmt auch mit dem Datenlblatt fuer 9600 Baud ueberein. Als Quarz verwende ich einen Quarzoszillator mit 7372800 Hz. Fuses sind entsprechend gesetzt. Initialisiert ist der UART auf 8N1 ohne Paritaet und mit asynchronem Transfer. Hat einer von euch eine Idee, woher die um Faktor 8 geringere Datentransferrate des uC gegenueber dem errechneten Wert herkommen koennte? Vielen Dank fuer eure Antworten schon jetzt. Gruss Mike