Sådan interface mobiltelefondisplay med Arduino

Prøv Vores Instrument Til At Fjerne Problemer





I dette indlæg lærer vi, hvordan man interface Nokia 5110-skærm med arduino-mikrocontroller, og hvordan man viser tekst, vi konstruerer også et simpelt digitalt ur, og til sidst vil vi undersøge grafiske muligheder for Nokia 5110-skærmen.

Ved



Nokia var det mest populære mobiltelefonmærke over hele kloden, før de hoppede ind på smartphonemarkedet. Nokia var kendt for at fremstille robuste telefoner, og en af ​​de ikoniske og mest robuste af alle var Nokia 3310.

Nokia-mærket lavede meget støj på tværs af sociale medier, og meme begyndte at flyde rundt på internettet, og det meste af meme var omkring 3310-modellen på grund af sin store holdbarhed hos hard-core-brugere. En eller anden legitim kilde siger, at Nokia-telefoner endda reddet nogle menneskers liv fra kugler.



Efter mindskelsen af ​​efterspørgslen efter disse modeller på markedet var der mange skærme, der ikke blev brugt. Nu er de renoveret og lanceret på markedet for vores tilpassede behov.

Hvis du vil have en til hands-on, behøver du ikke oprette en mini-nuklear eksplosion omkring dit område for at redde en fra din gamle Nokia-telefon. Den er almindeligt tilgængelig på e-handelswebsteder.

Illustration af Nokia 5110-skærm:

Sjovt faktum: Nokia 5110-skærm blev også brugt i 3310-modellen og nogle flere andre Nokia-telefonmodeller også.

Lad os nu se, hvordan du forbinder skærmen med arduino.

Forbind skærm med Arduino

Sådan interface mobiltelefondisplay med Arduino

Skærmen er monokrom og har 84x48 pixels, som kan vise tekst og endda grafik.
Skærmen består af 8 ben: Vcc, GND, reset, chip select (CS), kommandovalg, seriel data ud, serielt ur og baggrundslys.

Skærmen er designet til at arbejde ved 3,3 V, og anvendelse af 5 V vil beskadige skærmen, så der skal udvises forsigtighed under håndtering af den.

Skærmen har baggrundsbelysningsfunktionalitet, der ofte er i hvid eller blå farve. 5V gives til baggrundsbelysning med 330 ohm strømbegrænsende modstand.

Stifter 7, 6, 5, 4 og 3 er forbundet til skærmens digitale stifter. Det er ikke obligatorisk at vide, hvordan arduino kommunikerer med displayet for at bruge det, vi tilføjer passende biblioteksfiler til arduino-softwaren, som tager sig af kommunikationen mellem arduino og display.

Lad os nu vise noget tekst.

Visning af tekst

Mobiltelefondisplay, der viser tekst med Arduino

Før du uploader koden, skal du downloade biblioteksfilerne og føje til din arduino IDE.

• github.com/adafruit/Adafruit-PCD8544-Nokia-5110-LCD-bibliotek
• github.com/adafruit/Adafruit-GFX-Library

Program til Hello world:

//------------Program Developed by R.Girish--------//
#include
#include
#include
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3)
void setup()
{
display.begin()
display.setContrast(50)
display.clearDisplay()
}
void loop()
{
display.setTextSize(1)
display.setTextColor(BLACK)
display.print('Hello world !')
display.display()
delay(10)
display.clearDisplay()
}
//------------Program Developed by R.Girish--------//

Hvis du vil udforske mere om kodningsdelen, kan du se på et eksempel på et program, der viser grafik, tekstfarve (sort / hvid), teststørrelse, tekstrotation og meget mere.

Lad os nu konstruere et digitalt ur.

Kredsløbsdiagram for digitalt ur:

Skematisk er den samme som den forrige, kun forskellen er, at de to 10K ohm-pull-down-modstande til indstilling af tid er tilsluttet til pin # 8, og pin # 9 resten af ​​kredsløbet er selvforklarende.

Program til digitalt ur:

//----------------Program developed by R.Girish-------//
#include
#include
#include
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3)
int h=12
int m
int s
int flag
int TIME
const int hs=8
const int ms=9
int state1
int state2
void setup()
{
display.begin()
display.setContrast(50)
display.clearDisplay()
}
void loop()
{
s=s+1
display.clearDisplay()
display.setTextSize(2)
display.print(h)
display.print(':')
display.print(m)
display.setTextSize(1)
display.print(':')
display.print(s)
display.setTextSize(2)
display.setCursor(0,16)
if(flag<12) display.println('AM')
if(flag==12) display.println('PM')
if(flag>12) display.println('PM')
if(flag==24) flag=0
display.setTextSize(1)
display.setCursor(0,32)
display.print('Have a nice day')
display.display()
delay(1000)
if(s==60)
{
s=0
m=m+1
}
if(m==60)
{
m=0
h=h+1
flag=flag+1
}
if(h==13)
{
h=1
}
//-----------Time setting----------//
state1=digitalRead(hs)
if(state1==1)
{
h=h+1
flag=flag+1
if(flag<12) display.print(' AM')
if(flag==12) display.print(' PM')
if(flag>12) display.print(' PM')
if(flag==24) flag=0
if(h==13) h=1
}
state2=digitalRead(ms)
if(state2==1)
{
s=0
m=m+1
}
}
//-------- Program developed by R.GIRISH-------//

Lad os nu diskutere skærmens grafiske muligheder. Nokia 5110-skærmen har 84x48 pixels, som også kan vise meget begrænset grafik i sort / hvid. Det er muligvis ikke så dygtige farvedisplay i smartphones, men det er meget nyttigt, hvis vi har brug for at vise logoer eller symboler i dit projekt.

Illustration af grafik ved hjælp af Nokia 5110-skærm:

Populært troldansigt:

Dr. A.P.J Abdul Kalam:

Som vi kan se, at ved hjælp af en monokrom skærm, er vi stadig i stand til at vise nogle fotos eller logoer direkte fra arduino. Vi har ikke brug for nogen form for ekstern hukommelse såsom SD-kort.

Processen med at konvertere et foto til 'C' -kode er genstand for en anden artikel, hvor vi trin for trin illustrerer processen.

Hvis du har spørgsmål, bedes du udtrykke det gennem kommentarsektionen.




Forrige: BJT Emitter-Follower - Working, Application Circuits Næste: Surge Arrestor Circuit med målefacilitet