Ей там! Като доставчик на дисплеи на LCD символи, имах моя справедлив дял да се занимавам с всякакви проблеми, свързани с дисплея и конфигурации. Днес ще ви прегледам как да конфигурирате настройките на дисплея на дисплей на LCD символ.
Първо, първо, нека поговорим за видовете LCD символи се показва там. ИмамеAlphanumeric 1602A LCD дисплей, което е супер популярно. Той може да показва 16 знака на ред и има 2 реда. Тогава еLCD дисплей 16x1, което е чудесно, ако просто се нуждаете от дисплей с една линия. И за тези, които се нуждаят от повече пространство,20x4 LCD дисплейпредлага 20 знака на ред и 4 реда.
Разбиране на основите
Преди да започнем да конфигурираме, е важно да разберем основните компоненти на дисплея на LCD символи. Повечето от тези дисплеи имат контролер, обикновено HD44780 или съвместим. Този контролер е като мозъка на дисплея, управлявайки как се показват героите на екрана.
Дисплеят също има щифтове. Тези щифтове се използват за свързване на дисплея към микроконтролер или друго контролно устройство. Има мощностни щифтове (обикновено VSS, VDD и V0), щифтове за данни (D0 - D7) и контролни щифтове (RS, RW, E).
Захранване
Първата стъпка в конфигурирането на дисплея е да го захранвате правилно. Свържете VSS щифта към земята (GND), VDD щифта към 5V захранване. V0 щифтът се използва за контрол на контраста на дисплея. Можете да го свържете към потенциометър, за да можете лесно да регулирате контраста.


След като свържете захранването, дайте на дисплея няколко секунди, за да инициализирате. В този момент може да видите някои случайни знаци на екрана, но това е нормално.
Инициализиране на дисплея
Сега трябва да инициализираме дисплея, използвайки контролните щифтове. ПИН на RS (Регистрация Select) се използва, за да се каже на дисплея дали изпращаме команда или данни. Когато RS е нисък (0), изпращаме команда. Когато е високо (1), изпращаме данни.
Пин RW (четене/запис) се използва, за да посочи дали четем или пишем на дисплея. Обикновено ще пишем на дисплея, така че ще поддържаме този щифт ниско (0).
PIN E (Enable) се използва за затваряне на данните или командата в дисплея. Когато изпращаме команда или данни, първо задаваме подходящите стойности на щифтовете за данни, след което пулсираме E PIN високо и след това ниско.
За да инициализираме дисплея, трябва да изпратим серия от команди. Ето проста последователност в псевдокод:
// изчакайте дисплеят да захранва (15 ms); // Команда за настройка на функцията: 8 - битов режим, 2 - Дисплей на линия, 5x8 DOT матрица send_command (0x38); изчакайте (5 ms); // Команда за задаване на функция отново send_command (0x38); изчакайте (1 ms); // Функционална команда за задаване на още веднъж send_command (0x38); // Показване на контрола на включване/изключване: Показване на, курсор изключен, мигащ send_command (0x0c); // ясен дисплей send_command (0x01); изчакайте (2 ms); // Набор на режим на влизане: Увеличение на курсора, без изместване send_command (0x06);
Тази последователност настройва дисплея в 8 -битов режим, включва дисплея, изчиства екрана и задава поведението на курсора.
Изпращане на данни
След като дисплеят се инициализира, можем да започнем да изпращаме данни към него. За да изпратим символ, първо зададохме RS PIN високо, за да покажем, че изпращаме данни. След това поставяме ASCII кода на характера на щифтовете за данни и пулсираме E PIN.
Ето пример в Pseudocode за показване на думата "здравей":
// Задаване на RS високо за Set Data Set_rs (1); // Изпратете всеки символ на "здравей" send_data ('h'); send_data ('e'); send_data ('l'); send_data ('l'); send_data ('o');
Позициониране на курсора
Може да искате да покажете текст на различни позиции на екрана. За да направим това, използваме адреса DDRAM (Display Data RAM). Всяка позиция на екрана съответства на конкретен DDRAM адрес.
За дисплей 16x2 първият ред започва на адрес 0x80, а вторият ред започва на адрес 0xc0. За да преместим курсора в конкретна позиция, изпращаме команда със съответния DDRAM адрес. Например, за да преместим курсора в началото на втория ред на дисплей 16x2, изпращаме командата 0xc0.
// Преместете курсора в началото на втория ред send_command (0xc0); // Изпратете някакъв текст send_data ('w'); send_data ('o'); send_data ('r'); send_data ('l'); send_data ('d');
Регулиране на дисплея
Има и други команди, които можете да използвате, за да коригирате дисплея. Например, можете да включите или изключите курсора, да го изминете или да изместите целия дисплей наляво или надясно.
За да включите курсора, изпращате командата 0x0e. За да мигате, изпращате командата 0x0f. За да изместите дисплея наляво, изпращате командата 0x18 и за да го изместите надясно, изпращате командата 0x1c.
Отстраняване на неизправности
Ако имате проблеми с получаването на дисплея, ето някои често срещани проблеми и решения:
- Изобщо няма дисплей: Проверете захранващите връзки. Уверете се, че VDD получава 5V и VSS е свързан към земята. Също така, проверете корекцията на контраста. Може да се наложи да завъртите потенциометъра, за да получите правилния контраст.
- Случайни знаци на екрана: Това може да се дължи на неправилна инициализация. Уверете се, че изпращате правилните команди в правилната последователност.
- Героите не се показват правилно: Проверете връзките на данните. Уверете се, че щифтовете за данни са свързани правилно и че изпращате правилните ASCII кодове.
Заключение
Конфигурирането на настройките на дисплея на дисплей на LCD символи може да изглежда малко сложно в началото, но след като разберете основите, не е толкова трудно. Просто не забравяйте да захранвате правилно дисплея, инициализирайте го с правилните команди и изпращайте данни и команди, използвайки контролните щифтове.
Ако се интересувате от закупуване на дисплеи с LCD символи за вашите проекти, ние сме тук, за да ви помогнем. Независимо дали се нуждаете от малък 16x1 дисплей или по -голям дисплей 20x4, ние ви покрихме. Чувствайте се свободни да се свържете с нас за повече информация и да започнете преговори за покупка.
ЛИТЕРАТУРА
- HD44780 DataSheet
- Различни уроци за микроконтролер и LCD дисплей са достъпни онлайн.
