Sisällysluettelo:

Vieritä yksi LCD -rivi: 4 vaihetta (kuvien kanssa)
Vieritä yksi LCD -rivi: 4 vaihetta (kuvien kanssa)

Video: Vieritä yksi LCD -rivi: 4 vaihetta (kuvien kanssa)

Video: Vieritä yksi LCD -rivi: 4 vaihetta (kuvien kanssa)
Video: Kylpyseinä piilotetulla kattoluukulla 2024, Heinäkuu
Anonim
Image
Image

Nestekristallikirjastossa on kaksi hyödyllistä toimintoa scrollDisplayLeft () ja scrollDisplayRight (). Nämä toiminnot vierittävät koko näyttöä. Toisin sanoen ne vierittävät molempia rivejä 1602 -nestekidenäytössä ja kaikkia neljää riviä vuoden 2004 nestekidenäytössä. Tarvitsemme usein kykyä vierittää yksi rivi näille näytöille sen sijaan, että vierittäisimme koko näyttöä.

Tämä Instructable sisältää kaksi lisätoimintoa, scrollInFromRight (rivi tekstin näyttämiseksi, merkkijono vieritettäväksi) ja scrollInFromLeft (rivi tekstin näyttämiseksi, vieritettävä merkkijono). Nämä kaksi toimintoa, jotka vierittävät rivejä nestekidenäyttöön yhdistettynä kahteen toimintoon, scrollLineRight (rivi tekstin näyttämiseen, vieritettävä merkkijono) ja scrollLineLeft (rivi tekstin näyttämiseen, vieritettävä merkkijono) aiemmasta Instructable -ohjelmasta, joka esitettiin toimintoja rivien vierittämiseksi näytöltä, antaa meille useita tehokkaita tapoja hallita sitä, miten teksti voidaan esittää tai poistaa nestekidenäytöltä.

Vaihe 1: Mitä tarvitaan

Liittää yhteen
Liittää yhteen

- Erillinen 1602 tai 2004 LCD -näyttö tai LCD -suoja

- Katso alla oleva huomautus vuoden 2004 nestekidenäytön käytöstä

- Arduino UNO R3 tai klooni

- USB -kaapeli Arduinon liittämiseksi tietokoneeseen

- Puolikokoinen, 400 solmupistettä, leipälauta

- Arduino IDE

- Kokeellinen alusta (valinnainen, mutta hyödyllinen)

Vaadittavat kohteet ovat nestekidenäyttö joko 1602 tai 2004 [jos käytetään vuotta 2004, selaaminen ilman ongelmia toimii oikealta muuttamalla lcd.begin () -funktiota siten, että käytät nyt 20 merkin x 4 riviä näyttö. [Jos haluat vierittää vasemmalta vuoden 2004 näytön avulla, toiminnon s crollInFromLeft () koodi on kirjoitettava uudelleen]. Nestekidenäytön lisäksi tarvitset Arduino UNO: n tai kloonin, Arduino IDE: n ja USB -kaapelin Arduinon liittämiseksi tietokoneeseen.

Tässä esitetyn itsenäisen nestekidenäytön sijasta voidaan käyttää LCD -suojaa. Jos näin on, alla olevan luonnoksen nestekidenäytön nastajärjestystä on muutettava.

- Itsenäisessä 1602 LCD -näytössä käytin luonnoksissani seuraavia nastamäärityksiä:

// LiquidCrystal (rs, ota käyttöön, d4, d5, d6, d7)

LiquidCrystal lcd (12, 11, 5, 4, 3, 2);

ja sisälsi Liquid Crystal -kirjaston LiquidCrystal.h.

- Nestekidenäytön suojauksessa käytän luonnoksissani seuraavia nastamäärityksiä ja myös Liquid Crystal -kirjastoa LiquidCrystal.h.

// LiquidCrystal (rs, ota käyttöön, d4, d5, d6, d7)

LiquidCrystal lcd (8, 13, 9, 4, 5, 6, 7);

Kumpi tahansa reitti suorittaa koodin täällä, eli joko LCD -suoja tai erillinen LCD. Tässä Instructable -ohjelmassa käytettiin erillistä 1602 -LCD -näyttöä, mutta kuten on todettu, 1602 -suojaa voidaan käyttää myös, jos erilaiset nastojen määritykset otetaan huomioon.

Liitin Arduino UNOn”kokeellisella alustalla” puolikokoiseen, 400 solmupisteeseen, leipälautaan. (Katso aikaisempi Instructable of my, “Experimental Platform for Arduino UNO R3, How to Prepare It For Use”). Kokeellista alustaa ei kuitenkaan tarvita, vaikka se helpottaa ja nopeuttaa LCD -näytön liittämistä UNO: hon.

Määritelmät, joita käytin nestekidenäytön liittämiseen UNO: hon, näkyvät yllä.

Vaihe 2: Liitäntä

Nestekidenäyttö on kytketty leipälautaan ja sen jälkeen kytkentäjohdot liitetään leipälevyltä Arduinon asianmukaisiin nastoihin (katso vaihe 2, jos sinulla on kysyttävää käyttämistäni liitäntöistä).

Valitsin tässä projektissa erillisen LCD -näytön kilven sijasta, koska se oli minulle tyydyttävämpi ja antoi minulle mahdollisuuden helposti nähdä, mitkä nastat olivat saatavilla. Sen avulla voin myös käyttää potentiometriä, jossa on nuppi, eikä kilven potentiometriä, joka on säädettävä ruuvimeisselillä.

Itsenäinen nestekidenäyttö vaatii erillisen 10 k ohmin potentiometrin. Kuten edellä mainittiin, käytin sitä, jossa oli nuppi, jonka pyyhin on liitetty kolmanteen LCD -nastaan (lasketaan oikealta LCD -nastat itseäsi kohti). Potentiometriä käytetään nestekidenäytön kontrastin säätämiseen. Liitännät ovat samat vuosina 1602 ja 2004. Liite lcd.begin (16, 2) on kuitenkin muutettava luonnoksessa lcd.begin (20, 4) osoittamaan, että LCD -näyttö on muuttunut 16: sta merkki kaksirivinen näyttö 20 merkkiä nelirivinen yksi.

Liitteenä olevista valokuvista näet käyttämäni kytkennät, mukaan lukien kokeellinen alusta ja 10k potentiometri.

Vaihe 3: Luonnos

Luonnos
Luonnos
Luonnos
Luonnos
Luonnos
Luonnos

Kirjoita vain liitetty luonnos Arduino IDE: hen. Muista, että Instructable -sivusto poistaa usein kaikki suuret ja pienemmät merkit ja niiden välisen tekstin. Muista siis sisällyttää teksti, #include LiquidCrystal.h ja liittää sanat LiquidCrystal.h sisälle suurempia ja pienempiä kuin symbolit.

// Luonnos vieritä merkkejä nestekidenäytölle

#include // Katso tekstissä oleva huomautus siitä, mitä täällä tarvitaan, eli LiquidCrystal.h sisältä

// suurempi ja pienempi kuin symbolit

// Tämä sivusto poistaa usein suurempia ja pienempiä symboleita ja niiden välistä tekstiä

// LiquidCrystal (rs, ota käyttöön, d4, d5, d6, d7)

LiquidCrystal lcd (12, 11, 5, 4, 3, 2);

// Ilmoita lcd LiquidCrystal -objektiksi

int i = 0;

int j = 0;

int k = 0;

int delayTime2 = 350; // Viive vuorojen välillä

void scrollInFromRight (int -rivi, char str1 ) {

// Kirjoittanut R. Jordan Kreindler Kesäkuu 2016

i = strlen (str1);

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

lcd.setCursor (0, rivi);

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

lcd.print (""); // Selkeä viiva

}

lcd.setCursor (j, viiva);

lcd.print (str1);

delay (delayTime2);

}

}

void scrollInFromLeft (int -rivi, char str1 ) {

// Kirjoittanut R. Jordan Kreindler Kesäkuu 2016

i = 40 - strlen (str1);

rivi = rivi - 1;

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

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

lcd.print (""); // Selkeä viiva

}

lcd.setCursor (j, viiva);

lcd.print (str1);

delay (delayTime2);

}

}

void setup () {

Sarja.alku (9600);

Serial.println ("Käynnistetään testi…");

lcd. alku (16, 2);

lcd.clear ();

lcd.print ("Vain testi");

}

void loop () {

lcd.clear ();

scrollInFromRight (0, "Rivi1 oikealta");

scrollInFromRight (1, "Rivi2 oikealta");

lcd.clear ();

scrollInFromLeft (0, "Rivi1 vasemmalta.");

scrollInFromLeft (1, "Rivi2 vasemmalta.");

lcd.clear ();

scrollInFromRight (0, "Rivi1 oikealta");

scrollInFromLeft (1, "Rivi2 vasemmalta.");

lcd.clear ();

}

Kaksi toimintoa: scrollInFromRight (rivi tekstin näyttämistä varten, vieritettävä merkkijono) ja scrollInFromLeft (rivi tekstin näyttämistä varten, vieritettävä merkkijono) voidaan siirtää luonnokseen ohjaamaan nestekidenäyttöön vieritettäviä rivejä. Nämä toiminnot tarjoavat tyylikkään tavan siirtää uutta tekstiä näytölle.

Yhdistettynä kahteen toimintoon luonnoksessa, joka sisältyy oppaaseen "Yksittäisen nestekidenäytön rivin vierittäminen vasemmalle tai oikealle, Kuinka tehdä", sisältää neljä toimintoa, jotka tarjoavat tyylikkäitä tapoja vierittää tekstiä nestekidenäytölle ja pois siitä. Näiden toimintojen avulla voit vierittää tekstiä rivi kerrallaan, eivätkä ne edellytä koko näytön vierittämistä samoin kuin toiminnot scrollDisplayLeft () ja scrollDisplayRight ().

Tämän vierityskyvyn avulla voimme esittää rivejä pidempään kuin näyttö normaalisti pystyy näyttämään. Toisin sanoen 1602 -näytössä ei ole rajoitettu vain 16 merkkiä riviä kohti (vaikka vain 16 näkyy kerrallaan), ja vuoden 2004 osalta emme ole rajoittuneet 20 merkkiä riviä kohden.

Voit myös säätää vieritysten välistä näyttöaikaa tarpeidesi mukaan.

Vaihe 4: Jälkeenpäin

Siinä kaikki. Nämä toiminnot ja edellisen Instructable -ohjelman kaksi toimintoa voidaan lisätä mihin tahansa luonnokseen, joka käyttää nestekidenäyttöä ja näyttää tekstiä. Kuten on todettu, kyky käyttää pidempiä rivejä on selvä etu, joka on mahdollista käyttämällä vieritystä.

Jos haluat ottaa minuun yhteyttä, jos sinulla on kysyttävää tai haluat lisätietoja, tai laajentaa tietämystäni esitetyllä alueella, minut tavoittaa osoitteessa [email protected]. (Ole hyvä ja korvaa toinen i -kirjain e -kirjaimella.

Suositeltava: