Нумерация выводов ЖК-дисплея против нумерации выводов контроллера I2C против эскиза
Я игрался с Arduino Uno, пытаясь заставить 16x2 LCD-экран работать с контроллером I2C. У меня есть этот LCD-экран и этот контроллер. И я пытался заставить работать скетч ниже.
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7,3,POSITIVE);//, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
void setup()
{
lcd.begin(16,2);
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Hello world!");
lcd.setCursor(0, 1);
lcd.print("Row number: ");
lcd.setCursor(12, 1);
lcd.print("2");
}
void loop()
{
}
Я использовал сканер адресов, чтобы проверить правильность адреса (39 [0x27]), но он все равно ничего не отображает. Он загорается, и я пробовал регулировать контрастность, но он просто не отображает никаких символов.
Мне интересно, правильно ли определено, какие пины какие, но я не могу найти ничего, подробно описывающего, как числа, используемые в эскизе, соотносятся с пинами на контроллере, которые затем соотносятся с пинами на ЖК-экране. Если кто-то может дать мне некоторое представление, я буду признателен.
1 ответ
Да, пины могут отличаться в зависимости от ЖК-дисплея и контроллера. Мое любимое решение этой проблемы — запустить простой скетч «i2c guesser», который можно загрузить из следующей ветки форума (ссылка для загрузки находится внизу первого поста): http://forum.arduino.cc/index.php?topic=260510.0
С помощью этого эскиза мне обычно требуется всего пара минут, чтобы найти правильные номера выводов.
- ЖК-дисплей I2C отображает странные символы
- Экран LCD 16*02 I2C показывает только первый напечатанный символ
- 16/2 arduino I2C ЖК-дисплей не загорается?
- Отправка буквы за буквой на ЖК-дисплей, однако дисплей знает полную строку?
- Альтернатива LCD-дисплеям UART/I2C?
- Датчики I2C не работают при подключении к LCD дисплею 20X04
- Проблема стабильности кода прерываний, связанного с датчиком расхода
- Проблемы с подключением ЖК-дисплея I2C
Если это поможет, то контакты на ЖК-экране обозначены следующим образом: 1 VSS VDD V0 RS RW E D0 D1 D2 D3 D4 D5 D6 D7 AK 16, @everythingfunctional
Пока что я попробовал несколько разных вещей: я добавил быстрый цикл для мигания подсветки, который работает с конструктором, как показано; я добавил подтягивающие резисторы к контактам данных и синхронизации, что, похоже, ни на что не повлияло; я попробовал переключить соединения данных и синхронизации на всякий случай, что затем заставило подсветку не мигать. Я также добавлю, что Я ИСПОЛЬЗУЮ более новую библиотеку LiquidCrystal от fmalpartida отсюда [отсюда](https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/Home). Ничего не сработало. У кого-нибудь есть еще предложения, пожалуйста?, @everythingfunctional