Satura rādītājs:
Video: Ritiniet vienu LCD līniju: 4 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:51
Šķidro kristālu bibliotēkai ir divas noderīgas funkcijas scrollDisplayLeft () un scrollDisplayRight (). Šīs funkcijas ritina visu displeju. Tas ir, viņi ritina abas rindas uz 1602 LCD un visas četras rindas uz 2004. gada LCD. Mums bieži ir nepieciešama iespēja ritināt vienu rindiņu uz šiem displejiem, nevis ritināt visu displeju.
Šī pamācība nodrošina divas papildu funkcijas: scrollInFromRight (rinda, lai parādītu tekstu, ritināmā virkne) un scrollInFromLeft (rinda, lai parādītu tekstu, virkne, kas jāritina). Šīs divas funkcijas, kas ritina rindas LCD ekrānā, apvienojumā ar abām funkcijām - scrollLineRight (rinda teksta attēlošanai, virkne, kas jāritina) un scrollLineLeft (rinda teksta attēlošanai, virkne ritināšanai) no manas iepriekšējās Instructable, kas tika parādīta funkcijas, lai ritinātu līnijas ārpus ekrāna, sniedz mums vairākus efektīvus veidus, kā kontrolēt teksta parādīšanu vai noņemšanu no LCD ekrāna.
1. darbība: kas nepieciešams
- 1602. vai 2004. gada LCD atsevišķais displejs vai LCD ekrāns
- Skatiet zemāk esošo piezīmi par 2004. gada LCD displeja izmantošanu
- Arduino UNO R3 vai klons
- USB kabelis, lai savienotu Arduino ar datoru
- Pusizmēra, 400 kaklasaites punkti, maizes dēlis
- Arduino IDE
- eksperimentāla platforma (pēc izvēles, bet noderīga)
Nepieciešamie elementi ir LCD ekrāns vai nu 1602, vai 2004 [ja tiek izmantots 2004. gads, bez problēmām var ritināt no labās puses, mainot funkciju lcd.begin (), lai atspoguļotu, ka tagad izmantojat 20 rakstzīmju x 4 rindu displejs. [Lai ritinātu no kreisās puses, izmantojot 2004. gada displeju, ir nepieciešama funkcijas s crollInFromLeft () koda pārrakstīšana]. Papildus LCD ekrānam jums būs nepieciešams Arduino UNO vai klons, Arduino IDE un USB kabelis, lai savienotu Arduino ar datoru.
Šeit parādītā atsevišķā LCD vietā var izmantot LCD vairogu. Ja tas tā ir, tad būs jāmaina zemāk esošajā skicē esošie LCD tapu piešķīrumi.
- Neatkarīgajam 1602 LCD displejam es savās skicēs izmantoju šādus tapu piešķīrumus:
// LiquidCrystal (rs, iespējot, d4, d5, d6, d7)
LiquidCrystal LCD (12, 11, 5, 4, 3, 2);
un ietvēra šķidro kristālu bibliotēku LiquidCrystal.h.
- LCD ekrānam es savās skicēs izmantoju šādus tapu uzdevumus, kā arī šķidro kristālu bibliotēku LiquidCrystal.h.
// LiquidCrystal (rs, iespējot, d4, d5, d6, d7)
LiquidCrystal LCD (8, 13, 9, 4, 5, 6, 7);
Jebkurā maršrutā kods tiks palaists, t.i., vai nu LCD vairogs, vai atsevišķs LCD. Šajā pamācībā tika izmantots 1602 atsevišķs LCD displejs, taču, kā atzīmēts, var izmantot arī 1602 vairogu, ja tiek ņemti vērā dažādi tapas piešķīrumi.
Es izmantoju “eksperimentālu platformu”, lai savienotu Arduino UNO ar pusizmēra 400 sasiešanas punktiem un maizes dēli. (Skatiet iepriekšējo manu pamācību “Eksperimentālā platforma Arduino UNO R3, kā to sagatavot lietošanai”). Tomēr eksperimentāla platforma nav nepieciešama, lai gan man tas padara LCD savienošanu ar UNO daudz vieglāku un ātrāku.
Uzdevumus, kurus izmantoju LCD savienošanai ar UNO, var redzēt iepriekš.
2. solis: savienojums
LCD ir pievienots maizes dēlim, un pēc tam savienojuma vadi no maizes dēļa tiek pievienoti atbilstošajām Arduino tapām (skatiet 2. darbību, ja jums ir kādi jautājumi par manis izmantotajiem savienojumiem).
Šim projektam es dodu priekšroku atsevišķam LCD, nevis vairogam, jo tas man sagādāja lielāku gandarījumu un ļāva man viegli redzēt, kuras tapas ir pieejamas. Tas arī ļauj man izmantot potenciometru ar pogu, nevis vairoga potenciometru, kas jāpielāgo ar skrūvgriezi.
Atsevišķam LCD ir jāizmanto atsevišķs 10k omu potenciometrs. Kā minēts iepriekš, es izmantoju vienu ar pogu, kuras tīrītājs ir savienots ar trešo LCD tapu (skaitot no labās puses ar LCD tapām pret jums). Potenciometru izmanto, lai kontrolētu LCD kontrastu. Savienojumi 1602. un 2004. gadam ir vienādi. Tomēr paziņojumā lcd.begin (16, 2) skicē ir jāmaina uz lcd.begin (20, 4), lai parādītu, ka mūsu LCD ir mainījies no 16 rakstzīme ar divām rindām, līdz 20 rakstzīmēm ar četrām rindām.
Apskatot pievienotās fotogrāfijas, redzams savienojums, kuru izmantoju, ieskaitot eksperimentālo platformu un 10k potenciometru.
3. darbība: skice
Vienkārši ievadiet pievienoto skici Arduino IDE. Lūdzu, ņemiet vērā, ka vietne Instructable bieži noņem visas lielākās un mazākās zīmes un tekstu starp tām. Tāpēc noteikti iekļaujiet tekstu, #include LiquidCrystal.h un ievietojiet vārdus LiquidCrystal.h iekšā lielākus un mazākus par simboliem.
// Skice, lai ritinātu rakstzīmes uz LCD ekrāna
#include // Skatiet piezīmi tekstā par to, kas šeit ir nepieciešams, ti, LiquidCrystal.h, kas ievietots iekšpusē
// lielāks un mazāks par simboliem
// Šī vietne bieži noņem lielākus un mazākus simbolus un tekstu starp tiem
// LiquidCrystal (rs, iespējot, d4, d5, d6, d7)
LiquidCrystal LCD (12, 11, 5, 4, 3, 2);
// Deklarējiet LCD kā LiquidCrystal objektu
int i = 0;
int j = 0;
int k = 0;
int delayTime2 = 350; // Kavēšanās starp maiņām
void scrollInFromRight (int line, char str1 ) {
// Raksta R. Džordans Kreindlers 2016. gada jūnijā
i = strlen (str1);
par (j = 16; j> = 0; j--) {
lcd.setCursor (0, līnija);
par (k = 0; k <= 15; k ++) {
lcd.print (""); // Notīrīt līniju
}
lcd.setCursor (j, līnija);
lcd.print (str1);
kavēšanās (delayTime2);
}
}
void scrollInFromLeft (int line, char str1 ) {
// Raksta R. Džordans Kreindlers 2016. gada jūnijā
i = 40 - strlen (str1);
līnija = līnija - 1;
par (j = i; j <= i+16; j ++) {
par (k = 0; k <= 15; k ++) {
lcd.print (""); // Notīrīt līniju
}
lcd.setCursor (j, līnija);
lcd.print (str1);
kavēšanās (delayTime2);
}
}
void setup () {
Sērijas sākums (9600);
Serial.println ("Testa sākšana …");
lcd. sākums (16, 2);
lcd.clear ();
lcd.print ("Tikai pārbaude");
}
void loop () {
lcd.clear ();
scrollInFromRight (0, "Rinda1 no labās puses");
scrollInFromRight (1, "Rinda2 no labās puses");
lcd.clear ();
scrollInFromLeft (0, "1. rindiņa no kreisās");
scrollInFromLeft (1, "2. rindiņa no kreisās");
lcd.clear ();
scrollInFromRight (0, "Rinda1 no labās puses");
scrollInFromLeft (1, "2. rindiņa no kreisās");
lcd.clear ();
}
Abas funkcijas: scrollInFromRight (rinda, lai parādītu tekstu, virkne, kas jāritina) un scrollInFromLeft (rinda, lai parādītu tekstu, virkne, kas jāritina), var pārvietot uz jūsu skici, lai kontrolētu līnijas, kas tiek ritinātas uz LCD ekrāna. Šīs funkcijas nodrošina elegantu veidu, kā pārvietot ekrānā jaunu tekstu.
Apvienojot ar divām funkcijām skicē, kas iekļauta instrukcijā “Ritiniet vienu LCD līniju pa kreisi vai pa labi, kā to darīt”, četras funkcijas nodrošina elegantus veidus, kā ritināt tekstu uz LCD displeja un izslēgt to. Šīs funkcijas ļauj ritināt tekstu pa vienai rindai un neprasa ritināt visu displeju, tāpat kā funkcijas scrollDisplayLeft () un scrollDisplayRight ().
Šī ritināšanas iespēja ļauj mums parādīt rindas ilgāk, nekā displejs parasti var parādīt. Tas nozīmē, ka 1602 displejam rindā nav ierobežotas tikai 16 rakstzīmes (lai gan vienlaikus tiks rādītas tikai 16), bet 2004. gadā - ne vairāk kā 20 rakstzīmes katrā rindā.
Starp citu, iespējams, vēlēsities pielāgot displeja laiku starp ritinājumiem, lai tas atbilstu jūsu vajadzībām.
4. solis: Pēc tam
Tas ir viss. Šīs funkcijas un divas no manas iepriekšējās Instructable funkcijas var pievienot jebkurai jūsu skicei, kurā tiek izmantots LCD un tiek parādīts teksts. Kā minēts, spēja izmantot garākas rindas ir noteikts ieguvums, kas ir iespējams, izmantojot ritināšanu.
Ja vēlaties sazināties ar mani, ja jums ir kādi jautājumi vai papildu informācija, vai paplašināt savas zināšanas šajā jomā, mani var sazināties pa e -pastu [email protected]. (lūdzu, aizstājiet otro “i” ar “e”, lai sazinātos ar mani.
Ieteicams:
4 pogu spēles, izmantojot vienu analogo ievadi: 6 soļi (ar attēliem)
4 pogu spēles, izmantojot vienu analogo ievadi: šī pamācība ir vērsta uz vienas analogās ievades līnijas izmantošanu vairākām pogām, kuras var noteikt neatkarīgi viena no otras. Un, lai uzsvērtu šo pogu izmantošanu, ir programmatūra četru dažādu 4 taustiņu spēļu spēlēšanai. Visas spēles (astoņi no
Kā lasīt vairākas analogās vērtības, izmantojot vienu analogo tapu: 6 soļi (ar attēliem)
Kā lasīt vairākas analogās vērtības, izmantojot vienu analogo tapu: šajā apmācībā es jums parādīšu, kā lasīt vairākas analogās vērtības, izmantojot tikai vienu analogās ievades tapu
Miskastē iebūvēts BT līniju zīmēšanas robots - mans robots: 13 soļi (ar attēliem)
Trash Built BT Line Drawing Bot - My Bot: Hai draugi pēc ilgas pārtraukuma apmēram 6 mēnešus šeit es nāku ar jaunu projektu. Līdz Cute Drawing Buddy V1 pabeigšanai SCARA Robot - Arduino i plāno citu zīmēšanas robotu, galvenais mērķis ir aizņemt lielu vietu zīmēšanai. Tātad fiksētas robotu rokas c
Kā izveidot pasaulē mazāko līniju sekotāju robotu (robo Rizeh): 7 soļi (ar attēliem)
Kā izveidot pasaulē mazāko līniju sekotāju robotu (robo Rizeh): Kā padarīt pasaulē mazāko līnijas sekotāju robotu (vibrobot) " roboRizeh " svars: 5gr izmērs: 19x16x10 mm autors: Naghi Sotoudeh Vārds " Rizeh " ir persiešu vārds, kas nozīmē "niecīgs". Rizeh ir uz vibrāciju balstīts ļoti mazs ro
Kā izveidot banānu telefonu (fiksēto līniju) un banānu bāzes ierīci: 20 soļi (ar attēliem)
Kā izveidot banānu telefonu (fiksēto līniju) un banānu bāzes iekārtu: tas tā ir. Jums ir atlikušas tikai dažas nedēļas pirms Ziemassvētkiem, un jums jāatrod dāvana, kas ir patiesi oriģināla un parāda, cik liela jūs esat. Izvēļu ir tūkstošiem, bet viena lieta, ko jūs patiešām vēlaties izdarīt, ir banānu telefons