понеділок, 23 січня 2017 р.

Гігрометри DHT11 і DHT22

DHT11 та DHT22.
Фото взято тут.
Згадані в назві сенсори користуються певною популярністю поміж любителів. Вони мають терпимі параметри, прості в роботі та зовсім дешеві (на ebay -- менше долара перший, 2.7$ -- другий). Правда, відносно повільні та, іноді, капризні.

При тому, хоча вся інформація про них в мережі є, але вона розсіяна по купі різних місць, а більшість даташітів взагалі китайською, іноді із перекладом у вигляді "підстрочника".  Так що, вирішив і я приєднатися до цього інформаційного хаосу. :-)
Скачати згадані даташіти, накопані на просторах Інтернету, можна тут.

Отож,  DHT11 і DHT22 міряють відносну вологість та температуру. Загальні характеристики:

понеділок, 9 січня 2017 р.

Дисплей Nokia 5110 на контролері PCD8544 - бібліотека для STM32

За мотивами попереднього поста, написав бібліотечку для роботи із ним за допомогою STM32. Бібліотека ще зовсім сира, але нею вже можна користуватися. В подальшому її код знаходитиметься на Github, але поки прикріпляю архівом. Опис нижче орієнтується на System Workbench for STM32 та STM32F3Discovery, хоча ні те ні те не є принциповим.

Увага! Так як бібліотека мала б розвиватися, дана стаття може доволі швидко застаріти. Але гарантій не дам. :-)

Огляд 

В списку нижче, цифрами вказано номери виносок, розшифрованих в технічних подробицях. Отож, бібліотека:
  • Дозволяє під'єднувати довільну кількість дисплеїв (1).
  • Підтримує вивід тексту: окремих літер, С-стрічок,  чисел, та стрічок, форматованих у стилі printf() (2).
  • Підтримує вивід довільних прямих. (5)
  • Вміє виводити прямокутники, зокрема -- заповнені. (5)
  • Вивід може відбуватися як "білими", так і чорними пікселями.
  • Надає доступ до всіх режимів дисплею та безпосереднього керування його параметрами.
  • На кожному дисплеї може використовуватися декілька незалежних вікон. Із кожним вікном пов'язаний свій "графічний" курсор, який задає лівий верхній кут виводу наступної літери (3).
  • Для кожного дисплея підтримує свій "відео"-буфер, котрий при оновленнях передається на пристрій для відображення.
  • Шрифт вкомільовується в код, моноширинний, але розмір символу не фіксується бібліотекою (4). 
  • У шрифті по замовчуванню підтримується кирилиця -- українська та російська. Кодування -- ASCII + CP1251.
  • На жаль, автоматично генерованої документації в коді ще немає. Планується. Поки дивіться код та користуйтеся цим постом. 

неділю, 8 січня 2017 р.

Дисплей Nokia 5110 на контролері PCD8544 - огляд

Власне, LCD Nokia 5110.
Фото звідси, там же можна зразу й
купити, хоча в китайців - дешевше.
Часто доводиться стикатися із цим симпатичним, хоч і зовсім простеньким, дисплеєм, нарешті вирішив описати, як він працює та як його програмувати.

Називають його Nokia 5110, за іменем телефону, де використовувався (також його використовувала Nokia 3310).  У ньому використано контролер дисплея Philips PCD8544.

Для визначеності, розглядатимемо на прикладі китайського модуля, типу того, що на фото праворуч. Adafruit стверджує, що самі дисплеї більше не випускаються -- в продажу старі запаси, але зріє в мене підозра, що китайці їх таки виготовляють потроху.