Hi All.
I'm really tearing my hair out here. My code is supposed to request the ID register, which should read 0xCB, but my temperature sensor will only return 4bits at a time. Usually 0b1100 but sometimes 0b1001.
Here is my code:
#include <Wire.h>
int thermometer_address = 73; //ADT7420 address
//define registers
byte id_register = 11;
byte value;
void setup()
{
//Initiate serial pc link
Serial.begin(9600);
//Initiate I2C with Arduino as master
Wire.begin();
delay(100);
Wire.beginTransmission(thermometer_address); //start transmission
Wire.write(id_register); //Ask for register
Wire.endTransmission(); //Complete Transmission
Wire.requestFrom(73, 1); //Request Byte(s)
while(Wire.available() == 0); //wait for response
byte value = Wire.read();
Serial.print("ID Byte = ");
Serial.print(value, BIN);
}
void loop()
{
}
and here's the data sheet
http://www.analog.com/static/imported-files/data_sheets/ADT7420.pdf
Thanks for your help!
Bob
