Gracias por el dato!
Al final use una estructura, buscando en el foro encontré que maunix hace un tiempo comento este método, paso a describir:
Declaración de la estructura:
typedef union integer16 {
struct {
unsigned unsigned char byteLow;
unsigned unsigned char byteHigh;
};
unsigned unsigned int value;
};
Luego declaro las variables que quiero utilizar con esa estructura:
union integer16 var0;
union integer16 var1;
Y por ultimo un ejemplo de como utilizarlo:
var1.value = 65535 - (promedio/20); // accedo al int de 16 bit
TMR0H=var1.byteHigh; // Copio la parte Alta el int16
TMR0L=var1.byteLow; // Copio la parte Baja el int16
// para guardarlo en la eeprom de manera similar:
Write_b_eep(10,var1.byteHigh);
Write_b_eep(11,var1.byteLow);
Es muy interesante y cómodo esto de las estructuras, ocupa muy poco código, ya que lo que hace la estructura es darle dos nombre a los byte de la ram, o sea supongamos que lo declaramos en la posición 0, la 0 se llama var1.byteHigh, la 1 var1.byteLoy y las dos juntas formando el int se llaman var1.value.
Saludos