www.mikrocontroller.net

Forum: Compiler & IDEs Fragen zu uart_putc, etc.


Autor: Markus van Rohe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wollte brav die Beispiele eures Tutorials durchgehen und bin gerade bei
uart_putc angelangt. Mein Terminal Fenster zeigt mir nur wirre Zeichen
anstelle der sich unendlich oft wiederholenden Folge "0123456789".
Was mache ich falsch? (Mein Terminal steht auf automatische Erkennung
und findet dabei ANSI soweit ich das sehe.)

<c>
int main(void)
{
  UCR |= (1<<TXEN);
  UBRR=quarz/16/baud-1;            //Initialisieren des seriellen Ports


  while(1)
  {
    int uart_putc(unsigned char c)
      {
        while(!(USR & (1 << UDRE))); /* warte, bis UDR bereit */
        UDR = c;                     /* sende Zeichen */
        return 0;
      }
    char c;
     for (uint8_t i=0; i<=9; ++i)
    {
      c = i + '0';
      uart_putc( c );
    }
  }
}
</c>

Freue mich über eine rasche Antwort.

Ciao

M.V.R

Autor: Robert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Überprüfe bitte die Baudrate im Terminal und schau ob sie mit der
eingestellten Baudrate am µC übereinstimmt.

Gruß Robert

Autor: Markus van Rohe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke dir erstmal! Aber Baudrate stimmt. Datenbit, Stopbits, etc.
stimmen auch. Woran könnte es noch liegen?

M.V.R

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bist du sicher, dass der µC vom Quarz angetrieben wird
und nicht vom internen Oszillator?

Autor: Markus van Rohe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das ist wirklich so. Das UCR ist doch standardmäßig, auf 8 N 1
eingestellt, wenn ich nichts  ändere (außer TXEN auf 1), oder?

Autor: johnny.m (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Öhh, ich glaube, worauf Karl Heinz hinauswollte, ist die Frage, ob die
Fusebits korrekt gesetzt sind...

Autor: Markus van Rohe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat sich geklärt, hatte die falsche Frequenz eingestellt 4MHz anstatt
8.

Sorry! Beim nächsten prüfe ich noch sorgfältiger bevor ich euch wieder
nerve. Vielen Dank trotzdem für eure Mühen. Super Forum!

Ciao


M.V.R

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.