Kā saskarne Mobilais displejs ar Arduino

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Šajā ierakstā mēs iemācīsimies saskarni Nokia 5110 saskarni ar arduino mikrokontrolleru un kā parādīt tekstu, mēs arī konstruēsim vienkāršu digitālo pulksteni un visbeidzot izpētīsim Nokia 5110 displeja grafiskās iespējas.

Autors



Nokia bija populārākais mobilo tālruņu zīmols visā pasaulē, pirms tie ienāca viedtālruņu tirgū. Nokia bija pazīstama ar izturīgu tālruņu ražošanu, un viena no ikoniskākajām un izturīgākajām no tām bija Nokia 3310.

Nokia zīmols radīja lielu troksni visos sociālajos medijos, un meme sāka peldēt internetā, un lielākā daļa meme bija apmēram 3310 modelis, pateicoties tā lielajai izturībai ar cietajiem lietotājiem. Daži likumīgi avoti saka, ka Nokia tālruņi dažu cilvēku dzīvību pat izglāba no lodēm.



Pēc pieprasījuma samazināšanās pēc šiem modeļiem tirgū bija daudz displeju, kas palika neizmantoti. Tagad tie ir atjaunoti un laisti tirgū mūsu pielāgotajām vajadzībām.

Ja vēlaties to izmantot, jums apkārt nav jāizveido kodolieroču sprādziens, lai to izglābtu no vecā Nokia tālruņa. Tas ir plaši pieejams e-komercijas vietnēs.

Nokia 5110 displeja ilustrācija:

Jautrs fakts: Nokia 5110 displejs tika izmantots arī 3310 modelī un vēl dažos citos Nokia tālruņu modeļos.

Tagad redzēsim, kā savienot displeju ar arduino.

Savienojiet displeju ar Arduino

Kā saskarne Mobilais displejs ar Arduino

Displejs ir vienkrāsains, un tam ir 84x48 pikseļi, kas var parādīt tekstu un pat grafiku.
Displejs sastāv no 8 tapām: Vcc, GND, atiestatīšana, mikroshēmas izvēle (CS), komandu izvēle, sērijas datu izvadīšana, sērijas pulkstenis un apgaismojums.

Displejs ir paredzēts darbam ar 3,3 V un 5 V iedarbināšana sabojās displeju, tāpēc, rīkojoties ar to, jābūt uzmanīgam.

Displejam ir apgaismojuma funkcionalitāte, kas parasti ir baltā vai zilā krāsā. 5V tiek piešķirts apgaismojumam ar 330 omu strāvas ierobežojošo rezistoru.

7., 6., 5., 4. un 3. tapas ir savienotas ar displeja digitālajām tapām. Nav obligāti jāzina, kā arduino sazinās ar displeju, lai to izmantotu. Arduino programmatūrai pievienosim atbilstošus bibliotēkas failus, kas rūpēsies par saziņu starp arduino un displeju.

Tagad parādīsim tekstu.

Parāda tekstu

Mobilā displeja teksta attēlošana ar Arduino

Pirms koda augšupielādes jums jālejupielādē bibliotēkas faili un jāpievieno savam arduino IDE.

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

Programma 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--------//

Ja vēlaties uzzināt vairāk par kodēšanas daļu, varat apskatīt programmas paraugu, kurā bija apskatīta grafika, teksta krāsa (melnbalta), testa lielums, teksta pagriešana un daudz kas cits.

Tagad izveidosim digitālo pulksteni.

Digitālā pulksteņa shēma:

Shēma ir tāda pati kā iepriekšējā, atšķirība ir tikai tā, ka divi 10K omu nolaišanas rezistori laika iestatīšanai ir savienoti ar tapu Nr. 8 un tapas Nr. 9 pārējā ķēde ir pašsaprotama.

Digitālā pulksteņa programma:

//----------------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-------//

Tagad apspriedīsim displeja grafiskās iespējas. Nokia 5110 displejā ir 84x48 pikseļi, kas arī melnbaltā krāsā var parādīt ļoti ierobežotu grafiku. Iespējams, viedtālruņos tas nav tik spējīgs krāsu displejs, taču tas ir ļoti noderīgi, ja mums jūsu projektā jāparāda logotipi vai simboli.

Grafikas ilustrācija, izmantojot Nokia 5110 displeju:

Populārā troļļa seja:

Dr. A.P.J. Abduls Kalams:

Kā redzam, ka, izmantojot vienkrāsainu displeju, mēs tomēr varam attēlot dažus fotoattēlus vai logotipus tieši no arduino. Mums nav nepieciešama nekāda veida ārējā atmiņa, piemēram, SD karte.

Fotoattēla pārveidošanas par “C” kodu process ir citā rakstā, kur mēs soli pa solim ilustrēsim.

Ja jums ir kādi jautājumi, lūdzu, izsakiet tos komentāru sadaļā.




Pāri: BJT Emitera sekotājs - darba, pielietojuma shēmas Nākamais: Pārsprieguma ierobežotāja ķēde ar mērīšanas iekārtu