Wie ich sehe verwendest du 4 MHz Tackt. Kommen die vom internen Oszillator ? Wenn ja, solltest du mal einen externen Quarz probieren.
Weiterhin solltest du schauen ob du 1 oder 2 Stopbits hast, und wie viele Datenbits eingestellt sind.

Was noch ein Problem sein könnte, ist die konvertierung von char nach unsigned char bzw. umgekehrt.