www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Zeichendarstellung im Monitor


Autor: Norbert Pohl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab da mal ein seltsames Problem.
Wenn ich meinen Atmel Mega8 über rs232 an meinen Rechner mit WinXP
anschließe erhalte ich nur wirre Zeichen auf dem Monitor.
Die Baudrate und die weiteren Parameter stimmen mit den compilierten
Einstellungen überein.
Muß ich da noch irgendwo irgenwas einstellen?

Sicher kann mir hieer jemand einen Tipp geben.

Autor: leo9 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mit 80%-iger Wahrscheinlichkeit läuft der Mega mit internem Oszillator.
Kontrollier mal die Fusebits. Als ersten Test könntest du auch den
Quarz auslöten, wenn immer noch Zeichen kommen liegt obiger Fehler vor.
Eine andere Möglichkeit wäre die Baudrate auf 1MHz (intern) umzurechnen
und die Einstellungen vom Terminal verändern.

grüsse leo9

Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dann sind nochmal ca 8% wahrschenlichkeit zu lange/ schlechte kabel
neben irgendwelchen 1a störquellen

Autor: Josef (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieht deine Initialisierung so aus ?

// UART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// UART Receiver: On
// UART Transmitter: On
// UART Baud rate: 9600
UCR=0x98;
UBRR=0x19;
ACSR=0x80;


UDR = 'S';  //'S'  zum Terminalprogramm

SG Josef

Autor: Frankl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sind es zufällige Zeichen oder immer die selben falschen ?

Autor: Norbert Pohl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Richtig, der Mega läuft mit internem Takt.
Der Takt ist auf 1 MHz eingestellt.
Ich habe im Source ( BascomAVR ) die Taktrate richtig angegeben
Das sieht dann so aus
$crystal = 1000000
$baud = 9600

sollte angeblich so funktionieren

es sind scheinbar immer die gleichen Zeichen.

Autor: Alexander Höller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
immer die gleichen Zeichen, obwohl er eigentlich immer andere ZEichen
senden sollte?

Lad dir mal ein Terminalprogramm runter, wo du auch die empfangenen
Werte siehst, nicht nur das ASCII Zeichen dazu (z.B.
http://bray.velenje.cx/avr/terminal/ ). Und sag dann mal, welche Werte
emmpfangen werden ... und was der µC eigentlich senden sollte.

mfG
aleX

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ich habe im Source ( BascomAVR ) die Taktrate richtig angegeben
> Das sieht dann so aus
> $crystal = 1000000
> $baud = 9600

> sollte angeblich so funktionieren

Du kannst in deinen Sourcen so viel einstellen wie du willst. Wenn die
Fuses falsch gesetzt sind, gehts nicht.

Autor: Frankl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hoffe du hast an die Wandelung Dezimal+48 nach ASCII gedacht.

Autor: Norbert pohl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also wie das mit dem Monitorprogramm aussieht kommen bei Hex-Darstellung
haufenweise Nullen und ab und zu mal ein Zeichen.

Ich tippe die Baudrate stimmt nicht und Thorsten hat mal wieder recht,
die hab ich natürlich noch nicht angepasst.

Autor: Josef (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Uart hat einen eigenen Timer.

SG Josef

Autor: Norbert Pohl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ihr seid einfach Spitze !!!
Danke für die Tipps.
Ich habe das Problem gelöst.
Habe mir das Kapitel mit den Fusebits in der Mega8 Doku nochmal richtig
durchgelesen. ( sollte man eigentlich gleich machen )
Habe CK von no delay auf 4ms delay umgestellt und schon klappts.

mit 9600 Baud sauber und fehlerfrei in beide Richtungen.

Jetzt brauch ich wenigstens nicht mehr mit LCD zu arbeiten und kann
mein nächstes Projekt mit CAN-Bus in Angriff nehmen.

Da werde ich bestimmt wieder einige Probleme haben

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.