#include <OneWire.h>
#include <DallasTemperature.h>
const int oneWireBus = 2;
OneWire oneWire(oneWireBus);
DallasTemperature sensors(&oneWire);
DeviceAddress tempDeviceAddress;
int numSensor=0;
void printAddress(DeviceAddress deviceAddress)
{
for (uint8_t i = 0; i < 8; i++)
{
Serial.print("0x");
if (deviceAddress[i] < 0x10) Serial.print("0");
Serial.print(deviceAddress[i], HEX);
if (i < 7) Serial.print(", ");
}
Serial.println();
}
void setup() {
Serial.begin(115200);
sensors.begin();
numSensor= sensors.getDeviceCount();
Serial.print("Anzahl Sensoren: ");
Serial.println(numSensor);
sensors.setResolution(tempDeviceAddress, 12);
for (int i = 0; i < numSensor; i++)
{
Serial.print(i+1);
Serial.print(". Sensor Address: ");
sensors.getAddress(tempDeviceAddress, i);
printAddress(tempDeviceAddress);
}
}
void loop() {
sensors.requestTemperatures();
for (int i=0; i<numSensor ; i++){
Serial.print("Sensors ");
Serial.print(i+1);
Serial.print(" : ");
Serial.print(sensors.getTempCByIndex(i));
Serial.print("°");
Serial.print(" : ");
sensors.getAddress(tempDeviceAddress, i);
Serial.print("0x");
Serial.print(tempDeviceAddress[7], HEX);
Serial.println("");
}
Serial.println("----------");
delay(1000);
}