Всё по DS18(B/S)20.

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Аватара пользователя
ILYAUL
Держит паяльник хвостом
Сообщения: 906
Зарегистрирован: Ср мар 28, 2012 21:45:24
Откуда: ВО

Re: Всё по DS18(B/S)20.

Сообщение ILYAUL »

Можно . Ну ,а если один накроется медным тазом, а готовое устройство откл. нельзя , что бы прописать новый датчик. Что делать будите?
BVS
Потрогал лапой паяльник
Сообщения: 336
Зарегистрирован: Пн май 23, 2011 18:27:41

Re: Всё по DS18(B/S)20.

Сообщение BVS »

shads писал(а):Я наверное неправильно мысль выразил.

Да ради бога! я тоже так по началу делал, потом надоело, и пришлось отвязать устройство от датчиков.
з.ы. да и тазом они бывает накрываются :)) но продолжают работать от паразитного питания
Аватара пользователя
shads
Опытный кот
Сообщения: 882
Зарегистрирован: Ср фев 22, 2012 01:25:21

Re: Всё по DS18(B/S)20.

Сообщение shads »

ILYAUL писал(а):Можно . Ну ,а если один накроется медным тазом, а готовое устройство откл. нельзя , что бы прописать новый датчик. Что делать будите?
Дыкэта, здесь не о стратегических объектах речь. А так - стандартная функция настроек устройства - удалить\прописать датчик. Отключил линию на минутку, вставил датчик, удалил\прописал, линию воткнул и пошел вешать датчик гиде надо.....
casino777
Первый раз сказал Мяу!
Сообщения: 38
Зарегистрирован: Вт дек 13, 2011 00:00:15

Re: Всё по DS18(B/S)20.

Сообщение casino777 »

BVS писал(а):Плохо ищите, но вот то, что я вспомнил, в этой статье есть пример с табличным расчетом, а в комментариях найдете и математический расчет.

еще была тема http://www.radiokot.ru/forum/viewtopic.php?f=25&t=11525
которую почему-то забросили


Кто работал с исходниками с этого сайта помогите правильно ли я после нахождения Rom датчика дальше команды подаю после метки Loop1:

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


    Вычисляется ROM
    rcall OWClearROM_NO
    rcall OWFirst
    sbrs search_flags, search_result
    rjmp EndOfExample

    Есть  ROM
    loop1:
    ; Код             
    main:
    rcall ds
    rcall bcd_convert ;преобразование
    ldi   lcd_command,$01
    rcall   lcdcmd
    ldi wreg, 3
    rcall ds_longdelay
    rcall display; вывод на экран

    ;Следующий датчик
    rcall OWNext
    sbrs search_flags, search_result
    rjmp EndOfExample
    rjmp loop1

    EndOfExample:
    rjmp main


    Ds:
    rcall ds_reset
    ldi ds_command, 0xCC
    rcall ds_write
    ldi ds_command, 0×44
    rcall ds_write
    ldi wreg, 255
    rcall ds_longdelay    ; 178ms
    ldi wreg, 255
    rcall ds_longdelay    ; 178ms
    ldi wreg, 255
    rcall ds_longdelay    ; 178ms
    ldi wreg, 255
    rcall ds_longdelay    ; 178ms
    ldi wreg, 60
    rcall ds_longdelay    ; 40ms
    rcall ds_reset
    ldi ds_command, 0xCC
    rcall ds_write
    ldi ds_command, 0xBE
    rcall ds_write
    ldi    wreg, 5
    rcall   ds_delay
    rcall ds_read
    ret


    ds_reset:
    cbi    PORTB,   PB0
    ldi    wreg, 0xFF
    out    DDRB, wreg
    ldi wreg, 220
    ldi    wreg, 0xFE
    out    DDRB, wreg
    ldi wreg, 220
    rcall ds_delay
    ret
casino777
Первый раз сказал Мяу!
Сообщения: 38
Зарегистрирован: Вт дек 13, 2011 00:00:15

Re: Всё по DS18(B/S)20.

Сообщение casino777 »

или как зная Rom обратиться к конкретному устройству? я понимаю что надо из 8 байтного Rom переслать код в регистры а дальше командами in и out , а как закодить не знаю даже
Аватара пользователя
shads
Опытный кот
Сообщения: 882
Зарегистрирован: Ср фев 22, 2012 01:25:21

Re: Всё по DS18(B/S)20.

Сообщение shads »

