Здравейте! Като доставчик наLCD дисплей 16x2, често ме питат как да накарам тези изящни малки дисплеи да се движат хоризонтално. Това е доста страхотна функция, която може да добави много функционалност и усет към вашите проекти, независимо дали работите върху електронен проект „Направи си сам“ или професионално приложение. Така че, нека се потопим направо и да проучим как можете да постигнете това.
Разбиране на основите на 16x2 LCD дисплей
Първо, нека набързо да разгледаме какво е 16x2 LCD дисплей. 16x2 LCD дисплей, както подсказва името, има 16 знака на ред и 2 реда. Това е популярен избор за много проекти за електроника, защото е сравнително лесен за работа и осигурява ясен начин за показване на информация.
Дисплеят използва контролер, обикновено HD44780 или съвместим, за управление на знаците и техните позиции на екрана. За да накараме дисплея да се движи хоризонтално, ще трябва да взаимодействаме с този контролер по специфичен начин.
Хардуерна настройка
Преди да започнем да кодираме, трябва да се уверим, че нашият хардуер е настроен правилно. Ето основно описание на това, от което се нуждаете:


- АLCD дисплей 16x2. Можете да изберете a16 * 2 жълт LCD дисплейако предпочитате различен цвят.
- Микроконтролер (като Arduino). Това ще бъде мозъкът на нашата операция, изпращайки команди към LCD дисплея.
- Някои джъмперни кабели за свързване на микроконтролера към LCD дисплея.
Ето проста електрическа схема за свързване на Arduino към 16x2 LCD дисплей:
- Свържете VSS щифта на LCD към GND на Arduino.
- Свържете VDD щифта на LCD към 5V на Arduino.
- Свържете VO щифта на LCD дисплея към средния щифт на потенциометъра. Другите два пина на потенциометъра са свързани към 5V и GND. Това ви позволява да регулирате контраста на дисплея.
- Свържете RS щифта на LCD дисплея към цифров щифт 12 на Arduino.
- Свържете щифта E на LCD дисплея към цифровия щифт 11 на Arduino.
- Свържете щифтовете D4 - D7 на LCD дисплея към цифровите щифтове 5 - 8 на Arduino.
- Свържете щифта RW на LCD към GND.
- Свържете щифтовете LED+ и LED- на LCD към 5V и GND съответно, за да захранвате подсветката.
Кодиране за хоризонтално превъртане
След като нашият хардуер е настроен, е време да напишем кода. Ще използваме Arduino IDE, за да напишем и качим кода в нашия микроконтролер.
#include <LiquidCrystal.h> // инициализиране на библиотеката с номерата на интерфейсните пинове LiquidCrystal lcd(12, 11, 5, 6, 7, 8); void setup() { // настройка на броя колони и редове на LCD: lcd.begin(16, 2); // Отпечатване на съобщение на LCD. lcd.print("Здравей, свят!"); забавяне (1000); } void loop() { // Превъртете дисплея наляво за (int i = 0; i < 16; i++) { lcd.scrollDisplayLeft(); забавяне (200); } // Превъртете дисплея надясно за (int i = 0; i < 16; i++) { lcd.scrollDisplayRight(); забавяне (200); } // Нулиране на позицията на дисплея lcd.setCursor(0, 0); забавяне (1000); }
Нека разбием какво се случва в този код:
#include <LiquidCrystal.h>: Тази линия включва библиотеката LiquidCrystal, която предоставя функции за взаимодействие с LCD дисплея.LiquidCrystal lcd (12, 11, 5, 6, 7, 8);: Този ред инициализира LCD обекта с номерата на пиновете, към които сме свързали LCD на Arduino.lcd.begin(16, 2);: Този ред казва на LCD, че има 16 колони и 2 реда.lcd.print("Здравей, свят!");: Този ред отпечатва съобщението "Hello, World!" към LCD.lcd.scrollDisplayLeft();: Тази функция превърта цялото съдържание на LCD дисплея с един знак наляво.lcd.scrollDisplayRight();: Тази функция превърта цялото съдържание на LCD дисплея с един знак надясно.lcd.setCursor(0, 0);: Тази функция премества курсора в горния ляв ъгъл на дисплея.
Разширени техники за превъртане
Ако искате да станете малко по-креативни с превъртането, можете да опитате някои усъвършенствани техники. Например, можете да превъртате само част от дисплея или да превъртате с различни скорости.
Ето пример за това как можете да превъртите само втория ред на дисплея:
#include <LiquidCrystal.h> // инициализиране на библиотеката с номерата на интерфейсните пинове LiquidCrystal lcd(12, 11, 5, 6, 7, 8); void setup() { // настройка на броя колони и редове на LCD: lcd.begin(16, 2); // Отпечатване на съобщение на LCD. lcd.print("Горен ред"); lcd.setCursor(0, 1); lcd.print("Долен ред"); забавяне (1000); } void loop() { // Превъртете втория ред наляво за (int i = 0; i < 16; i++) { lcd.setCursor(0, 1); lcd.scrollDisplayLeft(); забавяне (200); } // Превъртете втория ред надясно за (int i = 0; i < 16; i++) { lcd.setCursor(0, 1); lcd.scrollDisplayRight(); забавяне (200); } // Нулиране на позицията на дисплея lcd.setCursor(0, 1); забавяне (1000); }
В този код използвамеlcd.setCursor(0, 1)функция за преместване на курсора на втория ред преди превъртане. Това гарантира, че се превърта само вторият ред.
Отстраняване на неизправности
Ако имате проблеми с хоризонталното превъртане на вашия LCD дисплей, ето няколко неща, които трябва да проверите:
- Окабеляване: Уверете се, че всичките ви връзки са сигурни и че сте свързали правилно щифтовете.
- Код: Проверете кода си за синтактични или логически грешки.
- Мощност: Уверете се, че LCD дисплеят получава достатъчно енергия. Ако подсветката е слаба или дисплеят изобщо не работи, това може да е проблем със захранването.
Заключение
Създаване наLCD дисплей 16x2хоризонталното превъртане е забавна и полезна техника, която може да подобри вашите електронни проекти. Независимо дали сте начинаещ или опитен любител, надявам се това ръководство да ви е помогнало да разберете как да постигнете това.
Ако сте на пазара за високо качествоLCD дисплей 16x2илиLCD cog дисплей, не се колебайте да се свържете с нас. Ние сме тук, за да ви предоставим най-добрите продукти и поддръжка за вашите проекти. Свържете се с нас, за да обсъдим вашите изисквания и да започнете следващия си проект с увереност.
Референции
- Документация на библиотеката Arduino LiquidCrystal
- Лист с данни на LCD контролера HD44780