// After running the simulator, click on the DS18B20 chip to change the temperature
// Chip by bonnyr, source code: https://github.com/bonnyr/wokwi-ds1820-custom-chip/
#include <OneWire.h>
#include <DallasTemperature.h>
OneWire oneWire(4);
DallasTemperature DS18B20(&oneWire);
//DeviceAddress DEVICEADDRESS = { 0x28, 0xE9, 0x1D, 0x0B, 0x10, 0x00, 0x00, 0xEF }; //28E91D0B100000EF (Sensor)
DeviceAddress DEVICEADDRESS = { 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFB }; //10000000000000FB (Wokwi)
float sensor2_val;
void setup(void) {
Serial.begin(9600);
delay(2);
DS18B20.begin();
DS18B20.setResolution(DEVICEADDRESS, 9);
delay(20);
}
void loop(void) {
unsigned long test;
test = millis();
//DS18B20.requestTemperatures();
//DS18B20.requestTemperaturesByIndex(0);
DS18B20.requestTemperaturesByAddress(DEVICEADDRESS);
Serial.println(millis() - test);
test = millis();
//sensor2_val = DS18B20.getTempCByIndex(0);
sensor2_val = DS18B20.getTempC(DEVICEADDRESS);
Serial.println(millis() - test);
Serial.print("Temperature is: ");
Serial.println(sensor2_val);
Serial.print("Resolution is: ");
Serial.println(DS18B20.getResolution(DEVICEADDRESS));
Serial.println();
delay(1000);
}