Atmega8 uart geht nicht wie bei anderen avrs

Gast #1587685
Lesenswert?
• ▲
▼
Hallo,

ich habe schon bei meheren avrs die uart programmiert.
Hat bis jetzt immer geklappt. Zb atmega16 at90can atmega1280.
Jetzt habe ich ein atmega8
Meine init ist so

void uart0_init(void)
{
 UCSRB = 0x00; //disable while setting baud rate
 UCSRA = 0x00;
 UCSRC = URSEL | 0x06;
 UBRRH = 0x00; //set baud rate hi
 UBRRL = 0x33; //set baud rate lo
 UCSRB = 0x98;
}

void uart0_putc(char c)
   {

   while(!(UCSRA & (1<<UDR)));// Wait until Rs232 is ready
   UDR=c;
   }

Aber mein transmitter ist niemlas ready. Mein programm hängt immer in 
der while schleife was ist da los. Hat bis jetzt bei jedem atmega 
geklappt
Gast #1587739
Lesenswert?
• ▲
▼
micro1 schrieb:
> while(!(UCSRA & (1<<UDR)));// Wait until Rs232 is ready
                      ^
[..]
> Gibt es beim atmega8 etwas besonderes zu beachten bei der usart?

Ja - das Datenblatt ;-) Wie spess53 schon schrub: da gehört 'UDRE' hin 
(siehe auch das Datenblatt vom Mega8 im Kapitel "19.6.1 Sending Frames 
with 5 to 8 Data Bits") - UDR (also das Datenregister) hat da nix 
verloren.

HTH und HF
Gast #1587862
Lesenswert?
• ▲
▼
OK das mit dem UDR habe ich falsch kopiert. Richtig das durfte nie
funktionieren. Ich habe es berichtigt und nun geht es.
URSEL ist auch falsch hatte aber so keinen einfluss.

Leider war mein USB2SERIELL Wandler dahin.
Deswegen hatte ich so Probleme

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.