Jetzt bin ich fündig geworden Deine Codewortlänge stimmt nicht. Du sendest 6 Bit anstatt 8 Bit! (Datenblatt Atmega Seite 157 Table 58 )
Code:
UCSRC = (1<<URSEL)|(1<<UCSZ0)|(1<<UCSZ0);
Auf den ersten Blick fällt einem da ja nichts auf.
aber es muss heißen
Code:
UCSRC = (1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);
Du hast einfach das UCSZ0-Bit doppelt eingegeben.

Grüße,
Bernhard