casino777 писал(а):или как зная Rom обратиться к конкретному устройству? я понимаю что надо из 8 байтного Rom переслать код в регистры а дальше командами in и out , а как закодить не знаю даже

Заканчиваю термометр на 4 датчика http://asis-kbr.ru/forum/viewtopic.php?f=9&t=117
Ща чето с EEPROM зразобраться не могу, читать номер датчика получается, а в EEPROM его загнать не получается чет..... Как разберусь, свистну (на асме пишу)
casino777
Первый раз сказал Мяу!
Сообщения: 38
Зарегистрирован: Вт дек 13, 2011 00:00:15

Re: Всё по DS18(B/S)20.

Сообщение casino777 »

shads писал(а):Ща чето с EEPROM зразобраться не могу, читать номер датчика получается, а в EEPROM его загнать не получается чет..... Как разберусь, свистну (на асме пишу)

Было бы здорово!

Читаем правила п.2.7
Gudd-Head
Аватара пользователя
shads
Опытный кот
Сообщения: 882
Зарегистрирован: Ср фев 22, 2012 01:25:21

Re: Всё по DS18(B/S)20.

Сообщение shads »

shads писал(а):Чето я в ступоре.
Если втыкаю датчики в разъем (хоть зажимаю контакты, хоть нет), то они сек ч-з 10 постепенно повышают температуру на пару град (проверил на всех 10шт.).
Если они лежат в рядок на столе и я к ножкам прижимаю проводки от платки, то все нормально (сейчас все 10шт стабильно показывают 24,5).
?????

Наконец то я допер до решения этого феномена. Мне тут говорили что проблема в саморазогреве датчиков. Я сначала повелся, думаю ну значит надо питание отключать между опросами, и сами опросы реже проводить. Но мой ступор усилился, когда я начал заниматься второй версией термо регистратора. Если на первой плате уход был несколько градусов, то на второй все датчики врали на 7 градусов (когда включаеш устр-во показывает 23 гр. а минут через 10 показывает 30 !!!!!). Я все еще свято верил что это саморазогрев..... Хотя уже можно было понять что это уже чересчур.....

Короче просветление пришло сегодня, когда начал работать с несколькими датчиками на одной линии, оказ-ся тот датчик что в разъеме платы, ведет себя как описано выше, а тот датчик что подключен к небольшой линии и лежит хоть на столе хоть в воздуже висит, прекрасно показывает реальную температуру, и никуда уходить не собирается..... Короче проблема была в том что в относительной близости от разъема в который включен датчик, находится стабилизатор 7805, вот он то и разогревается, нагревая все вокруг!!!!!
На первой плате, был минимум потребления, контроллер и MAX232, вот стаб и нагревал все вокруг на несколько градусов. А на второй плате, там уже целый пирог потребителей (+ семисегментник), вот и напрягается стабилизатор гдето до 40 град. (померял выносным датчиком, прижав его к стабу).

Вывод - саморазогрева датчиков я так и не заметил.....

Интересно, а по заявлениям других источников, на сколько саморазогреваются датчики, мож как раз в пределах 0,5 град, чего можно и не заметить?
Вложения
plata1.jpg
(57.13 КБ) 573 скачивания
plata2.jpg
(76.03 КБ) 392 скачивания
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Всё по DS18(B/S)20.

Сообщение Gudd-Head »

shads писал(а):на сколько саморазогреваются датчики?

Ток потребления × напряжение питания.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Аватара пользователя
shads
Опытный кот
Сообщения: 882
Зарегистрирован: Ср фев 22, 2012 01:25:21

Re: Всё по DS18(B/S)20.

Сообщение shads »

casino777 писал(а):Было бы здорово!
Скинул проект для AVRStudio http://asis-kbr.ru/forum/viewtopic.php?f=9&t=117
Если вопросы будут (по прошивке) там спрашивай, чтобы здесь не сорить.

Нарушение п.2.7 Правил Форума
Gudd-Head
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Всё по DS18(B/S)20.

Сообщение ploop »

Вывод - саморазогрева датчиков я так и не заметил.....

Пару десятых градуса при комнатной температуре.
Аватара пользователя
shads
Опытный кот
Сообщения: 882
Зарегистрирован: Ср фев 22, 2012 01:25:21

Re: Всё по DS18(B/S)20.

Сообщение shads »

