Lad os finde ud af, hvordan man forbinder en 84x48 pixel skærm med flydende krystaller fra Nokia 5110 til Arduino.
Nødvendig
- - Arduino;
- - LCD-skærm til Nokia 5110/3310;
- - tilslutning af ledninger.
Instruktioner
Trin 1
Lad os forbinde LCD-skærmen fra Nokia 5110 til Arduino i henhold til nedenstående diagram.
Trin 2
Mange biblioteker er skrevet for at arbejde med denne LCD-skærm. Jeg foreslår at bruge denne: https://www.rinkydinkelectronics.com/library.php?id=44 (download LCD5110_Basic.zip-filen).
For at installere skal du pakke filen ud i Arduino IDE / biblioteker / bibliotek.
Biblioteket understøtter følgende funktioner.
LCD5110 (SCK, MOSI, DC, RST, CS); - meddelelse om LCD-skærmen, der angiver korrespondancen med Arduino-stifterne;
InitLCD ([kontrast]); - initialisering af 5110-skærmen med en valgfri kontrastindikation (0-127), standard er 70;
setContrast (kontrast); - indstiller kontrasten (0-127);
enableSleep (); - sætter skærmen i dvaletilstand;
disableSleep (); - bringer skærmen ud af dvaletilstand
clrScr (); - rydder skærmen
clrRow (række, [start], [slut]); - rydning af den valgte række nummer række fra position start til slut;
inverter (sand); og inverter (falsk); - tænde og slukke for inversion af indholdet af LCD-skærmen;
print (streng, x, y); - viser en række tegn med de angivne koordinater; i stedet for x-koordinat kan du bruge VENSTRE, CENTER og HØJRE; højden på standardskrifttypen er 8 point, så linjerne skal være adskilt med 8 punkter;
printNumI (num, x, y, [længde], [fyldstof]); - vise et heltal på skærmen i en given position (x, y); længde - den ønskede længde på nummeret fyldstof - et tegn, der udfylder "tomrummene", hvis tallet er mindre end den ønskede længde; standard er et tomt mellemrum ";
printNumF (num, dec, x, y, [skillevæg], [længde], [fyldstof]); - vise et flydende nummer; dec - antal decimaler skillevæg - decimaltegn, prik "." som standard;
setFont (navn); - vælg en skrifttype indbyggede skrifttyper hedder SmallFont og TinyFont; du kan definere dine skrifttyper i skitsen;
invertText (sand); og invertText (falsk); - tekstinversion til / fra;
drawBitmap (x, y, data, sx, sy); - viser billedet på skærmen ved x- og y-koordinaterne; data - en matrix, der indeholder et billede; sx og sy er bredden og højden af billedet.
Trin 3
Lad os skrive sådan en skitse. Først inkluderer vi biblioteket, derefter erklærer vi en forekomst af LCD5110-klassen med pin-opgaver.
I installationsproceduren () initialiserer vi LCD-skærmen.
I loop () -proceduren rydder vi skærmen og skriver vilkårlig tekst i en lille skrifttype, under den, i en medium skrifttype, viser tælleren på sekunder.
Trin 4
Lad os vise et billede. For at gøre dette skal vi forberede et monokromt billede, som vi vil have vist på Nokia 5110. Husk, at skærmopløsningen er 48 x 84 pixels, og at billedet ikke skal være større. På siden https://www.rinkydinkelectronics.com/t_imageconverter_mono.php konverteres billedet til et bit array. Download den resulterende fil med udvidelsen "*.c", og tilføj den til projektet via menuen: Skitse -> Tilføj fil … eller placer filen i skitsebiblioteket, og indlæs derefter Arduino IDE igen.
Trin 5
Nu skal du erklære en matrix med billeddata i programkoden (i min kode er dette linjen ekstern uint8_t mysymb;), og brug derefter drawBitmap () -funktionen til at vise billedet det ønskede sted på skærmen.
Trin 6
Upload skitsen til Arduino. Nu erstattes teksten med et billede, og tælleren øger sin værdi hver gang.