Ардуіно графічний жк дисплей nokia 5110, клас робототехніки

Символьний дисплей, який ми вже вивчили раніше. відкрив перед нами великі можливості в плані виведення інформації в «людському» вигляді. Можна виводити текстові повідомлення, значення різних параметрів, показники датчиків. Якщо. захотіти, можна навіть відобразити на символьному дисплеї «псевдографіку». Але що, якщо нам потрібно ще більший рівень інформативності? Якщо для розуміння процесу нам потрібен, наприклад, графік? Що, якщо ми хочемо відобразити стан роботи не сигналом світлодіода, а картинкою? Зобразити емоцію?

Ардуіно графічний жк дисплей nokia 5110, клас робототехніки

Допоможе нам у цій справі графічний дисплей, а саме Nokia 5110 (або 3310). Цей вид дисплеїв широко поширений в світі навчальних мікроелектронних платформ, таких як Ардуіно. Він легко підключається, і легко управляється навіть слабкими мікроконтролерами.

1. Підключення дисплея Nokia 5110

Дисплей монохромний, має дозвіл 84 × 48 точок. Як правило, дисплеї Nokia 5110, призначені для таких як ми з вами ентузіастів, поставляються на платі в парі з контролером PCD8544 і штирьовим роз'ємом. У такого дисплейного модуля є всього 8 ніг:

  • RST - скидання (Reset);
  • CE - вибір пристрою (Chip Select);
  • DC - вибір режиму (Data / Command select);
  • DIn - дані (Data In);
  • Clk - тактуючий сигнал (Clock);
  • Vcc - харчування 3 - 5 Вольт;
  • BL - підсвічування;
  • Gnd - земля.

Схема підключення до Ардуіно:

ЖК дисплей Nokia 5110

2. Програма. виведення тексту

Для управління дисплеєм нам буде потрібно бібліотека «Adafruit_GFX_Library», яку можна завантажити з офіційного сайту Adafruit:

Встановлюємо бібліотеку в Arduino IDE, і пробуємо вивести на наш дисплей простий текст «Hello world!»:

Як бачимо, все досить просто. Функція setContrast - визначає контраст дисплея. Це схоже на те, як якщо б ми крутимо потенціометр контрасту в схемі символьного дисплея. Якщо після запуску програми у нас на дисплеї нічого не видно, або видно погано - варіюємо значення контрасту.

Задаємо розмір шрифту функцією setTextSize. Якщо вказуємо 1, то кожна буква шрифту буде розміром 5 × 7 пікселів. Розмір 2 збільшить символи рівно в два рази по висоті і ширині.

Наступна корисна функція - setTextColor. У нас є всього два кольори - чорний і білий. Для них визначено дві константи: BLACK і WHITE.

Нарешті, setCursor (x, y) встановлює курсор в задані координати x і y, так само як в програмі символьного дисплея.

Безпосередньо, сам висновок тексту здійснюється вже знайомої функцією println.

Якщо все зробити правильно, отримаємо таку картинку:

Ардуіно графічний жк дисплей nokia 5110, клас робототехніки

3. Програма. висновок геометрії

Успішно вирішивши завдання з висновком тексту, спробуємо тепер попрацювати з примітивною графікою. Намалюємо трикутники, кола та інші фігури.

За отрисовку окружності відповідає функція drawCircle. Приклад виклику функції для окружності з центром в точці, радіусом 5 пікселів і чорним кольором:

Тепер спробуємо прямокутник з координатами верхнього лівого кута, нижнього правого, і кольором BLACK (чорний, чи то пак).

drawRect (10, 10, 20, 20, BLACK);

Функція drawRoundRect - намалює прямокутник з округленими кутами. Також у цих двох функцій є варіанти із суцільною заливкою внутрішньої частини фігури: fillRect і fillRoundRect.

У трикутника слід задати всі три пари координат:

drawTriangle (10, 10, 20, 10, 20, 20, BLACK);

І у нього теж є варіант з заливкою - fillTriangle.

Нарешті, просто відрізок з точки до точки:

І найпростіше, що можна намалювати - один піксель:

А ось як буде виглядати програма, якщо ми захочемо намалювати деякі з цих фігур, по-черзі:

5. Програма. підготовка зображень

А тепер, скористаємося всією потужністю графічного дисплея - виведемо на нього зображення!

Щоб відобразити на дисплеї картинку, нам буде потрібно привести її до потрібного розміру і формату. Як уже згадувалося, дисплей Nokia 5110 має дозвіл 84 × 48 точок. Значить і наша картинка повинна бути точно таким же розміром.

Ардуіно графічний жк дисплей nokia 5110, клас робототехніки

Ардуіно графічний жк дисплей nokia 5110, клас робототехніки

Просто вибираємо підготовлений bmp файл на локальному комп'ютері, і вказуємо одну з систем числення: двійкову або шістнадцяткову. Обидві однаково підходять для нашої мети.

Результатом роботи цього веб-сервісу стане величезний масив двійкових чисел, який ми повинні будемо вставити в наступну програму:

Ардуіно графічний жк дисплей nokia 5110, клас робототехніки

Ось і все на сьогодні! У наступному уроці на тему Nokia 5110 ми спробуємо анімувати зображення на дисплеї. Спробуємо навіть зробити невелику гру!

Схожі статті