Hi ppl!
I´m not getting how to get the tmp value of some (in 1 of 4) dallas temperature to put in on IF STATE,
in Multiple. exemple we got the following, (changed to add more 2...)
scketch:
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 2
#define TEMPERATURE_PRECISION 9
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
DeviceAddress insideThermometer, insideThermometer2, outsideThermometer, outsideThermometer2;
void setup(void)
{
Serial.begin(9600);
Serial.println("Dallas Temperature IC Control Library Demo");
pinMode(13, OUTPUT);
sensors.begin();
Serial.print("Locating devices...");
Serial.print("Found ");
Serial.print(sensors.getDeviceCount(), DEC);
Serial.println(" devices.");
Serial.print("Parasite power is: ");
if (sensors.isParasitePowerMode()) Serial.println("ON");
else Serial.println("OFF");
if (!sensors.getAddress(insideThermometer, 0)) Serial.println("Unable to find address for Device 0");
if (!sensors.getAddress(insideThermometer2, 1)) Serial.println("Unable to find address for Device 0");
if (!sensors.getAddress(outsideThermometer, 2)) Serial.println("Unable to find address for Device 1");
if (!sensors.getAddress(outsideThermometer2, 3)) Serial.println("Unable to find address for Device 2");
Serial.print("Device 0 Address: ");
printAddress(insideThermometer);
Serial.println();
Serial.print("Device 1 Address: ");
printAddress(insideThermometer2);
Serial.println();
Serial.print("Device 2 Address: ");
printAddress(outsideThermometer);
Serial.println();
Serial.print("Device 3 Address: ");
printAddress(outsideThermometer2);
Serial.println();
sensors.setResolution(insideThermometer, TEMPERATURE_PRECISION);
sensors.setResolution(insideThermometer2, TEMPERATURE_PRECISION);
sensors.setResolution(outsideThermometer, TEMPERATURE_PRECISION);
sensors.setResolution(outsideThermometer2, TEMPERATURE_PRECISION);
Serial.print("Device 0 Resolution: ");
Serial.print(sensors.getResolution(insideThermometer), DEC);
Serial.println();
Serial.print("Device 0 Resolution: ");
Serial.print(sensors.getResolution(insideThermometer2), DEC);
Serial.println();
Serial.print("Device 1 Resolution: ");
Serial.print(sensors.getResolution(outsideThermometer), DEC);
Serial.println();
Serial.print("Device 2 Resolution: ");
Serial.print(sensors.getResolution(outsideThermometer), DEC);
Serial.println();
}
void printAddress(DeviceAddress deviceAddress)
{
for (uint8_t i = 0; i < 8; i++)
{
if (deviceAddress[i] < 16) Serial.print("0");
Serial.print(deviceAddress[i], HEX);
}
}
void printTemperature(DeviceAddress deviceAddress)
{
float tempC = sensors.getTempC(deviceAddress);
Serial.print("Temp C: ");
Serial.print(tempC);
Serial.print(" Temp F: ");
Serial.print(DallasTemperature::toFahrenheit(tempC));
}
void printResolution(DeviceAddress deviceAddress)
{
Serial.print("Resolution: ");
Serial.print(sensors.getResolution(deviceAddress));
Serial.println();
}
void printData(DeviceAddress deviceAddress)
{
Serial.print("Device Address: ");
printAddress(deviceAddress);
Serial.print(" ");
printTemperature(deviceAddress);
Serial.println();
}
void loop(void)
{
Serial.print("Requesting temperatures...");
sensors.requestTemperatures();
Serial.println("DONE");
printData(insideThermometer);
printData(insideThermometer2);
printData(outsideThermometer);
printData(outsideThermometer2);
if(insideThermometer == 25){ // error here
digitalWrite(13, HIGH);
}
else {
digitalWrite(13,LOW);
}
delay(1000);
}
(just in button)
if(insideThermometer == 25){ // error here
digitalWrite(13, HIGH);
}
else {
digitalWrite(13,LOW);
}
how can the value be be catch? :?
Tks in advance any help...