Recibir 3 bytes por I2C en un pic

Hola:
Tengo un pic como esclavo que lee un valor analogico y lo envia al master cuando este se lo pide por i2c. Ahora lo que quiero es enviar 3bytes, de 3 variables analogicas, pero no se como hacerlo. Este es el código que utilizaba hasta ahora par un byte:
MAESTRO para solicitar dato
Código:
                    i2c_start();
			i2c_write(0x0A+1);
			tempoB1=i2c_read(0);
			i2c_stop();


ESCLAVO para enviar dato cuando el maestro lo solicita
Código:
#INT_SSP
void ssp_interrupt()
{	
	state=i2c_isr_state();
	if(state==0x80){
	i2c_write(buffer[0x00]);
}


No se como modificarlo para solicitar/enviar 3 bytes.
Gracias y un saludo
 
Atrás
Arriba