Использование ЖК-экрана LCD 1602 (12 проводов) без модуля I2C с Arduino
Этот проектный гид демонстрирует, как подключить ЖК-дисплей 16x2 (LCD1602) к плате Arduino без использования модуля I2C. LCD1602 - это универсальный компонент, используемый в различных приложениях для отображения текста и числовых данных. Этот проект открывает возможности для создания индивидуальных дисплеев для широкого спектра проектов.
Вот несколько идей проектов, которые вы можете создать, используя этот LCD1602 и Arduino.
- Простой цифровой часы
- Дисплей температуры и влажности
- Логгер данных в реальном времени, отображающий показания сенсоров.
- Пользовательская доска объявлений
- Дисплей игровой консоли
Аппаратное обеспечение/Компоненты
Для завершения этого проекта вам понадобятся следующие компоненты (в видео на 00:10):
- Плата Arduino (Uno или аналогичная)
- Модуль LCD 1602 (16 символов x 2 строки) - доступен в различных цветах (в видео на 00:47)
- Провода-перемычки
- 10kΩ потенциометр (для управления подсветкой) (в видео на 04:48)
- (Опционально) Макетная плата для упрощенного прототипирования (в видео на 02:40)
- (По желанию) Паяльник и припой (если вы добавляете разъемы к ЖК-дисплею) (в видео на :04)
Схема подключения

Схема проводки подробно объяснена в видео. Обратитесь к видео на [03:33] для визуального руководства и следующего резюме:
Связь между ЖК-дисплеем и Arduino имеет решающее значение. Для определенных контактов может понадобиться делитель напряжения в зависимости от вашей конкретной модели ЖК-дисплея. Видео показывает подробную схемы подключения (в видео на :02), использующую потенциометр для управления яркостью подсветки. Обратите особое внимание на назначение контактов (в видео на :39). Некорректная схема подключения может повредить ваши компоненты.
писание (сделано с использованием Fritzing).Схема (сделанная с помощью Fritzing). https://docs.arduino.cc/learn/electronics/lcd-displays/
Объяснение кода
Код использует библиотеку LiquidCrystal для Arduino (в видео на 07:33). Основные пользовательские настраиваемые части — это определения пинов и текст, который будет отображаться. Пример кода показывает, как инициализировать ЖК-экран, установить позицию курсора и вывести текст на экран.

// Pin definitions for LCD connection
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
Предоставленный код включает примеры для отображения статического текста (в видео на 08:34), сScrolling текста (в видео на 10:14) и пользовательских символов (в видео на 12:11). Вы можете изменить текст внутриlcd.print()функция для отображения вашего желаемого сообщения. Скорость прокрутки контролируется значениями задержки в цикле. (в видео на 10:49)
Живой проект/демонстрация
Видео демонстрирует полную настройку проекта (в видео на :28), показывая, как управлять яркостью подсветки с помощью потенциометра. (в видео на :32) Видео также включает примеры различных функций, таких как прокрутка текста и пользовательские символы (в видео на :14 и :11). Пример с последовательным монитором (в видео на :23) позволяет вам вводить текст через последовательный порт и отображать его на экране ЖК-дисплея.
Главы
- Введение в дисплей LCD 1602
- [00:44] Обзор дисплея LCD 1602
- [02:03] Подготовка ЖК-дисплея к подключению
- [03:33] Схема подключения и объяснение
- [04:02] Подробное объяснение проводки
- [07:23] Объяснение кода: Основная настройка
- [09:28] Живая демонстрация: Основное отображение текста
- [10:14] Объяснение кода: Прокручивающийся текст
- [11:49] Объяснение кода: дополнительные примеры
-->
// LCD1602 Display for Arduino
// January 21, 2018 14:25 this example will work with a 1602 LCD
// Code used for YouTube video for RoboJax channel
// Watch the video https://youtu.be/S4ya3Q7uhJs
// Video and other Arduino Tutorials http://robojax.com/learn/library
// January 21, 2018 14:25
// original source https://www.arduino.cc/en/Tutorial/HelloWorld
// include the library code:
#include <LiquidCrystal.h>
// initialize the library by associating any needed LCD interface pin
// with the arduino pin number it is connected to
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
void setup() {
// RoboJax LCD1602 Test
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
// RoboJax LCD1602 Test
}
void loop() {
// RoboJax LCD1602 Test
lcd.setCursor(0, 0);
lcd.print("RoboJax LCD Test");
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print("Hello World!");
delay(500);
// RoboJax LCD1602 Test
}
Ресурсы и ссылки
-
ВнешнийLCD1602 datasheet (PDF)cdn-shop.adafruit.com
Файлы📁
Нет доступных файлов.