LCD дисплей 1602

Приобрел сегодня LCD дисплей 1602 (90р.) и контроллер интерфейса I2C (39р.) к нему.

LCD1602wI2S apartДисплей оснащен аналогом контроллера HD44780. Позволяет выводить 16 символов (5х8 точек) в 2 строки. Подсветка синяя (бывают другие). Питание 5В. Подробный datasheet.
Контроллер I2C интерфейса прежде всего «экономит» порты при подключении дисплея к Arduino, совместим с дисплеями 1602/1604/2004. Поддерживает I2C протокол. Установлен потенциометр для ручной регулировки яркости дисплея. Перемычки на А0..А2 позволяют задать адрес устройства по шине I2C в диапазоне от 0х20 до 0х27 (оригинальный).
Для удобства можно впаять контроллер интерфейса непосредственно в модуль дисплея, я же решил сделать это через разъем.
LCD1602wI2SПодключение модуля к Arduino соответственно выводам SDA, SLC, VCC, GND. Далее ищем подходящую библиотеку управления, например на GitHub, или вот тут. Тестовый скетч выглядит следующим образом:

//
// Тестовый скетч работы с дисплеем LCD1602 по интерфейсу I2C
//
#include <Wire.h>              // библиотека интерфейса I2C
#include <LCD.h>
#include <LiquidCrystal_I2C.h> // библиотека ЖК дисплея с интерфейсом I2C

#define I2C_ADDR     0x27     // I2C адрес интерфейса дисплея
// инициализация дисплея
LiquidCrystal_I2C iLCD(I2C_ADDR, 2, 1, 0, 4, 5, 6, 7);   

void setup() {
// выключим диод на плате
pinMode ( 13, OUTPUT );
digitalWrite ( 13, LOW );
iLCD.begin ( 16, 2 );             // конфигурация дисплея 16 х 2
iLCD.setBacklightPin(3,POSITIVE); // установка подсветки
iLCD.setBacklight(HIGH);          // включение подсветки
iLCD.home ();                     // курсор в правый левый угол
iLCD.print("Hello, ARDUINO ");
iLCD.setCursor ( 0, 1 );          // курсор в начало следующей строки
iLCD.print (" WORLD!  ");
}

void loop() {
}


Результат выполнения скетча:
LCD1602wI2S hello

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *