DS18B20 температура 85С

Использование датчиков и обсуждение пользовательских блоков к ним
Ответить
lalala5
Рядовой
Сообщения: 18
Зарегистрирован: 06.09.2015{, 17:12}
Репутация: 0
Откуда: Темиртау

DS18B20 температура 85С

#1

Сообщение lalala5 » 20.06.2016{, 12:51}

при включении контроллера датчики показывают 1 сек 85С все начинает срабатывать. Как это обойти?

vlad
Лейтенант
Сообщения: 396
Зарегистрирован: 11.09.2015{, 11:50}
Репутация: 0
Откуда: Казань

DS18B20 температура 85С

#2

Сообщение vlad » 20.06.2016{, 13:58}

попробуйте задержку опроса или задержку сравнения. или температуру пишем в переменную с задержкой

Аватара пользователя
Skull
Лейтенант
Сообщения: 424
Зарегистрирован: 08.09.2015{, 16:18}
Репутация: 4
Откуда: Мариуполь

DS18B20 температура 85С

#3

Сообщение Skull » 20.06.2016{, 15:08}

А питание не паразитка ?

lalala5
Рядовой
Сообщения: 18
Зарегистрирован: 06.09.2015{, 17:12}
Репутация: 0
Откуда: Темиртау

DS18B20 температура 85С

#4

Сообщение lalala5 » 21.06.2016{, 07:55}

питание паразитка

Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06.09.2015{, 13:12}
Репутация: 5
Откуда: Тюмень-Баку
Имя: Максим

DS18B20 температура 85С

#5

Сообщение Max » 21.06.2016{, 10:21}

lalala5 писал(а):при включении контроллера датчики показывают 1 сек 85С все начинает срабатывать.
Код 85, это отсутствие сигнала с датчика. Так же он кратковременно возникает при инициализации вне зависимости от типа питания самого датчика.
Обойти его можно, как уже говорилось выше, небольшой задержкой.

discus
Рядовой
Сообщения: 1
Зарегистрирован: 24.03.2016{, 19:58}
Репутация: 0

DS18B20 температура 85С

#6

Сообщение discus » 18.10.2016{, 08:20}

Так как новые темы заводить пока не могу, попрошу помощи здесь.
Делаю контроллер отопления из двух блоков, первый обрабатывает датчики DS18b20 и передает данные по кольцу uart (arduino pro mini). К нему подключаются 7 шинок 1wire с автоопределением (pin2 - 8) и одна шина на которую сажаю 4 датчика с фиксированными адресами.
Проблема следующая:
1. Если плату с прописанными датчиками не компилировать, то при компиляции в arduino ide вылазят такие лишние строки:

СпойлерПоказать

Код: Выделить всё

[size=8]#include <OneWire.h>
И лезу ошибки:
СпойлерArduino: 1.6.3 (Windows 7), Плата"Arduino Pro or Pro Mini, ATmega328 (5V, 16 MHz)"
pr1.ino:15:14: error: redefinition of 'OneWire _ow7'
pr1.ino:14:10: error: 'OneWire _ow7' previously declared here
pr1.ino:18:14: error: redefinition of 'OneWire _ow8'
pr1.ino:11:10: error: 'OneWire _ow8' previously declared here
pr1.ino:19:14: error: redefinition of 'OneWire _ow3'
pr1.ino:13:10: error: 'OneWire _ow3' previously declared here
pr1.ino:20:14: error: redefinition of 'OneWire _ow5'
pr1.ino:16:10: error: 'OneWire _ow5' previously declared here
pr1.ino:22:14: error: redefinition of 'OneWire _ow4'
pr1.ino:17:10: error: 'OneWire _ow4' previously declared here
pr1.ino:23:14: error: redefinition of 'OneWire _ow2'
pr1.ino:12:10: error: 'OneWire _ow2' previously declared here
pr1.ino:24:14: error: redefinition of 'OneWire _ow6'
pr1.ino:21:10: error: 'OneWire _ow6' previously declared here
Ошибка компиляции.
  Это сообщение будет содержать больше информации чем  "Отображать вывод во время компиляции"  включено в Файл > Настройки
Если дублирующиеся строки в скетче удалить, то скетч нормально компилируется и устройство функционирует нормально.
А вот если проект в Flprog компилировать полностью (включая прописанные датчики), то удаление дублирующихся строк все равно приводит к ошибке:
СпойлерArduino: 1.6.3 (Windows 7), Плата"Arduino Pro or Pro Mini, ATmega328 (5V, 16 MHz)"
pr2.ino: In function 'float _readDS18_ow9(byte*, byte)':
pr2.ino:488:49: error: redefinition of 'float _readDS18_ow9(byte*, byte)'
pr2.ino:422:49: error: 'float _readDS18_ow9(byte*, byte)' previously defined here
Ошибка компиляции.
  Это сообщение будет содержать больше информации чем  "Отображать вывод во время компиляции"  включено в Файл > Настройки
Может кто знает, чего этой железяке не хватает? Проект прилагаю.

Добавлено (18.10.2016, 08:20)
---------------------------------------------
Оставляю одну плату в проекте и все равно не компилится.
СпойлерArduino: 1.6.3 (Windows 8.1), Плата"Arduino Uno"
pr4.ino: In function 'float _readDS18_ow9(byte*, byte)':
pr4.ino:140:49: error: redefinition of 'float _readDS18_ow9(byte*, byte)'
pr4.ino:129:7: error: 'float _readDS18_ow9(byte*, byte)' previously defined here
Ошибка компиляции.
  Это сообщение будет содержать больше информации чем  "Отображать вывод во время компиляции"  включено в Файл > Настройки
Может кто сталкивался?
Вложения
______.flp
(431.4 КБ) 60 скачиваний

Ответить

Вернуться в «Датчики температуры, влажности и давления»