Мазмұны:
Бейне: Жалғыз СКД желісін айналдыру: 4 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
Сұйық кристалды кітапханада scrollDisplayLeft () және scrollDisplayRight () екі пайдалы функциясы бар. Бұл функциялар бүкіл дисплейді айналдырады. Яғни, олар 1602 СКД -да екі жолды да, 2004 жылғы СКД барлық төрт жолды айналдырады. Бізге жиі қажет нәрсе - бұл бүкіл дисплейді айналдырмай, осы дисплейлерге бір жолды айналдыру мүмкіндігі.
Бұл нұсқаулық қосымша екі функцияны ұсынады: scrollInFromRight (мәтінді көрсететін жол, айналдырылатын жол) және scrollInFromLeft (мәтінді көрсететін жол, айналдырылатын жол). Сұйық кристалды экранға сызықтарды айналдыратын бұл екі функция, мен ұсынған бұрынғы нұсқаулықтан scrollLineRight (мәтінді көрсетуге арналған жол, айналдыру керек жол) және scrollLineLeft (мәтінді көрсетуге арналған жол, айналдырылатын жол). жолдарды экраннан жылжыту функциялары СКД экранында мәтінді қалай ұсынуға немесе алып тастауға болатынын басқарудың бірнеше қуатты әдістерін береді.
1 -қадам: не қажет
- 1602 немесе 2004 ЖК дербес дисплейі немесе СКД қалқаны
- 2004 жылғы СКД дисплейді қолдану туралы төмендегі ескертпеге қараңыз
- Arduino UNO R3 немесе клон
- Arduino -ны компьютерге қосуға арналған USB кабелі
- Жартылай өлшемді, 400 байлау нүктесі, нан тақтасы
- Arduino IDE
- Эксперименттік платформа (міндетті емес, бірақ пайдалы)
Қажетті элементтер - бұл 1602 немесе 2004 СКД экраны [егер 2004 қолданылса, lcd.begin () функциясын өзгерту арқылы оң жақтан жылжу еш қиындықсыз жұмыс істейді, сіз қазір 20 таңбалы x 4 жолын қолданасыз. көрсету. [2004 жылғы дисплей арқылы солға жылжу үшін, crollInFromLeft () функциясының кодын қайта жазу қажет]. СКД -ден басқа сізге Arduino UNO немесе клоны, Arduino IDE және Arduino -ны компьютерге қосу үшін USB кабелі қажет болады.
Мұнда көрсетілген СКД орнына СКД қалқаны қолдануға болады. Егер бұлай болса, төмендегі эскиздегі СКД үшін түйреуіштердің тағайындауларын өзгерту қажет болады.
- 1602 дербес СКД дисплейі үшін мен эскиздерде келесі түйреуіштерді қолдандым:
// LiquidCrystal (rs, қосу, d4, d5, d6, d7)
LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
және LiquidCrystal.h Liquid Crystal кітапханасын қамтыды.
- СКД экраны үшін мен эскиздерде келесі түйреуіштерді қолданамын, сонымен қатар LiquidCrystal.h Сұйық кристалды кітапханасын қосамын.
// LiquidCrystal (rs, қосу, d4, d5, d6, d7)
LiquidCrystal lcd (8, 13, 9, 4, 5, 6, 7);
Кез келген бағыт кодты осында қолданады, яғни СКД қалқаны немесе дербес СКД. Бұл нұсқаулықта 1602 автономды СКД дисплейі қолданылды, бірақ, егер әр түрлі түйреуіштердің тағайындалуы ескерілсе, 1602 қалқанын қолдануға болады.
Мен Arduino UNO-ны жартылай өлшемді, 400 байлау нүктесіне, нан тақтасына қосу үшін «тәжірибелік платформаны» қолдандым. («Arduino UNO R3 үшін эксперименттік платформа, оны пайдалануға қалай дайындау керек» деген нұсқаулықты қараңыз). Алайда, эксперименталды платформа қажет емес, дегенмен мен үшін бұл СК -ны БҰҰ -ға қосуды әлдеқайда жеңіл әрі жылдам етеді.
СКД -ны БҰҰ -ға қосу үшін қолданған тапсырмаларды жоғарыда көруге болады.
2 -қадам: қосылу
СКД тақтаға қосылады, содан кейін жалғау сымдары нан тақтасынан Arduino -дегі тиісті түйреуіштерге қосылады (егер мен қолданған қосылымдар бойынша сұрақтарыңыз болса, 2 -қадамды қараңыз).
Мен бұл жоба үшін қалқаннан гөрі автономды СКД -ны таңдадым, себебі бұл маған қанағаттандырарлық болды және маған қандай түйреуіштер бар екенін оңай көруге мүмкіндік берді. Бұл сонымен қатар бұрағышпен реттелетін қалқанның потенциометріне емес, тұтқасы бар потенциометрді пайдалануға мүмкіндік береді.
Автономды СКД бөлек 10к Ом потенциометрді қолдануды талап етеді. Жоғарыда айтылғандай, мен тазартқышы үшінші СКД түйреуішіне қосылған тұтқасы бар біреуді қолдандым (СКД түйреуіштері сізге қараған кезде оң жақтан санау). Потенциометр СКД контрастын бақылау үшін қолданылады. Қосылымдар 1602 және 2004 жылдар үшін бірдей. Алайда, lcd.begin (16, 2) мәлімдемесін сызбада lcd.begin (20, 4) деп өзгерту керек, бұл біздің СКД 16 -дан өзгергенін көрсету үшін. екі жолдан тұратын таңба 20 таңбадан төрт жолға дейін.
Қосылған фотосуреттерге шолу мен қолданған қосылымды, соның ішінде эксперименттік платформаны және 10к потенциометрді көрсетеді.
3 -қадам: Эскиз
Қосылған нобайды Arduino IDE -ге енгізіңіз. Нұсқаулық сайт жиі белгілер мен олардың арасындағы үлкенді және кішіні алып тастайтынын есте сақтаңыз. Осылайша, #include LiquidCrystal.h мәтінін енгізіп, LiquidCrystal.h сөздерін таңбадан үлкен және кіші етіп енгізіңіз.
// СКД экранына таңбаларды жылжыту үшін эскиз
#қосу // Мәтіннен мұнда не қажет екенін қараңыз, яғни ішіне LiquidCrystal.h.
// символдан үлкен және кіші
// Бұл сайт көбінесе символдан үлкенді және кішіні және олардың арасындағы мәтінді жояды
// LiquidCrystal (rs, қосу, d4, d5, d6, d7)
LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
// lcd -ті LiquidCrystal нысаны ретінде жариялау
int i = 0;
int j = 0;
int k = 0;
int delayTime2 = 350; // Ауысулар арасындағы кідіріс
жарамсыз scrollInFromRight (int line, char str1 ) {
// Жазған Р. Джордан Крейндлер, маусым 2016 ж
i = strlen (str1);
үшін (j = 16; j> = 0; j--) {
lcd.setCursor (0, жол);
үшін (k = 0; k <= 15; k ++) {
lcd.print («»); // Сызықты тазалау
}
lcd.setCursor (j, жол);
lcd.print (str1);
кешіктіру (delayTime2);
}
}
жарамсыз scrollInFromLeft (int line, char str1 ) {
// Жазған Р. Джордан Крейндлер, маусым 2016 ж
i = 40 - стрлен (str1);
жол = жол - 1;
үшін (j = i; j <= i+16; j ++) {
үшін (k = 0; k <= 15; k ++) {
lcd.print («»); // Сызықты тазалау
}
lcd.setCursor (j, жол);
lcd.print (str1);
кешіктіру (delayTime2);
}
}
жарамсыз орнату () {
Serial.begin (9600);
Serial.println («Бастапқы тест…»);
lcd.begin (16, 2);
lcd.clear ();
lcd.print («Тек тест»);
}
void loop () {
lcd.clear ();
scrollInFromRight (0, «Оң жақтан 1 -жол»);
scrollInFromRight (1, «Оң жақтан 2 -жол»);
lcd.clear ();
scrollInFromLeft (0, «Сол жақтан 1 -жол»);
scrollInFromLeft (1, «Сол жақтан 2 -жол.»);
lcd.clear ();
scrollInFromRight (0, «Оң жақтан 1 -жол»);
scrollInFromLeft (1, «Сол жақтан 2 -жол»);
lcd.clear ();
}
Екі функция: scrollInFromRight (мәтінді көрсететін жол, айналдырылатын жол) және scrollInFromLeft (мәтінді көрсететін жол, айналдырылатын жол) СКД экранына өтетін сызықтарды басқару үшін нобайға жылжытылуы мүмкін. Бұл функциялар экранға жаңа мәтінді жылжытудың тамаша әдісін ұсынады.
Нұсқаулықтағы «Жалғыз СКД желісін солға немесе оңға қарай жылжыту» нұсқаулығындағы екі функциямен біріктірілгенде, төрт функция СКД дисплейіне мәтінді жылжытудың тамаша әдістерін ұсынады. Бұл функциялар мәтінді бір жолға жылжытуға мүмкіндік береді және scrollDisplayLeft () және scrollDisplayRight () функциялары сияқты бүкіл дисплейді айналдыруды қажет етпейді.
Бұл айналдыру мүмкіндігі бізге дисплей әдетте көрсете алатын ұзынырақ сызықтарды ұсынуға мүмкіндік береді. Яғни, 1602 дисплейі үшін біз бір жолға тек 16 таңбамен шектелмейміз (бірақ бір уақытта тек 16 көрсететін болады), ал 2004 жылы біз әр жолға 20 таңбамен шектелмегенбіз.
Сонымен қатар, айналдыру арасындағы көрсету уақытын сіздің қажеттіліктеріңізге сәйкес келтіргіңіз келуі мүмкін.
4 -қадам: Кейін
Бар болғаны осы. Бұл функцияларды және менің алдыңғы нұсқаулығымның екеуін СКД қолданатын және мәтінді көрсететін кез келген нобайға қосуға болады. Жоғарыда айтылғандай, ұзын сызықтарды пайдалану мүмкіндігі - бұл айналдыруды қолдану арқылы мүмкін болатын нақты артықшылық.
Егер сіз маған қандай да бір сұрақтар бойынша немесе қосымша ақпарат алу үшін хабарласқыңыз келсе немесе ұсынылған саладағы білімімді кеңейткіңіз келсе, маған [email protected] электронды поштасы бойынша хабарласа аласыз. (менімен байланысу үшін екінші 'i' белгісін 'e' әрпіне ауыстырыңыз.
Ұсынылған:
Bluetooth басқарылатын Messenger СКД -- 16x2 СКД -- Hc05 -- Қарапайым -- Сымсыз хабарландыру тақтасы: 8 қадам
Bluetooth басқарылатын Messenger СКД || 16x2 СКД || Hc05 || Қарапайым || Сымсыз хабарландыру тақтасы: …………………………. Басқа бейнелер үшін менің YouTube каналыма ТІРКЕЛІҢІЗ …… ………………………………… Хабарландыру тақтасы адамдарды жаңа ақпаратпен жаңарту үшін қолданылады немесе егер сіз хабарламаны бөлмеде немесе жартылай жібергіңіз келсе
СКД басқыншылары: 16x2 СКД дисплейіндегі ойын сияқты ғарыштық басқыншылар: 7 қадам
СКД басқыншылары: 16x2 СКД дисплейіндегі ғарыштық басқыншылар ойыны: Аңызға айналған «Космостық басқыншылар» ойынын енгізудің қажеті жоқ. Бұл жобаның ең қызықты ерекшелігі - бұл графикалық шығару үшін мәтіндік дисплейді қолдану. Бұған 8 таңбалы таңбаны енгізу арқылы қол жеткізуге болады. Сіз толық Arduino жүктей аласыз
Интерфейс Arduino Uno -ға ортақ деректер желісін қолдана отырып, бірнеше СКД: 5 қадам
Интерфейс көп деректер желісін қолдана отырып Arduino Uno -ға арналған бірнеше СКД: Бүгін мен бұл нұсқаулықта сізге 16x2 СКД модулін arduino uno тақтасымен ортақ деректер желісін қолдана отырып қалай байланыстыру керектігін көрсетемін. Бұл жобаның ең қызықтысы - бұл ортақ деректер желісін қолданады және әр түрлі деректерді электронды түрде көрсетеді
I2C / IIC СКД дисплей - IUC LCD дисплейіне SPI СКД дисплейін Arduino көмегімен SPI - IIC модулін қолданып қолданыңыз: 5 қадам
СКД дисплейі I2C / IIC | IUC LCD дисплейіне SPI LCD дисплейін Arduino көмегімен SPI мен IIC модулін қолдана отырып қолданыңыз: Сәлеметсіздер ме, балалар, өйткені қалыпты SPI LCD 1602 сымдары өте көп, сондықтан оларды arduino -мен байланыстыру өте қиын, бірақ нарықта бір модуль бар. SPI дисплейін IIC дисплейіне түрлендіріңіз, сонда сізге тек 4 сымды қосу қажет
Тітіркендіргіш айналдыру дөңгелегі Элиминаторды басыңыз (тегіс айналдыру): 5 қадам
Тітіркендіргіш айналдыру дөңгелегі Элиминаторды басыңыз (тегіс айналдыру): сіз айналдыру дөңгелегінің дыбысына ашуланасыз ба? міне, бұл шиыршықтан сол шертуді алып тастауға сіздің мүмкіндігіңіз! Егер сіз тышқанды сындырсаңыз, бұл менің кінәм емес. Мен бұл режимді logitech тінтуірімен жасаймын. Мен оның басқа тінтуірде жұмыс істейтініне сенімді емеспін