mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik USART bei ATMega8 geht nicht


Autor: Philipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute,

habe ein Problem, bei dem ich einfach nicht weiter weiß und ich hoffe 
sehr, dass jemand von euch eine Idee hat. Ich habe bisher einen 
ATTiny2313 benutzt. Jetzt bin ich auf den ATMega8 umgestiegen aber bei 
dem funktioniert der USART nicht. Ich finde einfach den Fehler nicht, 
weil andere Funktionen gehen, aber beim Senden und Empfangen per USART 
merke ich zwar, dass er sendet, aber es kommt nichts oder zumindest 
nichts verwertbares an. Es ist das gleiche Programm, dass auf dem Tiny 
funktioniert hat. Vielleicht liegt es an den Fuse-Bits, ich habe 
BOOTSZ1, BOOTSZ0, SUT0, CKSEL3, CKSEL2, CKSEL1 programmiert, bei einem 
9,216MHz Quartz. Ich weiß, die Frage ist sehr speziell, aber ich hoffe 
wirklich sehr, dass mir jemand helfen kann, weil ich nämlich schon viel 
Zeit in die Fehlersuche investiert habe.

Danke,
Philipp

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Poste den Code!
... oder guck dir das Beispiel im Datenblatt an.
Hellseher findest du vermutlich unter www.Astroluegie.de

Autor: Philipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na also um mir zu sagen ob die Fuse-Bits richtig gesetzt sind braucht 
man wahrlich kein Hellseher zu sein, sondern nur ein bischen mehr 
Erfahrung und uC Verständnis zu haben als ich. Und das Datenblatt hab 
ich natürlich schon mehrfach zu Rate gezogen. Ich poste hier weil ich 
hoffe, dass es vielleicht jemanden gibt, der ein ähnliches Problem 
hatte, oder dass mich jemand auf einen offensichtlichen Fehler hinweist, 
den man beim ATMega beachten muss. Den Code brauch ich nicht zu posten, 
weil ich ja weiß, dass er beim Tiny funktioniert.

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>BOOTSZ1, BOOTSZ0
Wozu begrenzt du deinen Programmspeicher? Willst du einen Bootloader 
laufen lassen?

>SUT0, CKSEL3, CKSEL2, CKSEL1

Ja...

CKOPT sollte man ab 8MHz vermutlich auch setzen.

Die Seite 25 im Datenblatt dürfte dich interessieren.

Autor: Philipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Shit, ich hab die Fuse-Bits abgedruckt, die im Auslieferzustand gesetzt 
waren, ich muss nochmal nachschauen, welche ich jetzt wirklich gesetzt 
habe.

Autor: Philipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, also meiner Meinung nach ist das einzige Fuse-Bit das programmiert 
sein muss das CKOPT. Kann mir jemand sagen ob das richtig ist?

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein! Guck auf Seite 25 mal in die Tabelle!

Autor: Philipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auf Seite 25 ist bei mir keine Tabelle, aber auch die Tabellen auf den 
Seiten danach hab ich schon mindestens 20 mal angeschaut und falls ich 
sie falsch interpretiere, dann hilft es mir auch nichts, wenn ich sie 
nochmal anschau. Also entweder sagt mir jemand wie ich es richtig machen 
muss oder es muss halt falsch bleiben.

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast einen ATMega8 und den "Complete Datasheet"?
http://www.atmel.com/dyn/resources/prod_documents/...

Autor: Michael U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich setze meist SUT0 auf 0 (bei Ponyprog also mit Haken), mehr Zeit zum 
stabilisieren des Taktes.
CKOPT mußte ich bisher selbst mit 16MHz auf dem Steckbrett noch nie 
setzen.

Ansonsten sind CKSEL0...3 auf 1 gesetzt, bei Ponyprog also ohne Haken.

Gruß aus Berlin
Michael

Autor: Philipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es hilft alles nichts, so ein Mist, es geht nicht!

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.