Without knowing what you are really trying to accomplish -

I use SERIN, SEROUT (and SERIN2, SEROUT2) extensively to accomplish PIC-PIC communcation.

Some things to consider:


Both PICs should be crystal controlled. The internal 4Mhz oscillators usually aren't accurate enough for reliable communication. There are many ways around this, but if you are a beginner, take the easy approach - use a crystal, oscillator or resonator to insure they are both running at a known frequency.

I assume that you aren't using a level converter (such as a MAX232) anywhere in the system.

Use a pull-up or a pull-down resistor on the data line between the two parts.
Use a pull down if you are sending data inverted (recommended), or a pull-up if you are sending data "true". This will help insure that all bytes - including the first one, are received properly. A 10K resistor will work fine.

Start out at 2400 baud. If you need faster communication, you can later run at up to 38K baud if both your PICs are running at 20Mhz.

As a debug aid, you can connect the PICs output directly to a PC if you are running in INVERTED mode. This can be a great help in figuring out what is really going on.