While not utilizing MikroC, there are several issues which should be mentioned.
What are the current configuration register settings? Has the watchdog timer been disabled?
What is the actual System Clock Frequency (Fosc)? Has the PLL been enabled? Has the Fosc been entered into the proper MikroC setting? I suspect the UART routines rely on the correct Fosc being known.
Also, you should always prevent code execution from exiting main() with the use of a Superloop:
Code:
while(1)
{
}
positioned after the last statement within main().
You try to send 7 bytes: "start" & [0x0A] & [0x0D].
Hmm. Intersting.
Are you sure both receiver and transmitter are configured for
* 9600 baud
* 8-N-1
* no handshake
* same voltage levels (logic/RS232)
* ASCII
* same polarity (idle = high)?