USART gibt komische Zeichen aus

Gast #1131055
Hallo,

ich bin noch ziehmlicher uC Anfänger und versuche mich gerade am Nachbau 
des SD Interface nach Ulrich Radig.

Ich hatte es schon so weit, dass ich die gewünschten Meldungen über das 
USART ausgegeben hatte. Dann habe ich einiges hin und her probiert. 
Jetzt bekomme ich nur noch eine Menge Sonderzeichen über das USART.

Offensichtlich habe ich irgendwo etwas bzgl. Taktfrequenz / Baudrate 
verstellt.

Aber ich finde es nicht! Folgendes ist der Stand der Dinge:

In der "usart.h" steht:

#ifndef F_CPU
  #define F_CPU 1000000UL

In AVR Studio habe ich im Programmierfenster im Reiter "Fuses" 
ausgewählt:
Int. RC Osc. 1 MHz; Start-up time: 6 CK + 64 ms, default value

Im Reiter "Advanced" steht die Frequenz auf 1MHz

In der Main.c initialisiere ich das USART mit:
usart_init(9600);

Mein Terminal steht auch auf 9600 ber zeigt nur Mist an.

Habe ich da noch irgendwo etwas übersehen?

Gruß
Ralf
Gast #1131062
Unabhängig von möglichen anderen Fehlern, zum ungefähr zweihundertsten 
mal in diesem Forum:

>Int. RC Osc. 1 MHz;

Das funktioniert nicht zuverlässig! Der interne RC-Oszillator ist zu 
ungenau. Wenn du den UART verwenden willst, kannst du das nur mit Quarz 
machen. Ändere das mal, erst dann kannst du weitere Fehler suchen.
#1131093
> #ifndef F_CPU
>  #define F_CPU 1000000UL


möglicherwese ist die Frequenz ja schon woanders mit 4 000 000 definiert 
? dann überliest dre comppiler diese definition einfach



und der RC ist schon genau genug. Allerdings bei ungefär Raumtemperatur 
und mit halbwegs exacten Grundbaudraten. Schaden kann ein Quarz 
natürlich nie...
Gast #1131150
Bei 1 Mhz und 9600 Baud beträgt der Baudratenfehler schon 7%.
Bei 4 Mhz und 9600 Baud sind es nur noch 0,2%.

Das wird das hüpfende Komma, äh der springende Punkt sein. ;-)

MfG Paul

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.