www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Fragen zu UART


Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

mal ne grundsätzliche Frage: Ich hab ungefähr folgendes Programm...

LED1 an
Schicke Zeichen "A" über UART
LED2 an
...

Bei mir geht nur die LED1 an. Also hängt sich der µC beim Schicken
irgendwie auf. Woran kann das liegen? Selbst wenn die Baud-Rate falsch
wäre müßte doch das gehen, oder? Ich versuche immer noch das Siemens
C35 seriell anzusteuern und ich komm und komm nicht weiter !
Tipps ?

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stackpointer falsch initialisiert? Wenn du das Programm nicht zeigst
kann man nur raten.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bitte als Anhang! Der Hinweis steht ja nicht umsonst da.

Autor: Christian (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
okay, hier als anhang sorry

Autor: Sebastian Wille (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi, die UART-Initialisierung ist falsch. Du hast ein UART kein USART
(wie beim Mega8).

Hier richtig:

sbi UCSRB,TXEN                 ;TX aktivieren
ldi temp1,8000000/(19200*16)-1 ;Baudrate einstellen
out UBRR,temp1

Sebastian

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na gut, das hab ich geändert, aber es geht trotzdem noch nicht ganz.
Mittlerweile hab ich herausgefunden das es eigentlich nur beim Senden
des Carriage return und des new line-zeichens Probleme gibt. Warum denn
das schon wieder?

ldi temp, 0x0A
rjmp serout
ldi temp, 0x0D
rjmp serout

Hier hängt er sich auf! Er schickt kein 0x0A !?

Autor: Tobias Bremer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

mach mal aus
rjmp serout
ein rcall serout

Gruß Tobias

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch du hast recht! Jetzt bleibt es nicht mehr da hängen und schickt
auch ein 0x0A raus. Aber das Hand wählt trotzdem noch nix. Aber es
sieht schon besser aus. DANKE für alle Tipps bis jetzt !

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.