Hardware Reference
In-Depth Information
Wire.begin(); // join I2C bus (address optional for master)
}
void loop()
{
// channel 0
Wire.beginTransmission(8);
Wire.write(byte(0xDC));
char val[2];
val_0 = Wire.read(); // receive high byte (overwrites previous reading)
val_1 = Wire.read();
channel_0 = int(val_0)*16 + int(val_1>>4);
analog_0 = channel_0 * 5.0 / 4095.0;
printf("Channel 0: digital value = %d", channel_0);
printf(" analog value = %f\n", analog_0);
// channel 1
Wire.beginTransmission(8);
Wire.write(byte(0x9C));
val_0 = Wire.read(); // receive high byte (overwrites previous reading)
val_1 = Wire.read();
channel_1 = int(val_0)*16 + int(val_1>>4);
analog_1 = channel_1 * 5.0 / 4095.0;
printf("Channel 1: digital value = %d", channel_1);
printf(" analog value = %f\n", analog_1);
// channel 2
Wire.beginTransmission(8);
Wire.write(byte(0xCC));
val_0 = Wire.read(); // receive high byte (overwrites previous reading)
val_1 = Wire.read();
channel_2 = int(val_0)*16 + int(val_1>>4);
analog_2 = channel_2 * 5.0 / 4095.0;
printf("Channel 2: digital value = %d", channel_2);
Search WWH ::




Custom Search