Por lo que llego a entender de los datasheet, la diferencia está en que los PIC que poseen MSSP implementan todo el HardWare necesario para trabajar tanto en Master como en Slave, mientras que los PIC con SSP implementan el HardWare para trabajar como slave. En el caso de los PIC con SSP es menester del programador hacer las rutinas necesarias para la generación de los pulsos de clock y data. Mientras que en los PIC con MSSP simplemente hay que configurar ciertos registros y está casi todo listo.
segun el datasheet de pic16f88 se puede configurar como maestro configurando los pines del registro SSPCON:
SSPM<3:0>: Synchronous Serial Port Mode Select bits
0000 = SPI Master mode, clock = OSC/4
0001 = SPI Master mode, clock = OSC/16
0010 = SPI Master mode, clock = OSC/64
0011 = SPI Master mode, clock = TMR2 output/2
0100 = SPI Slave mode, clock = SCK pin. SS pin control enabled.
0101 = SPI Slave mode, clock = SCK pin. SS pin control disabled. SS can be used as I/O pin.
0110 = I2C Slave mode, 7-bit address
0111 = I2C Slave mode, 10-bit address
1011 = I2C Firmware Controlled Master mode (Slave Idle)1110 = I2C Slave mode, 7-bit address with Start and Stop bit interrupts enabled
1111 = I2C Slave mode, 10-bit address with Start and Stop bit interrupts enabled
1000, 1001, 1010, 1100, 1101 = Reserved
aun no me queda claro lo que dijiste sobre que el programador debe hacer las rutinas necesarias para la generación de los pulsos de clock y data, seguire estudiando, gracias por tu respuesta.