Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
07.03.2010, 19:21
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.04.2009
Сообщений: 5,611
Сказал спасибо: 1,070
Сказали Спасибо 1,273 раз(а) в 884 сообщении(ях)
|
Re: термометр на ds18b20
Сообщение от edzma
|
V Litve DS18B20 stoit 12 Lt....eto naverno okolo 140 rub.
|
Самые дешевые покупал по 7.60 LTL, а это где то 90 рублей
Последний раз редактировалось nsl2004; 07.03.2010 в 19:41.
|
|
|
|
09.03.2010, 20:27
|
|
Прохожий
Регистрация: 20.02.2010
Сообщений: 5
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: термометр на ds18b20
Как зделать чтобы температура на 7-ми сигментнике выводилась вот так
Пример:
25,5
23,4
21,1..................
На датчике ds18b20?
Именно програмно!
|
|
|
|
09.03.2010, 21:09
|
|
Гражданин KAZUS.RU
Регистрация: 08.07.2006
Сообщений: 886
Сказал спасибо: 119
Сказали Спасибо 1,110 раз(а) в 177 сообщении(ях)
|
Re: термометр на ds18b20
Сообщение от nsl2004
|
Самые дешевые покупал по 7.60 LTL, а это где то 90 рублей
|
Да, барыги нигде не останутся без дела
В Украине DS18B20 сейчас стоит около 9 грн., что в переводе на рубли составляет около 35 руб. Так что требуйте скидок, торговцам уступать есть куда. Плохо когда рынок комплектующих "надутый" и "нагретый", а себестоимость получается выше облаков.
|
|
|
|
10.03.2010, 14:59
|
|
Прописка
Регистрация: 09.08.2006
Сообщений: 198
Сказал спасибо: 14
Сказали Спасибо 27 раз(а) в 20 сообщении(ях)
|
Re: Термометр на ds18b20
Сообщение от Diks89
|
Как зделать чтобы температура на 7-ми сигментнике выводилась вот так
Пример:
25,5
23,4
21,1..................
На датчике ds18b20?
Именно програмно!
|
Програмно - гамно! Очена хоца увидеть схему аппаратного преобразования.
Если вывод целой части значения температуры, как я надеюсь, труда не составляет то:
Чтобы не привлекать математику с плавающей точкой нужно:
1. Если результат температуры отрицателен то -› нарисовать на индикаторе "-" и изменить знак результата, выданного датчиком.
2. Дробное значение температуры находится в младших 4-х битах выданного датчиком результата, т.е. 1 составляет 0,0625 град.Ц. Но 0,0625 то же самое, что и 6,25/100. Т.к. делить на 100 проще простого (передвинуть десятичную точку на 2 знака), то нужно 16-х битовое число умножить на 6,25 без плавающей точки, да и вообще используя сдвиг влево и вправо, а также суммирование:
res = res*4 + res*2 + res/4 где где "res" и есть 16-ти битовое число, возвращаемое датчиком. В результате в res имеем число 0..12500, что и выводим на индикатор (выполнив преобразование в строку) и отделив два последних знака десятичной точкой.
Последний раз редактировалось ish0; 10.03.2010 в 15:01.
|
|
|
|
10.03.2010, 22:44
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Re: термометр на ds18b20
Сообщение от alexgap
|
В Украине DS18B20 сейчас стоит около 9 грн., что в переводе на рубли составляет около 35 руб.
|
Ох не верю я в такие райские цены дайте линк чтоль.
Я мелким оптом по 50 рубчиков только нашел в Москве.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
10.03.2010, 23:02
|
|
Гражданин KAZUS.RU
Регистрация: 08.07.2006
Сообщений: 886
Сказал спасибо: 119
Сказали Спасибо 1,110 раз(а) в 177 сообщении(ях)
|
Re: Термометр на ds18b20
Сообщение от avr123-nm-ru
|
Ох не верю я в такие райские цены дайте линк чтоль.
|
http://kosmodrom.com.ua/product.php?...CF%EE%E8%F1%EA
|
|
|
|
10.03.2010, 23:11
|
|
Заблокирован
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
|
Re: Термометр на ds18b20
Если в космодроме по 9, значит цена им - 7гр.
|
|
|
|
18.03.2010, 19:40
|
|
Частый гость
Регистрация: 15.10.2009
Сообщений: 27
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Термометр на ds18b20
У кого нибудь есть код на СИ для AVR Studio для работы с DS18b20 ? парюсь не могу допереть по этой штуке
|
|
|
|
18.03.2010, 22:14
|
|
Заблокирован
Регистрация: 14.04.2008
Адрес: Украина, совсем рядом от террористов!
Сообщений: 388
Сказал спасибо: 32
Сказали Спасибо 85 раз(а) в 62 сообщении(ях)
|
Re: Термометр на ds18b20
Сообщение от ish0
|
Чтобы не привлекать математику с плавающей точкой нужно:
2. Дробное значение температуры находится в младших 4-х битах выданного датчиком результата, т.е. 1 составляет 0,0625 град.Ц. Но 0,0625 то же самое, что и 6,25/100. Т.к. делить на 100 проще простого (передвинуть десятичную точку на 2 знака), то нужно 16-х битовое число умножить на 6,25 без плавающей точки, да и вообще используя сдвиг влево и вправо, а также суммирование:
res = res*4 + res*2 + res/4 где где "res" и есть 16-ти битовое число, возвращаемое датчиком. В результате в res имеем число 0..12500, что и выводим на индикатор (выполнив преобразование в строку) и отделив два последних знака десятичной точкой.
|
А что просто умножить на десять дробное значение нельзя?
Например так:
ldi temp,0b00001000 ; Значения для преобразования (дробь)
andi temp,0b00001111 ; Обнуляем старшую тетраду (на всякий случай)
lsl temp
mov tmp,temp
lsl temp
lsl temp
add tmp,temp
mov temp,tmp
andi tmp,$f0
swap tmp ; первая дробная цифра в tmp
; оставшиеся дробные разряды в temp
; Если нужно больше дробных разрядов, выполняем этот участок большее число раз!!!
Последний раз редактировалось ALEKSEY188; 18.03.2010 в 22:16.
|
|
|
|
23.03.2010, 22:33
|
|
Прохожий
Регистрация: 23.03.2010
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
|
Re: Термометр на ds18b20
Сообщение от dronow87
|
У кого нибудь есть код на СИ для AVR Studio для работы с DS18b20 ? парюсь не могу допереть по этой штуке
|
Вот пример для Atmega 8515
|
|
|
Сказали "Спасибо" genik555
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 07:19.
|
|