16 × 2 LCD е наречен така, защото; има 16 колони и 2 реда. Налични са много комбинации като, 8 × 1, 8 × 2, 10 × 2, 16 × 1 и др. Но най-използваната е 16 * 2 LCD, затова я използваме тук.
Всички гореспоменати LCD дисплеи ще имат 16 пина, а подходът за програмиране също е един и същ и следователно изборът е оставен на вас. По-долу е Pinout и Pin описание на 16x2 LCD модул:
Ср |
ПИН No. |
Име на ПИН |
Тип щифт |
Описание на щифта |
Pin връзка |
1 |
ПИН 1 |
Земя |
Изходен ПИН |
Това е заземен щифт на LCD |
Свързан към земята на MCU / източник на захранване |
2 |
ПИН 2 |
VCC |
Изходен ПИН |
Това е щифтът на захранващото напрежение на LCD |
Свързан към захранващия щифт на източника на захранване |
3 |
ПИН 3 |
V0 / VEE |
Контролен щифт |
Регулира контраста на LCD дисплея. |
Свързан с променлив POT, който може да източник 0-5V |
4 |
ПИН 4 |
Регистрация Изберете |
Контролен щифт |
Превключва между Регистър на команди / данни |
Свързан с MCU щифт и получава или 0, или 1. 0 -> Команден режим 1-> Режим на данни |
5 |
ПИН 5 |
Чети пиши |
Контролен щифт |
Превключва LCD дисплея между операция за четене / запис |
Свързан с MCU щифт и получава или 0, или 1. 0 -> Операция за запис 1-> Операция за четене |
6 |
ПИН 6 |
Активиране |
Контролен щифт |
Трябва да се държи високо, за да се извърши операция за четене / запис |
Свързан с MCU и винаги държан високо. |
7 |
Щифт 7-14 |
Битове за данни (0-7) |
ПИН за данни / команда |
Пинове, използвани за изпращане на команди или данни към LCD. |
В 4-жичен режим Само 4 пина (0-3) са свързани към MCU В 8-жичен режим Всички 8 пина (0-7) са свързани към MCU |
8 |
ПИН 15 |
LED Положителен |
LED щифт |
Нормален LED като работа за осветяване на LCD |
Свързан към + 5V |
9 |
ПИН 16 |
LED отрицателен |
LED щифт |
Нормален LED като операция за осветяване на LCD, свързан с GND. |
Свързан със земята |
Добре е, ако не разбирате функцията на всички щифтове, ще обясня подробно по-долу. Сега, нека върнем обратно нашия LCD:
Тези черни кръгове се състоят от интерфейсна интегрална схема и свързаните с нея компоненти, за да ни помогнат да използваме този LCD с MCU. Тъй като нашият LCD е матричен LCD с 16 * 2 точки и затова ще има (16 * 2 = 32) общо 32 знака и всеки знак ще бъде направен от 5 * 8 пикселни точки. На долната снимка е показан единичен символ с активирани всички негови пиксели.
И така, сега знаем, че всеки знак има (5 * 8 = 40) 40 пиксела, а за 32 знака ще имаме (32 * 40) 1280 пиксела. Освен това LCD трябва да бъде инструктиран относно позицията на пикселите.
Ще бъде забързана задача да се справите с всичко с помощта на MCU, поради което се използва интерфейсна интегрална схема като HD44780, която е монтирана на самия LCD модул. Функцията на този IC е да получава командите и данните от MCU и да ги обработва, за да показва значима информация на нашия LCD екран.
Нека обсъдим различния тип режим и опции, налични в нашия LCD, който трябва да се контролира от нашите контролни щифтове.
4-битов и 8-битов режим на LCD:
LCD може да работи в два различни режима, а именно 4-битов режим и 8-битов режим. В 4-битов режим ние изпращаме данните с хапка, първо горната хапка и след това долната хапка. За тези от вас, които не знаят какво е хапане: хапането е група от четири бита, така че долните четири бита (D0-D3) на байт образуват долното хапване, докато горните четири бита (D4-D7) от байт образуват по-горното хапане. Това ни позволява да изпращаме 8 битови данни.
Докато в 8-битов режим можем да изпращаме 8-битовите данни директно с един ход, тъй като използваме всичките 8 линии за данни.
Сега трябва да сте се досетили, да, 8-битовият режим е по-бърз и безупречен от 4-битовия режим. Но основният недостатък е, че се нуждае от 8 линии за данни, свързани към микроконтролера. Това ще ни накара да свършим I / O щифтовете на нашия MCU, така че 4-битовият режим се използва широко. Не се използват контролни щифтове за задаване на тези режими. Просто начинът на програмиране се променя.
Режим на четене и запис на LCD:
Както беше казано, самият LCD се състои от интерфейсна интегрална схема. MCU може да чете или пише на този интерфейс IC. Повечето пъти ще пишем само до IC, тъй като четенето ще го направи по-сложен и такива сценарии са много редки. Информация, като позиция на курсора, прекъсвания за завършване на състоянието и т.н., може да бъде прочетена, ако е необходимо, но тя е извън обхвата на този урок.
Интерфейсната интегрална схема, присъстваща в по-голямата част от LCD дисплея, е HD44780U, за да програмираме нашия LCD, трябва да научим пълния лист с данни на IC. Информационният лист е даден тук.
LCD команди:
В LCD има някои инструкции за предварително зададени команди, които трябва да изпратим на LCD чрез някакъв микроконтролер. Някои важни командни инструкции са дадени по-долу:
Шестнадесетичен код |
Команда към регистър с инструкции на LCD |
0F |
LCD ВКЛ., Курсорът ВКЛ |
01 |
Ясен дисплей |
02 |
Върнете се у дома |
04 |
Намаляване на курсора (преместване на курсора наляво) |
06 |
Увеличаване на курсора (преместване на курсора надясно) |
05 |
Преместване на дисплея надясно |
07 |
Дисплей на смяна наляво |
0Е |
Дисплеят е ВКЛ., Курсорът мига |
80 |
Принуждавайте курсора до началото на първия ред |
С0 |
Принудително курсора до началото на втория ред |
38 |
2 реда и матрица 5 × 7 |
83 |
Курсор линия 1 позиция 3 |
3С |
Активирайте втория ред |
08 |
Дисплей OFF, курсорът OFF |
С1 |
Преминаване към втори ред, позиция 1 |
OC |
Дисплей ВКЛ., Курсорът ИЗКЛ |
С1 |
Преминаване към втори ред, позиция 1 |
С2 |
Преминаване към втори ред, позиция 2 |
Проверете нашите статии за взаимодействие с LCD с различни микроконтролери:
- LCD взаимодействие с микроконтролер 8051
- Свързване на LCD с микроконтролер ATmega32
- LCD взаимодействие с PIC микроконтролер
- Интерфейс 16x2 LCD с Arduino
- 16x2 LCD взаимодействие с Raspberry Pi с помощта на Python