Hallo,

Dein Programm ist richtig. Genau so läuft es bei mir auch.
Wenn Du immer 255, 65535 oder 0 als Antwort bekommst, so liegt dies ziemlich sicher an deiner Verlötung oder einer falschen I2C-Adresse.

Also prüfe nochmals folgende Punkte:

1) Hast Du irgenwelche Pins vertauscht SCL mit SDA
2) Hast Du 5V und GND auf dem Chip /I2C_Bus.
Falls du RN-Control hast, ist der 5V Jumper und der I2C Jumper gesteckt?
3) Ja HEX90 heisst alle A0-A2 auf GND

Übrigens: 0,255,65535 (je nach I2C-Chip) heisst eigentlich immer, daß das Programm den Baustein nicht gefunden hat.

Mehr Ferndiagnose geht leider nicht.
Gruß

Zur Sicherheit nochmals das Datenblatt
http://pdfserv.maxim-ic.com/en/ds/DS1621.pdf