За да се установи добра комуникация между човешкия свят и машинния свят, дисплейните единици играят важна роля. И така те са важна част от вградените системи. Екранни дисплеи - големи или малки, работят на същия основен принцип. Освен сложни дисплейни единици като графични дисплеи и 3D дисплеи, човек трябва да знае и работата с прости дисплеи като 16x1 и 16x2 единици. Дисплеят 16x1 ще има 16 символа и е в един ред. LCD 16x2 ще има 32 символа общо 16 в 1-ви ред и още 16 във 2-ри ред. Тук трябва да се разбере, че във всеки знак има 5x10 = 50 пиксела, така че за да се покаже един знак, всички 50 пиксела трябва да работят заедно. Но не трябва да се притесняваме за това, защото в дисплея има друг контролер (HD44780), който върши работата по управление на пикселите. (можете да го видите в LCD устройство,това е черното око отзад).
В този урок ще свържем 16x2 LCD с ARDUINO UNO. За разлика от нормалните платки за разработка, свързването на LCD с ARDUINO е доста лесно. Тук не трябва да се притесняваме за изпращане и получаване на данни. Трябва само да дефинираме номерата на пиновете и той ще бъде готов за показване на данни на LCD.
Необходими компоненти
Хардуер: ARDUINO UNO, захранване (5v), JHD_162ALCD (16x2LCD), кондензатор 100uF.
Софтуер: Arduino IDE (Arduino всяка вечер).
Електрическа схема и обяснение
В 16x2 LCD има 16 щифта, ако има задно осветление, ако няма задно осветление, ще има 14 извода. Човек може да захранва или да оставя щифтовете на задното осветление. Сега в 14-те извода има 8 извода за данни (7-14 или D0-D7), 2 извода за захранване (1 & 2 или VSS & VDD или GND & + 5v), 3 -ти извод за контрол на контраста (VEE - контролира колко дебели трябва да бъдат символите показани) и 3 контролни щифта (RS & RW & E).
Във веригата можете да забележите, че съм взел само два контролни щифта, това дава гъвкавост. Контрастният бит и READ / WRITE не се използват често, така че могат да бъдат късо заземени. Това поставя LCD в най-висок контраст и режим на четене. Просто трябва да контролираме ENABLE и RS щифтовете, за да изпращаме символи и данни по съответния начин.
Връзките, които се правят за LCD са дадени по-долу:
PIN1 или VSS към земята
PIN2 или VDD или VCC до + 5v мощност
PIN3 или VEE към земята (дава максимален контраст най-добър за начинаещи)
PIN4 или RS (Регистрация за избор) до PIN0 на ARDUINO UNO
PIN5 или RW (четене / запис) към земята (поставя LCD в режим на четене, улеснява комуникацията за потребителя)
ПИН6 или Е (Активиране) до ПИН1 на ARDUINO UNO
PIN11 или D4 до PIN8 на ARDUINO UNO
PIN12 или D5 до PIN9 на ARDUINO UNO
PIN13 или D6 до PIN10 на ARDUINO UNO
PIN14 или D7 до PIN11 на ARDUINO UNO
ARDUINO IDE позволява на потребителя да използва LCD в 4-битов режим. Този тип комуникация позволява на потребителя да намали използването на ПИН на ARDUINO, за разлика от други ARDUINO не е необходимо да се програмира отделно за използването му в 4 it режим, тъй като по подразбиране ARDUINO е настроен да комуникира в 4 битов режим. Във веригата можете да видите, че сме използвали 4-битова комуникация (D4-D7).
Така че само от наблюдение от горната таблица ние свързваме 6 щифта LCD към контролер, в който 4 щифта са щифтове за данни и 2 щифта за управление.
Горната фигура показва електрическата схема на 16x2 LCD, свързан към ARDUINO UNO.
Работещи
За да свържем LCD с ARDUINO UNO, трябва да знаем няколко неща.
|
Тъй като от горната таблица трябва само да разгледаме тези четири реда за установяване на комуникация между ARDUINO и LCD.
Първо трябва да активираме заглавния файл ('#include
Второ, трябва да кажем на дъската какъв тип LCD използваме тук. Тъй като имаме толкова много различни видове LCD (като 20x4, 16x2, 16x1 и т.н.). Тук ще свържем 16x2 LCD към UNO, за да получим 'lcd.begin (16, 2);'. За 16x1 получаваме 'lcd.begin (16, 1);'.
В тази инструкция ще кажем на дъската къде сме свързали щифтовете. Пиновете, които са свързани, трябва да бъдат представени по ред като „RS, En, D4, D5, D6, D7“. Тези щифтове трябва да бъдат представени правилно. Тъй като сме свързали RS към PIN0 и така нататък, както е показано в схемата, ние представяме номера на щифта, който трябва да се платира като „LiquidCrystal lcd (0, 1, 8, 9, 10, 11);“. Данните, които трябва да бъдат показани на LCD, трябва да бъдат написани като „cd.print („ здравей, свят! “);”. С тази команда LCD дисплеят показва „здравей, свят!“.
Както виждате, не е нужно да се притесняваме за нещо друго, просто трябва да инициализираме и ООН ще бъде готова за показване на данни. Не е нужно да пишем програмен цикъл, за да изпращаме данните байт по байт тук.
Начинът на комуникация между LCD и UNO е обяснен стъпка по стъпка в C кода, даден по-долу: