Рідкокристалічний дисплей (LCD) мод. +1602 (даташит) - відмінний вибір для ваших проектів. Перше, що радує - низька ціна. Друге - наявність готових бібліотек під Arduino. Третє - наявність декількох модифікацій, які в тому числі йдуть з різними підсвічуваннями (блакитна, зелена). У цій статті розглянемо основи підключення даного дисплея до Arduino і наведемо приклад невеликого проекту для відображення рівня освітленості на дисплеї з використанням фоторезистора.
Контакти та схема підключення LCD 1602 до Arduino
Контакти на цьому дисплеї пронумеровані від 1 до 16. Завдано вони на задній частині плати. Як саме вони підключаються до Arduino, показано в таблиці нижче.
Табл. 1. Підключення контактів LCD 1620 до Arduino
Підключення 1602 до ArduinoЕслі дисплей 1602 харчується від Arduino через 5-ти вольтової USB-кабель і відповідний пін, для контакту контрасту дисплея (3-й коннектор - Contrast) можна використовувати номінал 2 кОм. Для Back LED + контакту можна використовувати резистор на 100 Ом. Можна використовувати і змінний резистор - потенціометр для настройки контрасту вручну.
На підставі таблиці 1 і схеми, наведеної нижче, підключіть ваш рідкокристалічний дисплей до Arduino. Для підключення вам знадобиться набір провідників. Бажано використовувати різнокольорові провідники, щоб не заплутатися.
Табл. 2. Перевага кольору провідників
Схема підключення LCD дисплея 1602 до Arduino:
Базовий приклад програми для роботи LCD 1602 з Arduino
У прикладі використовуються 0, 1, 2, 3, 4, і 5 Піни Arduino для підключення відповідних пинов 4, 6, 11, 12, 13 і 14 з дисплея 1 602 (дивись табл. 1). Після цього в коді для Arduino ми инициализируем lcd () наступним чином:
LiquidCrystal lcd (0, 1, 2, 3, 4, 5);
Цей шматок коду пояснює Arduino, як саме підключений LCD дисплей.
Весь соурс файл проекту метеостанції, в якій використовується дисплей LCD 1602 можна завантажити за цим посиланням.
LCD 1602A, Arduino і датчик освітленості (фоторезистор)
У прикладі ми розглянемо підключення модифікації дисплея - 1602A і фоторезистора. В результаті даного проекти ми зможемо відображати на дисплеї числові значення, пропорційні інтенсивності освітлення.
Даний приклад буде хорошим стартом для початківців розбиратися з Arduino. Варто звернути увагу, що у дисплея 1602 існують різні модифікації. Відповідно, розташування контактів на них можуть дещо відрізнятися.
необхідні матеріали
- 1 Arduino UNO;
- 1 макетна плата (63 рейки);
- 1 датчик освітленості (фоторезистор);
- 1 потенціометр на 50 кОм;
- 1 LCD дисплей 1602A;
- 1 резистор на 10кОм;
- 1 рейки конекторів (на 16 пінів);
- 1 USB кабель.
LCD Дисплей 1602A
Дисплеї, як правило, продаються без розпаяних конекторів. Тобто, паяльник в руках доведеться потримати. Вам знадобиться 16 пінів. Запаюють з боку коротких ніг, довгі залишайте для подальшого підключення до плати або іншим периферійних пристроїв.
Після розпаювання можете встановлювати дисплей на макетної платі. Бажано, на найнижчій доріжці, щоб у вас залишилася можливість з'єднувати дисплей через додаткові коннектори з платою.
Підключення дисплея 1602A до Arduino
Перше що необхідний про - живити дисплей. Підключіть два кабелі від +5 вольт і землі до відповідних рядах плюс-мінус на макетної платі.
Підключіть: пін на 5 вольт (5V) з Arduino до однієї з доріжок макетної плати.
Підключіть: пін Земля (GND) Arduino до іншої доріжок (макетної плати).
Після цього підключаємо харчування екрану і його підсвічування до доріжок, на макетної платі, на яких у нас виходить 5 вольт і мінус.
Підключіть: доріжку GND (мінус) на макетної платі до 1 піну на LCD екрані (він позначений як VSS).
Підключіть: доріжку 5 вольт (плюс) на макетної платі до 2 піну на LCD екрані (він позначений як VDD).
Підключіть: доріжку 5 вольт (плюс) на макетної платі до 15 піну на LCD екрані (він позначений як A).
Підключіть: доріжку GND (мінус) на макетної платі до 16 піну на LCD екрані (він позначений як K).
Підключаємо нашу Arduino до персонального комп'ютера через USB-кабель і вуаля! Екран повинен включитися.
Наступний крок - підключення потенціометра для регулювання контрастності дисплея. У більшості гайдів, використовується потенціометр на 10 кому, але 50 кому теж підійде. Через більшого діапазону значень опорів на виході потенціометра, більш точна настройка стає складніше, але для нас в даному випадку це не критично. Встановіть потенціометр на макетної платі і підключіть три його піна.
Підключіть: перший пін на потенціометрі до мінуса на макетке.
Підключіть: середній пін потенціометра до 3 піну на дисплеї (він позначений як V0).
Підключіть: третій пін на потенціометрі до плюса на макетке.
Після подачі живлення на плату через USB-кабель, на дисплеї перший ряд повинен заповнитися прямокутниками. Якщо ви їх не побачили, трохи проверніть ручку потенціометра зліва направо, щоб відрегулювати контраст. Надалі, коли ми будемо відображати числові значення на екрані, ви зможете більш точно відрегулювати контрастність. Якщо ваш дисплей виглядає приблизно так, ви все робите правильно:
Продовжимо. Тепер нам треба забезпечити обмін даними між Arduino і LCD дисплеєм 1602A для відображення символів.
Для цього підключіть 4 пін дисплея (RS) до 7 піну Arduino (жовтий конектор). 5 пін дисплея (RW) - до ряду пинов земля на макетке (чорний кабель).
6 пін дисплея (E) - до 8 піну Arduino (ШІМ).
11 пін дисплея (D4) - до 9 піну Arduino (ШІМ).
12 пін дисплея (D5) - до 10 піну Arduino (ШІМ).
13 пін дисплея (D6) - до 11 піну Arduino (ШІМ).
14 пін дисплея (D7) - до 12 піну Arduino (ШІМ).
Програма для Arduino IDE - відображення написи на дисплеї 1602A
Представлений нижче шматок коду досить скопіпастіть в Arduino IDE і завантажити на плату:
LiquidCrystal lcd (7, 8, 9, 10, 11. 12);
Після завантаження програми на плату, на дисплеї у другому рядку відобразиться наступна напис:
Своєрідний "hello world!" на LCD 1602A запущений. Я вас вітаю.
Підключаємо фоторезистор і заливаємо всю програму в Arduino
Тепер підключимо фоторезистор. Підключіть три дроти до вільних рейках на макетної платі (умовно пронумеруємо їх 1, 2, 3). Залиште в рейках трохи місця для самого датчика освітленості і резистора.
Рейці GND з макетної плати підключаємо до рейці 1. A0 (аналоговий вхід) з Arduino - до рейці 2. 5 вольт з макетної плати - до рейці 3.
Далі підключаємо наш датчик і резистор до підготовленим рейках. Які саме ноги йдуть до землі, а які - до харчування для нашого датчика освітленості і резистора неважливо (на відміну від, наприклад, світлодіоди, в якому є катод і анод). Так що тут не переплутати.
Датчик освітленості підключаємо до рейці 1 і рейці 2. Резистор - до рейці 2 і до рейці 3.
Тепер повернемося до нашої програми і додамо кілька рядків в порожнє поки що тіло функції loop ():
int sensorValue = analogRead (A0);
Після заливки на Arduino остаточної версії нашої програми, на дисплеї будуть відображатися на поточний рівень освітленості.
ARDUINO-DIY.COM - це інформаційний ресурс з кращими інструкціями і туторіали по використанню контролерів Arduino.
Завжди раді конструктивної співпраці. З усіма питаннями, побажаннями і пропозиціями звертайтеся на пошту [email protected].