Hi,

Do a search for Pic Multicalc, it's very useful for setting up the defines etc. Entering an osc of 4Mhz and 3400 or 57600 it gives these values

Code:
DEFINE HSER_RCSTA 90h ' Enable serial port & continuous receive
DEFINE HSER_TXSTA 24h ' Enable transmit, BRGH = 1
DEFINE HSER_SPBRG 6   ' 38400 Baud @ 4MHz, -6.99%
DEFINE HSER_CLROERR 1 ' Clear overflow automatically


DEFINE HSER_RCSTA 90h ' Enable serial port & continuous receive
DEFINE HSER_TXSTA 20h ' Enable transmit, BRGH = 0
DEFINE HSER_SPBRG 0   ' 57600 Baud @ 4MHz, 8.51%
DEFINE HSER_CLROERR 1 ' Clear overflow automatically
You could try these values, however for running at a fast baud rate I would recommend using a 20Mhz crystal on the 16F877A with the following defines

Code:
@   __config _HS_OSC 

DEFINE  OSC 20

DEFINE HSER_BAUD    115200        ' Hser baud rate 
DEFINE HSER_RCSTA   90h           ' Hser receive status init 
DEFINE HSER_TXSTA   24h           ' Hser transmit status init 
DEFINE HSER_SPBRG 10                ' 115200 Baud @ 20MHz, -1.36%
DEFINE HSER_CLROERR 1             ' Hser clear overflow automatically