PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RS232 geht nicht mehr richtig



Spurius
23.12.2004, 19:05
Hallo,
bei mir geht RS232 nicht mehr richtig, wenn ich einen 16mhz Quarz benutze, dann bekomme ich nur noch komische zeichen, stelle ich auf 1mhz um, geht es.
Der Quarz sollte nicht kaputt sein, da ich eine LED ungefähr im Sekundentakt blinkenlassen kann, wenn ich ein entsprechendes Programm verwende.
Wisst ihr woran das liegt?
Gruß
Spurius

BlueNature
23.12.2004, 19:41
Hallo Spurius!

Denk daran das mit dem Wechsel der Quarzfrequenz auch immer die Baudrate der seriellen Schnittstelle mit verändert wird. Der MAX232 tut nur was er soll. Dein Controller ist am Datenmüll schuld weil du ihm die 16-fache Baudrate verpasst und dein Rechner oder was auch immer dort angeschlossen ist. Wenn du die Baudrate am andern Teilnehmer auf die 16-fache Baudrate umstellst wird es sicher passen.

Grüsse Wolfgang

Spurius
23.12.2004, 21:21
Wie meinst du das genau? Wenn ich am Rechner z.B. 2400 einstell und auf dem AVR gehts auch nicht.

BlueNature
23.12.2004, 22:33
Wie meinst du das genau? Wenn ich am Rechner z.B. 2400 einstell und auf dem AVR gehts auch nicht.

Du hast doch sicher eine "normale" Frequenz die standardmässig verwendet wird. Auf diese Frequenz ist alles bezogen. Wenn du nun einen doppelten Quarz-Wert verwendest hast du auch die doppelte Frequenz im gesamten AVR. Das haist wenn du mit normaler Frequenz 2400 Baud hast, wirst du nach verdopplung der Quarz-Frequenz 4800 Baud haben. Dann musst du auch deinen PC von 2400 Baud auf 4800 Baud umstellen. Wenn die 2400 Baud auf 1MHz bezogen sind und due jetzt 16MHz verwendest musst du auch am PC von 2400 Baud auf 38400 Baud gehen. Die "Hyroglyphen" kommen von falsch interpretierten Zeichen weil das Zeitraster der beiden Teilnehmer nicht übereinstimmt. Ich kann dir nur den Tip geben einfach einmal alle Baudraten der Reihe nach durchzuprobieren. Irgend eine wird schon passen.

Grüsse Wolfgang

x-ryder
24.12.2004, 10:40
du kanst in bascom allerdings auch die baudrate wieder zurückstellen:

baud=2400

aber du hast dir nen miesen quarz ausgesucht...

damit kann der avr keine baudrate richtig erzeugen...

ich hab nen 7,3728 MHz Quarz und da kannste das ganz gut sehen: bei 2400 baud: 7372800/2400=3072 während dein quarz: 16000000/2400=6666.6666666666666666 u.s.w. dabei sollte aber möglichst ne grade zahl rauskommen wie bei mir

Martin

Spurius
25.12.2004, 09:19
Hallo,
also mit 38400 gehts.
Gruß
Spurius