PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : UART funktioniert nach uC-Tausch nicht mehr ,-(



sonic
26.08.2004, 15:41
Hi Freaks,

irgendwie versteh ich es nicht so ganz...
Ich hab ein Board mit einem 4433. Damit lief die UART perfekt. Habe alle Zeichen einwandfrei auf dem PC dargestellt bekommen.
Jetzt hab ich den 4433 durch einen Mega8 getauscht und bekomme nur noch Schrott.

Woran kann das liegen? Ich hab eigentlich schon alles durchprobiert...

Gruß, Sonic

avatar
26.08.2004, 16:22
Vielleicht liegt's an der Taktung. Wenn du den UART verwendest, solltest du am besten extern mit einem Quarz takten. RC-Oszillator ist zu ungenau um die richtige Baudrate genau zu treffen.

Viele Grüße

sonic
26.08.2004, 17:04
Vielleicht liegt's an der Taktung. Wenn du den UART verwendest, solltest du am besten extern mit einem Quarz takten. RC-Oszillator ist zu ungenau um die richtige Baudrate genau zu treffen.
Viele Grüße

Ne ich hab nen 4MHz Quartzoszillator dran, die Peripherie ist ja exakt die Gleiche. Vorher hat's ja auch funktioniert?
Ich hab alle möglichen Baudratenkombinationen durchprobiert, beim 4433 hatte ich nen relativ großen Bereich, beim M8 funktioniert gar keine.
Bei 9600Baud hab ich glaub nen Fehler von 0,16%.
Mich wundert ja nur das es beim einen geht beim anderen nicht ,-(

Gruß, Sonic

LuK-AS
26.08.2004, 19:47
Hast Du bei Deinem Mega8 auch schon die FuseBits programmiert? beim 4433 (bin mir aber nicht sicher) musst Du das nämlich nicht. Der Mega8 läuft intern mit 1Mhz Takt (Werkseinstellung).

Gruss LuK-AS

sonic
26.08.2004, 19:58
Hast Du bei Deinem Mega8 auch schon die FuseBits programmiert? beim 4433 (bin mir aber nicht sicher) musst Du das nämlich nicht. Der Mega8 läuft intern mit 1Mhz Takt (Werkseinstellung).

Gruss LuK-AS

*DING* an was man nicht alles denken muss ,-) probier ich gleich mal...

Gruß, Sonic

avatar
26.08.2004, 21:20
Wenn ich mit UART arbeite, verwende ich immer einen dieser beiden Quarze.

3686400 Hz oder
9830400 Hz

Diese Frequenzen lassen sich durch fortwährendes halbieren auf die gängigen Baudraten (z.B.9600) herunter teilen. Da stimmt die Baudrate immer haargenau und es gibt keine Abweichungen (sog. "skew" oder wie man das nennt...)

sonic
26.08.2004, 22:44
So jetzt bin ich voll verwirrt. Ich hab jetzt das Datenblatt gelesen, und diverse Seiten im Netz. Aber ich weis immer noch nicht wie ich die einzelnen Bits setzen muss.

Ich benutze eine 4MHz QuarzOSZILLATOR, manche schreiben das man für einen Oszillator andere Fusebits braucht als bei einem Quarz. Und auf die Frequen soll es auch noch ankommen. Ich will mir meinen AVR nicht zerschiessen, wäre nett wenn mich jemand aufklären könnte...

Gruß, Sonic

LuK-AS
26.08.2004, 23:32
Dazu müsste ich wissen welches Programm Du benutzt um die Fuses zu proggen...

Gruss LuK-AS

Michael
26.08.2004, 23:59
Hallo sonic,
wenn du YAAP verwendest, sollte es so aussehen:
http://www.team-iwan.de/technik/software/fuses.php
Gruß, Michael

sonic
27.08.2004, 07:20
Dazu müsste ich wissen welches Programm Du benutzt um die Fuses zu proggen...

Gruss LuK-AS

Achso, Ponyprog benutze ich ;-(
Gruß, Sonic

sonic
27.08.2004, 09:13
Hallo sonic,
wenn du YAAP verwendest, sollte es so aussehen:
http://www.team-iwan.de/technik/software/fuses.php
Gruß, Michael

Hi Michael, das hat geholfen. Der Mega8 sendet und empfängt einwandfrei ;-) Dankeschön...

Gruß, Sonic