I am suffering a similar problem here with a PIC18F2525. I know the MAX232 interface is fine, as it works perfect for bootloading. And I can get HSEROUT to work fine, but when I try to use SEROUT I get wierd characters on hyperterminal.
I am runnig at 8MHz with a ceramic resonator (yes I use DEFINE OSC 8) and using 9600 baud.
I'm wondering if it's a timing issue with software vs hardware generated serial data. I still need to try generating from other pins. Possible that the USART is still doing something to the TX pin due to the bootloader having configured it. Still troubleshooting ....


. I haven't exhausted all of my methodical troubleshooting options yet. And I have a bit more reading up on the USART. It's possible I can just use the USART once I learn how to quickly switch between USART and using the pin as a digital I/O.

Bookmarks