Hi Eric,

RS-232 is an "inverted" logic, so logical "1" is represented as a
low level, and a logical "0" is a high level.

Reliability is achieved if you use the hardware UART of a PIC.
The TTL input and output of a hardware UART are not inverted so
before you can receive data from a PC or send data to a PC you will
need to invert the signals.

Best regards,

Luciano