Значит меня изначально в заблуждение ввели.....
Мастер Ломастер писал(а):саморазогрев - явление давно признанное самим производителем. пока подано питание на датчик, он потребляет хоть и мизерный, но все-таки ток, который и разогревает кристалл. если теплу от кристалла через корпус деваться некуда (воздух - плохой проводник тепла), корпус разогревается. как правило, прибавка в 1-2 градуса - это закономерность.
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Всё по DS18(B/S)20.

Сообщение ploop »

Я сужу по опыту использования. Первый замер от последующих отличается на 0.1-0.2 градуса. Редко бывает 0.3
Laplaskin
Родился
Сообщения: 4
Зарегистрирован: Пн апр 23, 2012 17:25:39

Re: Всё по DS18(B/S)20.

Сообщение Laplaskin »

Уважаемые коты!
Помогите разобраться. Цепляю ds18b20 к ATMega16. Контроллер тактируется частотой 1 МГц от встроенного генератора. отправляю на датчик команду "чтение ROM" и хочу этот самый ROM увидеть на LCD. В верхней строчке LCD вывожу то, что отправляется на датчик, а в нижней хочу посмотреть кусочек ROM кода.. Проблема в том, что МК рисует в нижней строчке единицы (то есть выходит, что ds18b20 вроде как и не отвечает на команду), хотя инициализация проходит правильно. Взгляните пожалуйста, может я что-то упустил или неправильно понял? я подробно откомментировал, чтобы прослеживался ход мысли.. с датчиком работаю впервые, да и с МК недавно :)
Вложения
prog.c
(3.16 КБ) 301 скачивание
Последний раз редактировалось Laplaskin Ср апр 25, 2012 17:16:09, всего редактировалось 1 раз.
Аватара пользователя
shads
Опытный кот
Сообщения: 882
Зарегистрирован: Ср фев 22, 2012 01:25:21

Re: Всё по DS18(B/S)20.

Сообщение shads »

Вопросик назрел.....
Как можно программно определить какой датчик подключен DS18B20 или DS18S20 ?
Или придется всегда вручную выбирать способ обработки?
Аватара пользователя
uldemir
Друг Кота
Сообщения: 7359
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Re: Всё по DS18(B/S)20.

Сообщение uldemir »

Прочитать код устройства. Первый байт вам даст ответ на вопрос
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Аватара пользователя
shads
Опытный кот
Сообщения: 882
Зарегистрирован: Ср фев 22, 2012 01:25:21

Re: Всё по DS18(B/S)20.

Сообщение shads »

Ой..... Как же это я сразу не догадался, спасибо. Полистал мануал, и действительно коды семейств у них разные 10h и 28h. А я думал что это одно семейство.
borys
Держит паяльник хвостом
Сообщения: 927
Зарегистрирован: Вт сен 07, 2010 19:27:48
Откуда: Ташкент

Re: Всё по DS18(B/S)20.

Сообщение borys »

Уважаемый shads!
Скачал файлы по вашей ссылке. Все хорошо, но схема нечитабельная. Не могли бы Вы выло-
жить более внятное исполнение. А за проект спасибо.
VALE
Родился
Сообщения: 2
Зарегистрирован: Сб май 10, 2008 12:50:21

Re: Всё по DS18(B/S)20.

Сообщение VALE »

Демонстрационный проект на 8 датчиков DS18B20 для PROTEUS
Вложения
DS18B20_5.rar
(22.8 КБ) 320 скачиваний
Аватара пользователя
DJ_Kiridza
Мучитель микросхем
Сообщения: 458
Зарегистрирован: Пн дек 13, 2010 13:01:59
Откуда: Украина
Контактная информация:

Re: Всё по DS18(B/S)20.

Сообщение DJ_Kiridza »

Я сейчас свой проект пишу, тоже на 8 датчиков и тоже с работой через терминал. Попадись мне эта схемка раньше...
Но все равно я делаю немного не так - у меня все делеи крутяться в таймере, таким образом основное тело программы выполняется независимо от задержек. Просто на частоте 8Мгц ресет пульс длинной в 480 мс - это кругленькое число операций. А так завел будильник на 480мс и крутишься себе в основном теле, зазвонил будильник - перевел линую, завел будильник, крутишься в основном теле, дальше зазвонил будильник - проверил пресенс пульс, есть контакт? заводим будильник на длинну таймслота и т.д.

Вот только по даташиту не понял как правильно считается CRC - кто может разжевать, ато тупо драть с исходников не охота
(пишу на асме)
мысли мысли штош вы вйотесь
над мойейу головойу
вы там мосга нинайдете
нед там мосга! йа тупойе (БОР)
Ответить

Вернуться в «Периферия»