Hola:
Yo también estoy trabajando con ese sensor, y no logro que me mida algo...
Estoy programando en C18... sé que la mayoría de los mensajes que hablan sobre el DS1621 estan publicados utilizan el CCS o ensamblador...
El caso es que si alguien programa en C18 y conoce el sensor, espero pueda corregirme:
// temperatura del DS1621 COMANDO READ TEMPERATURE
StartI2C();
WriteI2C(0X90); // indica al DS1621 que va a recibir un comando
IdleI2C(); // espera a que el DS1621 confirme que recibió la orden
WriteI2C(0XAA); // comando: leer temperatura
IdleI2C(); // espera a que el DS1621 confirme que recibió la orden
RestartI2C(); // genera una condición de REINICIO
WriteI2C(0X91); // indica al dispositivo (000) que se trata de una operación de lectura (1)
IdleI2C(); // espera a que el DS1621 confirme que recibió la orden
while(!DataRdyI2C());
tempent = ReadI2C(); // Guarda el valor MSB de la temperatura
AckI2C(); // El PIC indica al DS1621 que ya recibió en primer byte
while(!DataRdyI2C());
tempdec = ReadI2C(); // Guarda el valor LSB de la temperatura
NotAckI2C(); // El PIC indica al DS1621 que no envíe mas bytes
StopI2C();
gracias a todos...