| ||||
|
Простой термометр для дома с двумя датчиками DS18B20 Главная -> Статьи -> Устройства на микроконтроллерах -> Простой термометр для дома с двумя датчиками DS18B20
| ||||
|
|
Данный проект родился в процессе изучения мной принципов работы интерфейса 1-wire. Для измерения температуры в этом проекте используются широко распространенные датчики фирмы Dallas Semiconductor типа DS18B20. Устройство способно работать с одним или двумя датчиками. Предполагается использование термометра для домашних целей, где один датчик измеряет температуру в комнате, а второй измеряет температуру на улице. Индикация значений температуры осуществляется с помощью знакосинтезирующего ЖКИ дисплея на базе контроллера HD44780 или его аналогов. При включении устройства на дисплее высвечивается заставка Start, которая появляется в виде бегущей строки, затем возможны следующие варианты: Устройство автоматически определяет 64 разрядный код каждого датчика и различает их по первому несовпадению битов кода при последовательном сравнении, где бит 0 считается у датчика для комнаты, бит 1 считается у датчика для улицы. Таким образом, достаточно легко определить какой датчик, где должен использоваться при подключении к устройству двух датчиков и, например, искусственном подогревании одного из датчиков. Датчики в устройстве работают в 12-битном режиме. Обновление показаний температуры происходит примерно раз 845 мс.
Переключатель SA1 предназначен для переключения датчиков, с которыми ведется информационный обмен.PЕсли переключатель разомкнут, то работа ведется с датчиком в комнате, если замкнут, то с датчиком на улице. При переключенииPдатчиков Pприсутствует инерционность (до 845 мс.), обусловленная проверкой состояния переключателя перед подачей команды измерения. В устройстве использован кварц на 10 МГц. Схема работоспособна, если микроконтроллер работает от внутреннего генератора 8 МГц. (При программировании фуз в обоих случаях не забываем установить CKDIV8 в лог. 1, т.е. отключить деление тактовой частоты на 8)
Проект писался на языке C. Использовался компилятор WinAvr, вызываемый в среде Avr Studio 4.
Прошивка
Добавил: Павел (Admin) Автор: Неизвестно Вас может заинтересовать:
|
|||
|
| ||||
|
||||