mikrocontroller.net

Forum: Compiler & IDEs USART simulation AVRStudio


Autor: Stefan Sczekalla (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich hab mir - dank der freundlichen Unterstützung des AVR-Tutorials
und des WIKI ein "Hello World" via Usart zum Testen geschrieben.

C-Compiler läuft durch ...

Soweit so gut, nur wenn ich das versuche im AVR-Studio zu simulieren,
dann gehen unregelmäßig ein paar Zeichen raus, danach setzt der
Simulator nicht mehr das UDRE Flag und mein Progrämmchen wartet auf
ewig auf das Freiwerden des UDR registers.

hat das schon mal jemand beobachtet oder eine Idee zu ?

Grüße,

Stefan

Autor: Sven Bohner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
soweit sich da nix geändert hat
wird im simulator des avrstudio keine serielle kommunikation
unterstützt... d.h.:usart uart twi spi...etc kann nicht simuliert
werden...

steht au in der hilfe!

Autor: Stefan Sczekalla (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Sven,

danke - habs befürchte - wobei merkwuerdigerweise es für zwei Zeichen
zu gehen schien - UDR gefüllt ... UDRE wird 1 - UDR nochmal gefüllt,
UDRE wird wieder 1 - und danach nix mehr ... als wie wenn der FiFo nie
geleert wuerde - die daten hätten ja wegen mir in /dev/NULL landen
könne n ...

Hast Du vieleicht Erfahrungen mit den Berechne-die-Werte-für-UBRR
Macros aus dem AVR Tutorial ? obwohl ich meiner Meinung nach die
#defines richtig vorbestzt hatte kam "Schrott" raus.

Probiert hatte ich es nach dem Beispiel aus dem AVRTutorial:

 #define F_OSC 16000000           /* Oszillator-Frequenz in Hz */
 #define UART_BAUD_RATE 19200
 #define UART_BAUD_CALC(UART_BAUD_RATE,F_OSC)
((F_OSC)/((UART_BAUD_RATE)*16)-1)

  UBRRH=(uint8_t)(UART_BAUD_CALC(UART_BAUD_RATE,F_OSC)>>8);
  UBRRL=(uint8_t)UART_BAUD_CALC(UART_BAUD_RATE,F_OSC);

Nachdem ich die Baudrate von Hand errechnet und UBRRH und UBRRL
entsprechend gesetzt hatte lief es auf anhieb.

Grüße,

Stefan

Autor: Sven Bohner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich rechne sie immer von hand.

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.