Kazalo:

Pomikanje po eni vrstici LCD: 4 koraki (s slikami)
Pomikanje po eni vrstici LCD: 4 koraki (s slikami)

Video: Pomikanje po eni vrstici LCD: 4 koraki (s slikami)

Video: Pomikanje po eni vrstici LCD: 4 koraki (s slikami)
Video: ВСЯ НОЧЬ С ПОЛТЕРГЕЙСТОМ В ЖИЛОМ ДОМЕ, я заснял жуткую активность. 2024, November
Anonim
Image
Image

Knjižnica s tekočimi kristali ima dve uporabni funkciji scrollDisplayLeft () in scrollDisplayRight (). Te funkcije se pomikajo po celotnem zaslonu. To pomeni, da se na LCD -ju 1602 pomikajo obe vrstici in vse štiri vrstice na LCD -ju iz leta 2004. Kar pogosto potrebujemo, je možnost, da se na teh zaslonih pomaknete samo po eno vrstico, namesto da se pomaknete po celotnem zaslonu.

Ta Instructable ponuja dve dodatni funkciji, scrollInFromRight (vrstica za prikaz besedila, niz za pomikanje) in scrollInFromLeft (vrstica za prikaz besedila, niz za pomikanje). Ti dve funkciji, ki se pomakneta na LCD zaslon v kombinaciji z dvema funkcijama, scrollLineRight (vrstica za prikaz besedila, niz za pomikanje) in scrollLineLeft (vrstica za prikaz besedila, niz za pomikanje) iz mojega prejšnjega Instructable, ki je predstavil funkcije za premikanje črt z zaslona, nam ponuja več močnih načinov za nadzor nad tem, kako je besedilo mogoče prikazati na LCD zaslonu ali ga odstraniti.

1. korak: Kaj je potrebno

Dobiti se
Dobiti se

- Samostojni LCD zaslon velikosti 1602 ali 2004 ali LCD zaslon

- Glejte spodnjo opombo glede uporabe LCD zaslona iz leta 2004

- Arduino UNO R3 ali klon

- Kabel USB za povezavo Arduina z računalnikom

- Pol velikosti, 400 vezanih točk, plošča

- IDE Arduino

- Poskusna platforma (neobvezno, vendar koristno)

Potrebni elementi so LCD zaslon 1602 ali 2004 [če uporabljate leto 2004, se bo brez težav pomaknilo z desne strani, tako da spremenite funkcijo lcd.begin (), da bo prikazano, da zdaj uporabljate vrstico 20 znakov x 4 zaslon. [Če se želite pomakniti z leve strani na zaslonu iz leta 2004, je potrebno prepisati kodo funkcije s crollInFromLeft ()]. Poleg LCD -ja potrebujete Arduino UNO ali klon, Arduino IDE in kabel USB za povezavo Arduina z računalnikom.

Namesto samostojnega LCD zaslona, ki je prikazan tukaj, lahko uporabite ščitnik LCD. V tem primeru bo treba spremeniti razporeditev nožic za LCD na spodnji skici.

- Za neodvisen LCD zaslon 1602 sem v svojih skicah uporabil naslednje dodelitve pin:

// LiquidCrystal (rs, omogoči, d4, d5, d6, d7)

LCD tekoči kristal (12, 11, 5, 4, 3, 2);

in je vključeval knjižnico tekočih kristalov LiquidCrystal.h.

- Za ščitnik LCD uporabljam naslednje skice v svojih skicah in sem vključil tudi knjižnico LiquidCrystal.h s tekočimi kristali.

// LiquidCrystal (rs, omogoči, d4, d5, d6, d7)

LCD tekoči kristal (8, 13, 9, 4, 5, 6, 7);

Tu bo koda vodila katera koli pot, to je bodisi zaslon LCD ali samostojen LCD. V tem navodilu je bil uporabljen samostojen LCD zaslon 1602, vendar je, kot je navedeno, mogoče uporabiti tudi ščit 1602, če upoštevamo različne dodelitve zatičev.

Uporabil sem "eksperimentalno platformo", da povežem Arduino UNO s polovično velikostjo, 400 veznimi točkami, ploščo. (Glejte prejšnji moj Instructable, "Experimental Platform for Arduino UNO R3, How To prepar it for Use"). Vendar pa eksperimentalna platforma ni potrebna, čeprav zame olajša in poenostavi povezavo LCD z UNO.

Naloge, ki sem jih uporabil za priključitev LCD -ja na UNO, so prikazane zgoraj.

2. korak: Priključitev

LCD je priključen na ploščo, nato pa se priključne žice povežejo z matične plošče na ustrezne zatiče na Arduinu (glejte 2. korak, če imate kakršna koli vprašanja o povezavah, ki sem jih uporabil).

Za ta projekt sem imel raje samostojen LCD zaslon kot pa ščit, saj je bil zame bolj zadovoljen in mi je omogočil, da sem zlahka videl, kateri zatiči so na voljo. Omogoča mi tudi uporabo potenciometra, ki ima gumb, namesto potenciometra ščita, ki ga je treba nastaviti z izvijačem.

Samostojni LCD zahteva uporabo ločenega 10k ohmskega potenciometra. Kot je navedeno zgoraj, sem uporabil enega z gumbom, katerega brisalnik je priključen na tretji zatič LCD (od desne strani, pri čemer so zatiči LCD obrnjeni proti vam). Potenciometer se uporablja za nadzor kontrasta LCD -ja. Povezave so enake za leta 1602 in 2004. Vendar pa je treba skico lcd.begin (16, 2) na skici spremeniti v lcd.begin (20, 4), da pokažemo, da se je naš LCD spremenil iz 16 znak po dveh vrsticah do 20 znakov po štiri vrstice.

Pogled na priložene fotografije prikazuje priključek, ki sem ga uporabil, vključno z eksperimentalno platformo in 10k potenciometrom.

3. korak: Skica

Skica
Skica
Skica
Skica
Skica
Skica

Samo priložite skico v Arduino IDE. Upoštevajte, da spletno mesto Instructable pogosto odstrani vse znake, ki so večji in manjši, ter besedilo med njimi. Zato vsekakor vključite besedilo #include LiquidCrystal.h in vstavite besede LiquidCrystal.h v notranjost, ki je večja od in manjša od simbolov.

// Skicirajte za pomikanje znakov na LCD zaslon

#include // Oglejte si opombo v besedilu o tem, kaj je tukaj potrebno, to je LiquidCrystal.h, zaprto v notranjosti

// večji in manjši od simbolov

// To spletno mesto pogosto odstrani večje in manjše od simbolov in besedila med njimi

// LiquidCrystal (rs, omogoči, d4, d5, d6, d7)

LCD tekoči kristal (12, 11, 5, 4, 3, 2);

// Razglasite lcd kot objekt LiquidCrystal

int i = 0;

int j = 0;

int k = 0;

int delayTime2 = 350; // Zamuda med izmenami

void scrollInFromRight (int vrstica, char str1 ) {

// Zapisal R. Jordan Kreindler junij 2016

i = strlen (str1);

za (j = 16; j> = 0; j--) {

lcd.setCursor (0, vrstica);

za (k = 0; k <= 15; k ++) {

lcd.print (""); // Čista črta

}

lcd.setCursor (j, vrstica);

lcd.print (str1);

zakasnitev (delayTime2);

}

}

void scrollInFromLeft (int vrstica, char str1 ) {

// Zapisal R. Jordan Kreindler junij 2016

i = 40 - strlen (str1);

vrstica = vrstica - 1;

za (j = i; j <= i+16; j ++) {

za (k = 0; k <= 15; k ++) {

lcd.print (""); // Čista črta

}

lcd.setCursor (j, vrstica);

lcd.print (str1);

zakasnitev (delayTime2);

}

}

void setup () {

Serial.begin (9600);

Serial.println ("Zagon testa …");

lcd.begin (16, 2);

lcd.clear ();

lcd.print ("Samo test");

}

void loop () {

lcd.clear ();

scrollInFromRight (0, "Line1 From Right");

scrollInFromRight (1, "Line2 From Right");

lcd.clear ();

scrollInFromLeft (0, "Line1 From Left.");

scrollInFromLeft (1, "Line2 From Left.");

lcd.clear ();

scrollInFromRight (0, "Line1 From Right");

scrollInFromLeft (1, "Line2 From Left.");

lcd.clear ();

}

Dve funkciji: scrollInFromRight (vrstica za prikaz besedila, niz za pomikanje) in scrollInFromLeft (vrstica za prikaz besedila, niz za pomikanje) lahko premaknete v skico za nadzor vrstic, ki se premikajo na LCD -zaslon. Te funkcije ponujajo eleganten način za premikanje novega besedila na zaslon.

V kombinaciji z dvema funkcijama na skici, ki je v navodilu »Pomaknite se za eno vrstico LCD v levo ali desno, kako«, štiri funkcije ponujajo elegantne načine za premikanje besedila na LCD zaslon in iz njega. Te funkcije vam omogočajo, da se pomikate po besedilu po vrstici in ne zahtevajo pomikanja po celotnem zaslonu, prav tako funkcije, scrollDisplayLeft () in scrollDisplayRight ().

Ta sposobnost drsenja nam omogoča, da predstavljamo vrstice dlje, kot jih običajno prikaže zaslon. To pomeni, da za zaslon 1602 nismo omejeni na samo 16 znakov na vrstico (čeprav jih bo naenkrat prikazanih le 16), za leto 2004 pa nismo omejeni na 20 znakov na vrstico.

Poleg tega boste morda želeli čas prikaza med drsniki prilagoditi svojim potrebam.

4. korak: Nato

To je vse. Te in dve funkciji iz mojega prejšnjega Instructable -a lahko dodate v katero koli skico, ki jo uporabljate, ki uporablja LCD in prikazuje besedilo. Kot smo že omenili, je možnost uporabe daljših vrstic nedvomna prednost, ki je možna z uporabo pomikanja.

Če me želite kontaktirati z vsemi vprašanji ali dodatnimi informacijami ali razširiti svoje znanje na predstavljenem področju, sem dosegljiv na [email protected]. (prosim, zamenjajte drugi "i" z "e", da me kontaktirate.

Priporočena: