Леонид Иванович 0 22 января, 2016 Опубликовано 22 января, 2016 (изменено) · Жалоба Может, вы их никогда менее 5В не питали, поэтому не знаете о таком поведении? )) Да применял я эти датчики при питании 3.3 В, от этого картина не меняется. Вот пожалуйста осциллограмма при питании 3.3 В (по вертикали 1 В в клетке, по горизонтали 5 мс в клетке). Никакой просадки уровня на DQ нет. Показания датчика нормальные (+27 градусов). Подтяжка 4.7 кОм на +3.3 В. Изменено 22 января, 2016 пользователем Леонид Иванович Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 10 22 января, 2016 Опубликовано 22 января, 2016 · Жалоба Показания датчика нормальные (+27 градусов). Подтяжка 4.7 кОм на +3.3 В. А погреть до 100C сможете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Леонид Иванович 0 22 января, 2016 Опубликовано 22 января, 2016 · Жалоба Попробовал снижать питание при комнатной температуре: 3.3 В - 25.7°C 3.0 В - 25.7°C 2.5 В - 25.7°C 2.4 В - 25.7°C 2.3 В - 25.6°C 2.2 В - 22.1°C - большая ошибка 2.1 В - показывает ерунду Нагрел феном примерно до 90°C. Просадки на линии DQ по-прежнему нет. 3.3 В - 90°C (на десятые градуса внимания не обращаю) 3.0 В - 90°C 2.5 В - 90°C 2.4 В - показывает ерунду Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 10 22 января, 2016 Опубликовано 22 января, 2016 · Жалоба Нагрел феном примерно до 90°C. Просадки на линии DQ по-прежнему нет. Вероятно, у вас линия DQ подтягивается активно - МК выдает на соответствующую ногу лог "1". Чтобы это проверить прошу вместо резистора R16 на вашей схеме включить обычный диод: катодом к "OWP", анодом к R26. Если и в этом случае не будет просадки во время преобразования и "левой температуры" при 3.3В, то даже не знаю что и ответить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Леонид Иванович 0 22 января, 2016 Опубликовано 22 января, 2016 · Жалоба Вероятно, у вас линия DQ подтягивается активно - МК выдает на соответствующую ногу лог "1". Чтобы это проверить прошу вместо резистора R16 на вашей схеме включить обычный диод: катодом к "OWP", анодом к R26. Нет, активно не подтягивается. Я проверил по-другому - подключил резистор 10 кОм между DQ и землей. При питании 5 В уровень на DQ сразу уменьшился примерно до 3.3 В (как во время чтения, так и во время преобразования). Это говорит о том, что работает только подтяжка 4.7 кОм. Если и в этом случае не будет просадки во время преобразования и "левой температуры" при 3.3В, то даже не знаю что и ответить. Как может быть "левая" температура при 3.3 В, если это в допустимых пределах питания? Делать сильную подтяжку DQ при обычном питании нигде в документации не требуют, так что обязано работать. Просаживать линию DQ при наличии питания на VDD термометр не может. Питание с DQ и VDD собирается через диоды, а выходной транзистор закрыт, когда нет обращения по шине. Есть еще постоянно включенный генератор тока с DQ на землю, но ток там маленький, порядка 5 мкА. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 10 22 января, 2016 Опубликовано 22 января, 2016 · Жалоба Просаживать линию DQ при наличии питания на VDD термометр не может. В этом у нас главное отличие. Я готов сделать и прислать прошивку для какой-нить отладочной платы, чтоб у нас были одинаковые условия эксперимента. Какие платы есть у вас? У меня есть зоопарк всяких STM32-DISCOVERY. Но для начала проверю все датчики, какие у меня есть. Кста, а где ТС? Ему вообще интересна эта тема? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Леонид Иванович 0 22 января, 2016 Опубликовано 22 января, 2016 · Жалоба Есть STM32 Value line discovery (на STM32F100RBT6B) и STM32F4-Discovery (на STM32F407VGT6). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 10 22 января, 2016 Опубликовано 22 января, 2016 · Жалоба STM32F4-Discovery Отлично. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 10 22 января, 2016 Опубликовано 22 января, 2016 · Жалоба С радостью готов признать, что Леонид оказался прав - никакой подтяжки DQ не требуется, линия DQ не просаживается. Точнее сказать: существуют такие датчики, которые работают именно так... Но из 11 датчиков у меня есть два очень странных: Первый (p1) общается по шине, но ничего кроме +85 или +127 отдавать в качестве температуры не может. Т.е. это явно неисправный. Второй ведет себя интересней. При пассивной подтяжке и VCC < 4.0В просаживает линию (p2). При активной подтяжке и VCC < 3.0В просаживает DQ импульсно (p3). При этом температура не корректная. Датчики питаются по 3 ноге, т.к. изменение напряжения на ней играет роль. Самое интересное, что второй датчик стоял у меня в тестовом кабеле, с помощью которого я вел все разработки. Остальные датчики не просаживают линию даже при высоких T > +110С. Процент неисправных меня настораживает. Попробую собрать больше статистики, ибо используем эти датчики в промышленных масштабах. Кому интересно, прицепляю прошивку для STM32F4DISCOVERY, с помощью которой можно тестировать DS18B20. Подключение: - PA2 - console_tx; - PA3 - console_rx; - PB4 - ow_tx; - PB5 - ow_rx; - LED_GREEN[PD12] - светодиод "работа". мигает раз в секунду; - LED_RED[PD14] - светится в момент преобразования температуры. можно синхронизировать осциллограф (желтый луч на прицепленных картинках); - LED_ORANGE[PD13] - светится в режиме активной подтяжки; - LED_BLUE[PD15] - светится если хотя бы один из датчиков на шине выдает T > +30С; - кнопка USER[PA0] - при удержании переключает пассивную подтяжку на активную и наоборот. Консоль работает с параметрами 115200-8N1. Доступные команды: "help" - показывает список команд; "who" - показывает информацию о прошивке; "reboot" - перезагружает контроллер; "pullup=passive" - включает пассивную подтяжку; "pullup=active" - включает активную подтяжку. Конец команды - символ <CR>. В консоль выводится информация об идентификаторах и данных датчиков на шине. {ID 28 33 91 6C 02 00 00 1D} [T 50 05 4B 46 7F FF 0C 10 1C - 00] -> ds18b20 +85 Поддерживаются датчики типов ds1820 и ds18b20. Для подключения датчика соединить PB4 и PB5 и подать на DQ. VCC можно брать с платы или с внешнего БП. Кому не лень и есть датчики, прошу проверить. При пассивной подтяжке и питании датчика от "3V" с платы, должен загореться синий светодиод, если датчик просаживает линию и/или неисправно преобразует температуру. Но датчик не должен быть горячее +30C. Красный светодиод будут загораться в момент преобразования температуры (на 1 сек). Если не загорается - значит датчик неисправен и/или неверно подключен. Кста, исходный вопрос ТС пока остается без ответа. Думаю, не стоит заморачиваться, т.к. ТС, вроде, хотел поправить софт. test_ds18b20.v0.0.1.20160122.bin.zip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kolobok0 0 24 января, 2016 Опубликовано 24 января, 2016 · Жалоба ....ничего кроме +85 или +127 отдавать в качестве температуры... если-бы речь шла бы про ds1821 - там есть что программировать. А вот двадцатки... По идее должны работать как танк. (круглый) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
OlegH 0 25 января, 2016 Опубликовано 25 января, 2016 · Жалоба Да может часть датчиков просто китайские, разного разлива... Я купил на Али 10 штук DS18b20 подешевке, похожи на настоящие и даже работают, только: - разрешение по температуре при настройке 12 бит 0.5 градусов, не лучше (вот так кратно 0.5 значения и возвращаются, хотя меряют более-менее точно); - маркировка на корпусе явно более низкого качества нанесения. Рядом с ними фирменные датчики на тех же местах работают, как и должны, без вопросов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Леонид Иванович 0 25 января, 2016 Опубликовано 25 января, 2016 (изменено) · Жалоба Процент неисправных меня настораживает. Так а какой процент неисправных из того применяемого "промышленного" количества? Пока речь идет всего о двух неисправных датчиках. Да может часть датчиков просто китайские, разного разлива... Китайцы делают аналог, но он маркируется по-другому: QT18B20.pdf QT18B20_AN.pdf Изменено 25 января, 2016 пользователем Леонид Иванович Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 10 25 января, 2016 Опубликовано 25 января, 2016 · Жалоба Так а какой процент неисправных из того применяемого "промышленного" количества? Пока речь идет всего о двух неисправных датчиках. Большого внимания не придавал этому явлению: подумаешь, бракованная микросхема - в мусорку и забыть. Периодически возникают жалобы, но мы обходимся простой заменой. Неисправные датчики к нам даже не возвращаются. В основном проблемы с датчиками, которые для воды, но их банально заливает. Скорее всего, мои проблемные датчики появились у меня как раз с производства (года 2 или 3 назад, уже не помню), и, вероятно, из-за "проблем" у тамошних парней. Попробую эту проблему актуализировать. Может, устрою 100% входной контроль. Кста, Поставщик у нас надежный, поэтому всякий кетай отметаем сразу. Может быть датчики исходно рабочие но по каким-то причинам так портятся. Например, переполюсовка, повышение VCC до 12-24В или что-то еще простое и повторимое. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться