Buenas noches, lo que pasa es que tengo que usar un sensor digital (DS1621) para pasar el dato de la temperatura a una PIC16F887 en C, y no sé cómo funcione para mandar los datos: si tengo que usar alguna dirección de EEPROM y cómo acceder a ella desde el código (y también si tengo que almacenar la temperatura del sensor en la EEPROM del mismo ni cómo hacerlo). Ando medio perdido y me gustaría que me ayudaran un poco sobre cómo "recibir" el dato del sensor hacia la PIC. La parte de código que llevo es esta (pero creo que esto es sólo para configurar i2c y no escribe nada, en el main no tengo nada aún:
#include "16f887.h"
#device adc=10
#fuses XT,NOWDT
#use delay(clock=4000000)
#use i2c(MASTER,SDA=PIN_C4,SCL=PIN_C3)
#include <math.h> //Necesaria para los cálculos matemáticos
#include <lcd.c>
#define I2C_DS1631 0x92 /* Direccion base para Ds1631 1001 y resto a cero E2 E1 E0 = 0 0 0 */
void write_ext_eeprom(long int address,BYTE data)
{
short int status;
i2c_start();
i2c_write(0xa0);
i2c_write(address>>

;
i2c_write(address);
i2c_write(data);
i2c_stop();
i2c_start();
status=i2c_write(0x0a);
while(status==1)
{
i2c_start();
status=i2c_write(0x0a);
}
}
BYTE read_ext_eeprom(long int address)
{
BYTE data;
i2c_start();
i2c_write(0xa0);
i2c_write(address>>

;
i2c_start();
i2c_write(0xa1);
data=i2c_read(0);
i2c_stop();
return(data);
}
En otro proyecto usé un sensor a analógico de temperatura, y para leerla fue muy sencillo, simplemente utilicé: value = Read_ADC(); Para este sensor digital (utilizando i2c), cuál sería el "equivalente"? Saludos y gracias...
