Страница 1 из 1

Пять DS18B20 из одного STM8.

Добавлено: Вт дек 26, 2017 14:14:17
Z_h_e
На всякий случай создам тему о данной статье. Пускай будет.

Re: Пять DS18B20 из одного STM8.

Добавлено: Сб янв 13, 2018 20:25:59
Z_h_e
В статье, во вложении ошибка. В файле hex, на самом деле бинарник, не знаю как так получилось :dont_know: . А так как в stm8, флеш начинается не с нуля, то чтобы скорректировать его чуток надо поработать. В общем исправлюсь и прикладываю hex.

В прошивке есть недостаток. Если RESET на шине держать в два раза дольше номинально, то может сработать неадекватно, но править пока не буду. На штатных таймингах работает.

Re: Пять DS18B20 из одного STM8.

Добавлено: Сб янв 13, 2018 21:20:40
musor
ЧЕСНО ГОГОВОРЯконцепция заменить 5 интегралный датчиков на шине неким аналогом -костылем весма сомнителна
цена датчика 100р в рознице и раз 5 ниже на али если брать оптом -датчики доступны и дешевы смысла в поделке никакого....
но вот если ты научишь этог нечто работать с 5 термопарами ;(ТП) или с 5 ТС тимпа ТСП которые позволят мерять до 1000С и выше вот тогда смысл есть
а цифровать сигналы с термистров может любой МК с встроеным АЦП попутно ИЩЕ выводя на дисплей ЦИФИРКИ
смысл и таког эмулятора не совсем ясен мне ....
да и делат усилки на ШИРПОТРЕБНОМ ОУ для термистора дурь ИЩЕ та -точности не добавит а дреф -пожалуйта
обычный делитель где одно плечо-ТР (или ТС) там рулит если раскидать их по портам корекцию кривой и привязки к реперам должен делать мк отделно для каналов каждого -схема вразы проще а оу вносит ошибку и удорожает схему
вот дя ТП нужны ИУ например на томже ОУ (но прецизином) пред МК но лучще чтото типа max6675

Re: Пять DS18B20 из одного STM8.

Добавлено: Сб янв 13, 2018 21:29:06
Z_h_e
musor, без обид, невозможно читать что пишите, и ведь во всех постах так. Потому вдаваться в смысл не хочу и отвечать на Ваш пост не буду. Сейчас тестится другая прошивка, на ночь наверное оставлю, вернее не она. Несколько другое назначение устройства есть еще.

Re: Пять DS18B20 из одного STM8.

Добавлено: Сб янв 13, 2018 21:36:25
musor
ну воля ваша не читайте....видимо просто сказать нечего посколку пост легко понятен...
если есть СКРЫТЫЙ смысл этой платы про который вы умолчали то может и есть смысл
я вижу такой смысл толко 1 я изложил его выше
2 вариантом является замер двлений тензодатчиками и вывод в формате 1Wire Dalas

Re: Пять DS18B20 из одного STM8.

Добавлено: Сб янв 13, 2018 22:03:42
Z_h_e
Можете же писать по-русски. Скрытого смысла нет, просто есть еще вариант, который я ранее не сделал. Сегодня занялся, потому и вернулся к теме и сегодня же допишу что сделал.

Добавлено after 22 minutes 50 seconds:
А теперь основное назначение устройства, которое не было выполнено раньше, из-за отсутствия сие минутной необходимости, а с термисторами было интересно побаловаться (в том числе конечно, еще пригодятся мне).

Я задолбался в отладке (другого устройства), для имитации температуры греть датчики, то водой, то телом комиссарским, то огнем открытым, то в код тестовые куски вставлять.

В общем устройство тоже самое, только нет аналоговых каналов. STM8 подключается к "мастеру" и так же заменяет гирлянду DS18B20. Теперь температура не измеряется, а задается. Для задания температуры использует порт D6 - вход UART. Скорость 9600, 1 стоп бит, нет контроля четности. Протокол простецкий. Надо передать три байта, в течении 20 мс (вроде :) ). Байты по порядку: номер канала (0..4), старший и затем младший байты температуры в формате DS18B20.

Можно было задавать температуру из терминальной программы, но это не удобно. Наваял вот такое приложение.
Изображение

Очень удобно тестить девайс работающий с DS18B20, задаешь какую надо температуру и стоит не дергается. Лучше чем кружки с кипятком, которые не хотят не остывать :).

Оставлю сегодня ночь, погляжу на надежность.