UART Communication Issues
RS-232 and microcontroller logic level UART signals are not the same thing.  Generally the logic level signals are inverted for one thing.  The logic level line idle level is typically high.  The voltage levels are also considerably different.  The logic level signals are of course at normal logic levels, which are usually 0-3.3V or 0-5V.  RS-232 is below -5 V for line idle (space) and above +5 V for active (mark).

This is a common problem, so there are chips that do this conversion for you.  Look up "MAX232" and you will find lots of variants by different manufacturers for logic to RS-232 conversion chips.