ds18b20 и Proteus

ds18
Offline
Зарегистрирован: 02.07.2018

Доброго времени суток!

Есть терморегулятор на ардуино. В качестве датчика используется терморезистор. Хочу переделать его под ds18b20. Пока датчик едет - решил изменить скетч и погонять его в протеусе. Так вот при симуляции постоянно отображается температура -127. Перепробовал кучу примеров из сети (в том числе и примеры из библиотеки) - результат тот же. Чтобы разобраться в чем проблема использую уже простенький скетч, но пока ничего не получается

#include <OneWire.h>
#include <DallasTemperature.h>

#define ONE_WIRE_BUS 10
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

void setup(void){
Serial.begin(9600);
sensors.begin();} 

void loop(void){ 
sensors.requestTemperatures();
Serial.print("T=");
Serial.println(sensors.getTempCByIndex(0));
} 

Может кто подсказать в чем проблема?

 

b707
Онлайн
Зарегистрирован: 26.05.2017
ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Если Вы откроете свойства ds18b20 в протеусе, то там внизу есть тайминиги. Они не совпадают с таковыми в библиотеке OneWire. Я как-то долго мучился и настроил их, глядя в код библиотеки и постоянно пробуя. К сожалению, те настройки не сохранились, так что Ваша очередь мучиться :)