Есть такой термодатчик с хитрым последовательным интерфейсом. Но, он очень дорогой и трудно доставаемый. Есть желание заменить его на ds18b20, мб ктото уже заморачивался и есть наработки на эмулятор? Беглый гуглопоиск ничего не дал
ATtiny13 не очень подходит, т.к. у него нет приличного таймера. На таймере T1 можно было бы такое реализовать. Зафиксировать длительность Т1, допустим 12'000мкс и вычислять Т2= (T1 × 400)/(235 – tºC), где tºC - значение температуры из DS18B20. Прикидки показывают, что можно уложиться в емкость таймера. Можно такое реализовать на 2313.
Частота 35Гц указана в тесте, наверно, как ориентировочная. Далее следует, что параметр Т2 может быть 44ms при 125ºC+ длительность Т1, т.е. явно меньше 35Гц
Ну да, при 25°C. А так да, частота с изменением температуры меняется, так как длительность Т1 всегда равна 10...12мс., меняется только длительность Т2.
СпойлерBOB51 правильно подметил про непостоянство частоты ШИМ.
ну, тогда и тинька13 справится - на тупых задержках пока формируется Т1, идет общение с DS18x20, а потом при помощи _delay_us формируется Т2
если на ассемблере писать, то и attiny9 хватит, пожалуй
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
ARV, надо только какую то машину состояний замутить для обмена с DS18B20, а то она только цикл измерений гонит 750 мс. А потом можно быренько вычитать, особенно, если SKIPROM включить и читать без подсчета КС.
да какая там машина... старт преобразования уложится внутрь Т1, потом гоним циклически Т1-Т2 в расчете на "предыдущую температуру", а спустя 750 мс в течение Т1 вычитываем новую температуру и снова стартуем замер... сложнее словами описать, чем сделать
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
ARV, ну так это и есть машина - выставить старт и потом отсчитывать 750 мс.
По идее еще надо при пропадании DSки предусмотреть опрос наличия 1Wire устройства, чтения сигнатуры и проверки, DSка ли это...
Посмотрел предыдущий вариант. Получается, что DS18B20 имеет младший разряд весом 0,0625ºC, а конвертер выдает в целых градусах. Поэтому ещё вариант, но уже с полным разрешением по шкале DS18B20 и инверсным выходом для подключения транзистора с ОК.
а ТС куда-то пропал...
к тому же, он в первом посте сразу сказал всем до свидания. может, уже и не появится?..
лично я понял, что ТС нужно просто заменить дорогой и дефицитный датчик на ds18b20, а не выдавать на выход эмулируемый ШИМ взамен того датчика.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Да, заменить этот дорогой датчик на ds18b20 или s20 и чтобы то что выдавал тмп03, такой же сигнал шел, само собой темпераиуру чтобы правильно показывал. Железнодорожное оборудование, денег как известно не дают, крутимся сами. По грозе летят термодатчики. Рацпредложение по замене попозже напишу, на пиво подкину