... [/CODE] ... UBRR1L=51 ... [/CODE]
Irre ich mich oder gibt das irgendetwas über 39 kBd ? statt der von Dir angestrebten 19200 ?

Ich rechne üblicherweise so :
Code:
    UBRR0H  =  (unsigned char)(ubrr>>8); 
    UBRR0L  =  (unsigned char)ubrr; // Enable receiver and transmitter
Nur gaaanz nebenbei ... die Orgie mit den vielen 0-Zuweisungen
Code:
(0<<RXCIE0)|// Dont enable RX complete interrupt ...
ist überflüssig/sehr ungewöhnlich. WENN Du die Bits löschen willst (weil sie "irgendjemand-irgendwo" gesetzt hat - nach nem Reset sind die sowieso "0"), dann eher in
der Art: "TCCR2A &= ~(1<<WGM21);"

Viel Erfolg