Hej tamo! Kao dobavljač LCD displeja sa karakterima, često me pitaju kako da prikažem pomerajući tekst na ovim elegantnim malim ekranima. To je super korisna funkcija, bilo da prikazujete vijesti, dugačke poruke ili samo želite dodati malo ljupke svom projektu. Dakle, hajde da zaronimo odmah i istražimo kako možete napraviti skrolovanje teksta na LCD displeju znakova.
Razumevanje LCD displeja karaktera
Prvo, hajde da brzo prođemo kroz šta su LCD displeji sa karakterima. Ovo su jednostavni displeji koji mogu prikazati alfanumeričke znakove. Dolaze u različitim veličinama, poput0802 LCD ekran, koji ima 8 znakova po redu i 2 reda; the40x2 LCD ekran, nudi 40 znakova po redu i 2 reda; i16 x 4 lcd displej, sa 16 znakova po redu i 4 reda. Svaki ekran ima određeni broj znakovnih ćelija i morate raditi u granicama tih ćelija da biste prikazali svoj tekst.
Osnove pomicanja teksta
Koncept pomicanja teksta na LCD displeju karaktera je prilično jednostavan. U suštini pomerate tekst s jedne strane ekrana na drugu, znak po znak. Ovo daje iluziju kontinuiranog toka teksta. Postoje dvije glavne vrste pomicanja: horizontalno i vertikalno. Horizontalno pomicanje je češće, gdje se tekst pomiče s desna na lijevo ili obrnuto. Vertikalno pomeranje pomera tekst gore ili dole na ekranu.
Podešavanje hardvera
Pre nego što počnete da pomerate tekst, morate pravilno da podesite LCD prikaz znakova. Obično ćete povezati ekran na mikrokontroler, kao što je Arduino ili Raspberry Pi. Moraćete da povežete pinove za napajanje (VSS, VDD, VO), kontrolne pinove (RS, RW, E) i pinove za podatke (obično 4 ili 8 pinova). Pobrinite se da pratite tablicu sa podacima vašeg određenog LCD ekrana za tačne veze pinova.
Implementacija softvera
Kada je vaš hardver postavljen, vrijeme je da napišete kod kako bi se tekst pomicao. Evo pregleda na visokom nivou kako to možete učiniti u Pythonu koristeći Raspberry Pi iRPLCDbiblioteka, što olakšava rad sa LCD ekranima.
from RPLCD.i2c import CharLCD import time # Inicijalizirajte LCD lcd = CharLCD(i2c_expander='PCF8574', address=0x27, port=1, cols=16, rows=2, dotsize=8) message = "Ovo je duga poruka koja će se pomicati na LCD-u." # Funkcija za pomicanje teksta def scroll_text(lcd, message): message_length = len(message) za i u rasponu(0, message_length): lcd.clear() lcd.write_string(message[i:(i + 16)]) time.sleep(0.2) scroll_text
U ovom kodu prvo inicijaliziramo LCD zaslon pomoćuRPLCDbiblioteka. Zatim definišemo dugačku poruku. Thescroll_textfunkcija se kreće kroz poruku, svaki put briše LCD ekran i upisuje segment poruke od 16 znakova. Thetime.sleep(0.2)linija dodaje malo kašnjenje između svakog ažuriranja, dajući efekat pomeranja.
Različiti pristupi skrolovanju
Postoji nekoliko različitih načina za implementaciju pomicanja, ovisno o vašim zahtjevima.
Pristup statičkog bafera
U ovom pristupu, kreirate bafer koji je veći od površine prikaza. Učitavate celu svoju poruku u ovaj bafer i zatim pomerate "prozor" preko bafera, prikazujući različite delove poruke na ekranu u svakom koraku. Ovo je odlično za duže poruke jer možete kontrolisati šta se tačno prikazuje i kako se kreće.
Karakter - po - karakterni pristup
Ovo je najjednostavniji pristup, gdje samo nastavljate da dodajete znakove na ekran jedan po jedan, a kako se ekran puni, počinjete uklanjati znakove s lijeve (ili desne) strane. Lako je implementirati, ali možda neće raditi tako dobro za veoma dugačke poruke.


Fino - podešavanje efekta pomicanja
Možete učiniti da vaš tekst koji se pomiče još bolje izgleda podešavanjem nekoliko parametara.
Brzina
Brzina pomicanja je određena kašnjenjem između svakog ažuriranja. Ako skratite kašnjenje, tekst će se brže pomicati. Međutim, ako je prebrz, tekst može biti težak za čitanje. Možete eksperimentirati s različitim vrijednostima kašnjenja kako biste pronašli najbolju točku.
Smjer
Možete promijeniti smjer pomicanja. Umjesto pomicanja s lijeva na desno, možete ga natjerati da se pomiče s desna na lijevo ili čak okomito. Da biste promijenili smjer, samo trebate prilagoditi način na koji ažurirate prikaz. Na primjer, ako želite da skrolujete s desna na lijevo, počinjete s krajem poruke i idete unazad.
Pauziranje
Možete dodati pauze u određenim tačkama skrolovanja. Ovo može biti korisno ako želite istaknuti određeni dio poruke. To možete učiniti dodavanjem dužeg kašnjenja u određenim intervalima u vašem kodu.
Rješavanje problema
Ponekad možete naići na probleme s pomicanjem teksta. Evo nekoliko uobičajenih problema i kako ih riješiti.
Tekst se ne pomiče glatko
Ako se tekst ne pomiče glatko, to može biti zbog nekoliko razloga. Prvo provjerite vrijeme kašnjenja. Ako je prekratak ili predugačak, može uzrokovati da pomicanje izgleda isprekidano. Možda ćete također morati provjeriti svoje hardverske veze. Labave veze mogu uzrokovati povremene probleme s prikazom.
Netačno odsecanje teksta
Ako je tekst pogrešno odsječen, provjerite jeste li ispravno izračunali prozor za prikaz. Morate osigurati da ne pokušavate prikazati više znakova nego što ekran može podnijeti odjednom.
Zaključak
Prikazivanje teksta koji se pomiče na LCD ekranu znakova je zabavna i korisna funkcija. Može dodati puno funkcionalnosti i vizualne privlačnosti vašim projektima. Bilo da ga koristite za jednostavan hobi projekat ili složeniju komercijalnu primjenu, tehnike o kojima smo ovdje raspravljali trebale bi vam pomoći da započnete.
Ako ste zainteresovani za kupovinu LCD displeja karaktera za svoje projekte, mi smo tu da vam pomognemo. Nudimo širok spektar visokokvalitetnih displeja, uključujući i0802 LCD ekran,40x2 LCD ekran, i16 x 4 lcd displej. Kontaktirajte nas da razgovaramo o vašim specifičnim zahtjevima i započnete svoj sljedeći projekat sa savršenim ekranom.
Reference
- Zvanična dokumentacija RPLCD
- Dokumentacija Arduino LCD biblioteke
- Datasheets različitih LCD displeja karaktera
