خودم از این کد استفاده کردم ولی مشکلی که داره اینه که عدد -127 که نشان دهنده این است که سنسور مشکل داره را نشان میده و هم دمایی که سنسور گزارش میکنه،من نمی دونم مشکل از کجاست
مثلا چیزی که نشون میده:sensor 2 = -127.00 26.5
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS_1 2
#define ONE_WIRE_BUS_2 4
OneWire oneWire_in(ONE_WIRE_BUS_1);
OneWire oneWire_out(ONE_WIRE_BUS_2);
DallasTemperature sensor_inhouse(&oneWire_in);
DallasTemperature sensor_outhouse(&oneWire_out);
uint8_t sensor2[8] = { 0x28, 0x7D, 0xC6, 0x56, 0xB5, 0x01, 0x3C, 0xF3 };
uint8_t sensor3[8] = { 0x28, 0x99, 0x34, 0x79, 0xA2, 0x00, 0x03, 0xC2};
void setup(void)
{
Serial.begin(9600);
Serial.println("Dallas Temperature Control Library Demo - TwoPin_DS18B20");
sensor_inhouse.begin();
sensor_outhouse.begin();
}
void loop(void)
{
Serial.print("Requesting temperatures...");
sensor_inhouse.requestTemperatures();
sensor_outhouse.requestTemperatures();
Serial.println(" done");
Serial.print("Sensor 2: ");
printTemperature(sensor2);
Serial.print("Sensor 3: ");
printTemperature(sensor3);
Serial.println();
delay(3000);
}
void printTemperature(DeviceAddress deviceAddress)
{
float tempC1=sensor_inhouse.getTempC(deviceAddress);
float tempC2=sensor_outhouse.getTempC(deviceAddress);
Serial.print(tempC1);
Serial.println(tempC2);
}