Съдържание:
- Стъпка 1: Типичен случай на употреба
- Стъпка 2: Код, използван в примера
- Стъпка 3: Внедрете нискочестотен RC филтър
- Стъпка 4: Програмно контролирайте подсветката
- Стъпка 5: Насладете се
Видео: 1602 LCD контрол на контраста от Arduino: 5 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
Докато работех по нов проект, попаднах на проблем, при който исках да контролирам подсветката и контраста на 1602 LCD дисплей през Arduino, но дисплеят беше наистина трептящ.
Стъпка 1: Типичен случай на употреба
В типичен случай на използване контрастът на дисплея се регулира чрез променлив резистор според листа с данни. В такъв случай чрез резистора можем да регулираме напрежението, което се вижда на щифта V0 и контрастът се регулира съответно. С Arduino най -доброто, което можем да изведем, е ШИМ сигнал с различен цикъл, но за съжаление модулът не е щастлив да го покаже.
Стъпка 2: Код, използван в примера
Преди да навляза в схемата как можем да поправим това, нека ви обясня кода, който използвам.
Първото нещо, което трябва да направим, е да включим библиотеката с течни кристали, за да можем да се свържем с дисплея. След това настройваме LCD дисплея с щифтовете, към които имаме свързан дисплея, и допълнително определяме щифтовете, към които имаме свързани подсветка и контрастни щифтове. Контролният щифт за контраст на дисплея е V0 и е свързан към щифт 6 на Arduino, а щифтът за управление на подсветката е маркиран като A и тъй като това по същество е светодиод, той е свързан чрез резистор 220 Ohm към пин 10 на Arduino.
В функцията за настройка първо настройваме яркостта на дисплея на максимум и след това започваме комуникация с LCD. За да се уверим, че работи правилно, извеждаме съобщение на „здравей свят“и чакаме около половин секунда, за да можем да проверим дали изходът е ОК.
Много често, в зависимост от състоянието на щифта V0, може да се сблъскате с проблема да не се показва нищо, въпреки че очакванията бяха различни. Причината за това е стойността на контрастния щифт. Ако контрастът е настроен твърде високо, дисплеят едва се вижда, така че трябва да го намалим.
В раздела за цикъл на кода първо изчистваме съдържанието на LCD и тъй като програмно ще променим контраста, показваме текст и в цикъл актуализираме изхода на пина и показваме текущата стойност на дисплея на втория ред.
Стъпка 3: Внедрете нискочестотен RC филтър
Както можете да видите, изглежда, че това работи, но дисплеят е мигащ. Причината за това е, че дисплеят очаква фиксирано напрежение, но вместо това получава PWM сигнал от Arduino. За да поправим това, добавяме много прост нискочестотен RC филтър, така че изходното напрежение да може да се филтрира и да получим относително стабилен изход.
Нискочестотният филтър се състои от 1 kOhm резистор, който от едната страна е свързан към щифта 6 на Arduino и след това към V0 на дисплея. Кондензаторът с 10 uF е свързан с отрицателната си страна към земята, а положителният е свързан с V0 щифта. Резисторът зарежда кондензатора с PWM импулси и в зависимост от работните цикли се зарежда до различно напрежение.
Стъпка 4: Програмно контролирайте подсветката
Подобно на начина, по който задаваме контраста, можем да направим същото и с щифта за подсветка, но без да е необходимо да добавяме нискочестотен филтър, тъй като светодиодът за подсветка не се вижда, докато се включва и изключва толкова бързо.
Стъпка 5: Насладете се
Надявам се, че този много прост трик ще ви помогне при следващия ви проект. Ако този Instructable ви е харесал, моля, помислете дали да ме последвате и да се абонирате за канала ми в YouTube.
Опитайте кода в YouTube!
Наздраве!
Препоръчано:
RC автомобил с Bluetooth контрол с контрол на скоростта и измерване на разстоянието: 8 стъпки
RC автомобил с Bluetooth контрол с контрол на скоростта и измерване на разстоянието: Като дете винаги съм бил очарован от RC колите. В днешно време можете да намерите много уроци, за да направите сами евтини RC автомобили с Bluetooth, с помощта на Arduino. Нека направим още една крачка напред и използваме нашите практически познания по кинематика, за да изчислим
Контрол на щорите с ESP8266, Google Home и Openhab интеграция и уеб контрол: 5 стъпки (със снимки)
Контрол на щори с ESP8266, интегриране и уебконтрол на Google Home и Openhab: В тази инструкция ще ви покажа как добавих автоматизация към моите щори. Исках да мога да добавя и премахвам автоматизацията, така че цялата инсталация е закрепена. Основните части са: Стъпков двигател Стъпков шофьор, управляван от bij ESP-01 Gear и монтаж
Контрол на яркостта ШИМ базиран LED контрол с помощта на бутони, Raspberry Pi и надраскване: 8 стъпки (със снимки)
Контрол на яркостта PWM управление на LED управление с помощта на бутони, Raspberry Pi и Scratch: Опитвах се да намеря начин да обясня как PWM работи на моите ученици, затова си поставих задачата да се опитам да контролирам яркостта на светодиода с помощта на 2 бутона - единият бутон увеличава яркостта на светодиода, а другият го затъмнява. Към програмата
Arduino LCD 16x2 Урок - Свързан 1602 LCD дисплей с Arduino Uno: 5 стъпки
Arduino LCD 16x2 Урок | Свързване на 1602 LCD дисплей с Arduino Uno: Здравейте момчета, тъй като много проекти се нуждаят от екран за показване на данните, независимо дали става въпрос за някакъв самоделен метър или дисплей за броя на абонатите в YouTube или калкулатор или заключване на клавиатурата с дисплей и ако всички тези видове проекти са направени с arduino те определи
I2C Контрол на подсветката на LCD дисплей 1602 /2004 или HD44780 и т.н.: 4 стъпки
I2C Контрол на подсветката на LCD дисплей 1602 /2004 или HD44780 Etc: Тази инструкция показва как можете да контролирате подсветката на LCD дисплей посредством I2C ADC модул. Контрастът може да се контролира по същия начин след премахване на потенциометъра за подстригване