Подключил модуль как на схеме ниже Подключил библиотеку, она тоже по ссылке ниже И вот исходный код,но вместо Hello, world выводит просто прямоугольники схема: http://zelectro.cc/Content/Uploads/71/Files/LCD_1602_I2C_module_connection_to_Arduino.jpg библиотека: код: Код (C++): //Тестировалось на Arduino IDE 1.0.5 #include <Wire.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27,16,2); /* Задаем адрес и размерность дисплея. При использовании LCD I2C модуля с дисплеем 20х04 ничего в коде изменять не требуется, cледует только задать правильную размерность */ void setup() { lcd.init(); // Инициализация lcd lcd.backlight(); // Включаем подсветку // Курсор находится в начале 1 строки lcd.print("Hello, world!"); // Выводим текст lcd.setCursor(0, 1); // Устанавливаем курсор в начало 2 строки lcd.print("zelectro.cc"); // Выводим текст } void loop() { }
Когда то сталкивался с такой проблемой. 1- Залей скетч I2C сканер, и посмотри есть ли что на шине. Код (C++): LiquidCrystal_I2C lcd(0x27,16,2); в этой строке 0х27 это адрес устройства, сканер I2C тебе покажет твой адрес, если отличается то замени. 2 - попробуй замени библиотеку. 3 - После того как я обновил Arduino IDE, мой рабочий проект перестал работать, на экране вместо строк, выводился только один символ, и всё. Я долго искал причину, пока не заменил Arduino IDE, на более старую версию (та которая у меня была до этого 1.6.3) и все сразу заработало.
Сам мучался с этой же проблемой, показывал только первый или пару первых символов. ошибка в библиотеке. исправить можно так: Ищем папку хранения библиотеки LiquidCrystal_I2C1602V1 (обычно по пути Документы -> Arduino ->libraries ->). открыть блокнотом LiquidCrystal_I2C.cpp Почти в начале документа ищешь код: #define printIIC(args) Wire.write(args) inline size_t LiquidCrystal_I2C::write(uint8_t value) { send(value, Rs); return 0; } Нужно заменить значение return 0 на return 1 И экран будет работать нормально!
К выше сказанному магу для новичков добавить 1.) Подключили дисплей,проверьте правильность подключения. 2.) Просканьте I2c Scanner (это простой скетч текст которого можно скопировать с http://robotclass.ru/articles/arduino-i2c-scanner/) результат сканирования смотрите в Мониторе последовательного порта, если сканируется запоминайте адрес что то вроди 0x3F или 0x27. Если сканер не сканирует то попробуйте установить другую версию Arduino IDE в на форумах рекомендуют 1.6.5 3.) Скачайте библиотеку LiquidCrystal_I2C, после всех манипуляций с подключением библиотеки в образцах скетчей выберите скетч "Hello World" и посмотрите строку кода LiquidCrystal_I2C lcd(0x27,16,2) если адрес такой же какой выдал сканер то заливайте скетч на плату все должно заработать как надо, если нет прав те строки с адресами.