Стандартний однорядковий символьний індикатор. 16 символів у рядку. Розпіновка ідентична Winstar WH1601A , кирилиця. Живлення 5В. Жовте тло. Сірі символи. Підсвічування.
Стандартний
однорядковий символьний індикатор
16 символів у рядку. Сірі символи на жовтому тлі. Має кириличні символи (
кирилиця) у таблиці знакогенератора контролера. Використовується контролер
ks0066 , що є аналогом
HD44780 і підходить як заміна для нього. Напруга живлення дисплея
5 В.
Розпіновка ідентична індикаторам фірми
Winstar. Підсвічування дисплея вже під'єднано через струмообмежувальний резистор на платі до виводів 15 і 16. Для налаштування контрастності символів потрібно встановити резистивний подільник (наприклад, підстроювальний резистор або потенціометр) середньою точкою до виводу Vo, іншими кінцями — до живлення індикатора.
Розпіновка індикатора й креслення:
Використання індикатора:
Для виведення символів на дисплей потрібен мікроконтролер або мікропроцесор. Керування відбувається через паралельний інтерфейс, що складається з:
RS, R/W, E, DB0-DB7 (лінія даних) . Докладніше про керування — у даташиті.
Перевірку цього модуля проводили на
Arduino UNO за допомогою стандартної бібліотеки
LiquidCrystal і доданих до неї прикладів скетчів. З її допомогою можна виводити на дисплей латинські символи й числа. Відкриймо стандартний приклад-скетч
HelloWorld з папки LiquidCrystal. Під'єднуємо дисплей до пінів Ардуїно згідно з описом у скетчі. У рядку "
lcd.begin(16, 2);" змінюємо 16 на 8 — це кількість символів у рядку. Рядок "
lcd.print("hello, world!");" виводить "
hello, world!" на дисплей.
Кирилицю ця бібліотека з низки причин не сприймає, але може вивести напряму будь-який символ з таблиці знакогенератора. Так, посимвольно, можна виводити на дисплей і кириличний текст. Для цього можна використати два методи.
Перший метод: використовуючи функцію "
lcd.write();". Щоб вивести символ із таблиці, досить указати його адресу у двійковому або шістнадцятковому форматі. Наприклад, ми хочемо вивести літеру "Д". Дивимося в таблицю й дізнаємося її адресу: HHHL для старших 4 біт і LLLL для молодших. У двійковому вигляді це відповідає
0b11100000 , у шістнадцятковому вигляді це
0xE0. У результаті отримаємо "
lcd.write(0b11100000);" або "
lcd.write(0xE0);".
Другий метод: використовуючи escape-послідовність
\x## у рядку виведення рядка через функцію
"lcd.print();" . Як
## використовуємо шістнадцятковий код символу з таблиці. Наприклад, рядок
"lcd.print("\xE0" "o" "\xBC");" виведе на дисплей напис "
Дім".
Також існують сторонні бібліотеки на кшталт
LiquidCrystalRus , здатні "правильно" відображати кириличні символи з рядка. Залежно від версії
ARDUINO IDE і його бібліотек працює зі змінним успіхом, часто конфліктуючи зі стандартною бібліотекою.
Таблиця знакогенератора індикатора: