Электронный термометр на Attiny 2313 с LCD дисплеем

Статья будет короткой, так как ничего особенного в этом девайсе нет, разве что удалось засунуть работу с датчиком DHT22 и LCD дисплеем в 2 Кб памяти. Устройство было собрано прошлой зимой, статью писал в личном блоге в это же время, но решил выложить и здесь.

Началось все с того, что на работе мы постоянно спорили по поводу температуры и влажности в комнате, а от этого зависело включение отопительных приборов, так как аргументировать без измерительного прибора было невозможно, я решил его собрать для лагеря «мерзляков», к которым относился и я. Сидеть зимой при температуре в помещении ниже 19 градусов было совсем не комфортно.

Звезды совпали для создания устройства выходного дня, новогодние праздники на носу, в загашнике лежит новая Attiny 2313 в DIP корпусе, DHT — 22 и 8×2 LCD 1602 дисплей. Взял я breadboard, быстро все соединил и принялся писать прошивку. Кстати для отладки я использовал LCD 16 x 2, так как у него пины расположены в один ряд и его проще соединять на монтажной плате. Я изначально хотел сделать работу от двух сенсоров внутренний — DHT22, внешний DS18B20, но памяти программ катастрофически не хватало, пришлось отказаться от идеи с внешним датчиком. В итоге написана прошивка только для работы с DHT — 22. Микроконтроллер тактируется от внутреннего осциллятора на 8МГц, но кто же запрещает внешний кварцевый резонатор? Фьюз биты по умолчанию, главное выбрать осциллятор и частоту 8МГц. Вот так выглядела отладочная модель:



Но постоянно загружать правки программы в реальное железо мне быстро надоело и я создал компьютерную модель в программе Proteus 8.

Схема устройства:



После окончательных правок, микропрограмма была загружена в микроконтролер и я наконец увидел результат.



Печатную плату я пока не проектировал, начал сборку на распаячной плате, так как в этом проекте минимум соединений. Микропрограмма написана на языке Си в Atmel Studio 7. Исходный код и файл симуляции схемы можно найти в моем репозитории на GitHub.
Устройство собрано на скорую руку на макетной плате навесным монтажом.


Далее все было засунуто в корпус Z-70:



Устройство питается от внешнего блока питания-«кубика» с выходным напряжением 5В, разъем питания — mini USB.

Этот проект сейчас также расположен на площадке Hackaday.io.

  • +1
  • 17 ноября 2020, 09:26
  • Jman

Комментарии (2)

RSS свернуть / развернуть
Если писать на ассемблере, то не только DS18b20 влезет в 2 кБ, но и часы можно добавить)))
0
Все чаще и чаще приходится огорчаться по поводу таких публикаций. Куда вы всегда торопитесь. Если уж собрались выложить материал, то делайте это качественно, или хоть сделайте вид что старались.
В общем тема не раскрыта. Поставил бы жирную двойку но воздержусь.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.