Hardware Reference
In-Depth Information
byte adc_value;
byte
getADC
(byte config)
{
Wire.beginTransmission(PCF8591);
Wire.write(config);
Wire.endTransmission();
Wire.requestFrom((
int
) PCF8591,
2
);
while
(Wire.available())
{
adc_value = Wire.read();
//This needs two reads
to get the value.
adc_value = Wire.read();
}
return
adc_value;
}
void
setup
()
{
Serial.begin(
9600
);
Wire.begin();
Serial.println("ADC Test");
}
void
loop
()
{
adc_value = getADC(PCF8591_ADC_CH0);
Serial.println("thermistor: ");
Serial.println(adc_value);
delay(
500
);
adc_value = getADC(PCF8591_ADC_CH1);
Serial.println("photo-voltaic cell: ");
Serial.println(adc_value);
delay(
500
);
adc_value = getADC(PCF8591_ADC_CH3);
Serial.println("potentiometer: ");
Serial.println(adc_value);
