Guten Morgen Hier mal wieder eine Frage aus dem Bereich "Das Problem liegt zwischen den Ohren des Users" Ich nutze einen ATMega16 auf einem STK500 und betreibe in dort mit einer Frequenz von fosc = 3.6864 MHz. Ich möchte die USART nutzen und habe in das UBRR einen Wert von 23 eingetragen, um eine Übertragungsgeschwindigkeit von 9600 Baud einzustellen. Auf einer der zahlreichen Fehlersuchen habe ich mal meinen Oszi an den Tx Pin des AVRs angeschlossen und den Mega immer wieder ein 0b10101010 senden lassen. Erwartungsgemäß konnte ich auf dem Schirm ein Rechtecksignal messen, bei dem ein Bit jedoch eine Länge von ca. 370 us hatte. Man ließt aber allenthalben, dass ein Bit bei 9600 Baud nur 104 us lang ist. Kann mir das jemand erklären ? Danke Torsten
> Man ließt aber allenthalben, dass ein Bit bei 9600 Baud nur 104 us
Das kann man sogar ausrechnen: 1/9600 = 104,1666 us
Und der interne Oszillator läuft daher mit
(104/370) * 3,6864 MHz = 1,0378 MHz
Also noch gut innerhalb der Spec ;-)
Danke für die schnelle Hilfe, aber ich dachte, dass ich den internen Oszillator gegen den Takt vom STK500 ausgetauscht. Könnt Ihr mir noch schnell sagen, was ich tun muss, damit der Mega vom Board getacktet wird ? hab das System zwar gerade nicht zur Hand, aber ich meine das entsprechende Fuse Bit gesetzt zu haben "Ext. Crystal/Resonator High Freq.; Start-up time: 16K CK + 64 ms" Muss ich noch etwas auf dem Board umstecken ?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.