Com interactuar la pantalla del mòbil amb Arduino

Proveu El Nostre Instrument Per Eliminar Problemes





En aquesta publicació, aprendrem a relacionar la pantalla Nokia 5110 amb el microcontrolador arduino i a mostrar text, també construirem un simple rellotge digital i, finalment, explorarem les capacitats gràfiques de la pantalla Nokia 5110.

Per



Nokia era la marca de telèfons mòbils més populars a tot el món abans de saltar al mercat dels telèfons intel·ligents. Nokia era conegut per la fabricació de telèfons robusts i un dels més icònics i robustos de tots era el Nokia 3310.

La marca Nokia va fer molt de soroll a través de les xarxes socials i els mems van començar a surar per Internet i la majoria dels memes eren al voltant del model 3310, a causa de la seva gran durabilitat amb els usuaris de nucli dur. Alguna font legítima diu que els telèfons Nokia fins i tot van salvar la vida d’algunes persones de les bales.



Després de la reducció de la demanda d'aquests models al mercat, quedaven moltes pantalles inutilitzades. Ara es reformen i es llancen al mercat per a les nostres necessitats personalitzades.

Si en voleu una de pràctica, no cal que creeu una mini-explosió nuclear a la vostra zona per salvar-ne una del vostre antic telèfon Nokia. Normalment està disponible als llocs de comerç electrònic.

Il·lustració de la pantalla Nokia 5110:

Dades curioses: la pantalla Nokia 5110 també es va utilitzar en el model 3310 i en alguns altres models de telèfons Nokia.

Ara veurem com connectar la pantalla amb arduino.

Connecteu la pantalla amb Arduino

Com interactuar la pantalla del mòbil amb Arduino

La pantalla és monocroma i té 84x48 píxels que poden mostrar text i fins i tot gràfics.
La pantalla consta de 8 pins: Vcc, GND, restabliment, selecció de xip (CS), selecció d’ordres, sortida de dades sèrie, rellotge sèrie i llum de fons.

La pantalla està dissenyada per funcionar a 3,3 V i l'aplicació de 5 V perjudicarà la pantalla, per la qual cosa s'ha de tenir precaució en manipular-la.

La pantalla té una funcionalitat de llum de fons que sol ser de color blanc o blau. Es dóna 5V a la llum de fons amb una resistència limitadora de corrent de 330 ohms.

Els pins 7, 6, 5, 4 i 3 estan connectats als pins digitals de la pantalla. No és obligatori saber com es comunica l'arduino amb la pantalla per tal d'utilitzar-lo, afegirem fitxers de biblioteca adequats al programari arduino que s'encarregarà de la comunicació entre arduino i pantalla.

Ara mostrem text.

Visualització de text

Pantalla del mòbil amb text amb Arduino

Abans de penjar el codi, heu de descarregar els fitxers de la biblioteca i afegir-los al vostre IDE arduino.

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

Programa per a 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--------//

Si voleu explorar més sobre la part de codificació, podeu fer un cop d'ull a un programa d'exemple, que mostra els gràfics, el color del text (blanc / negre), la mida de la prova, la rotació del text i molt més.

Ara construïm un rellotge digital.

Diagrama de circuits per al rellotge digital:

L'esquema és el mateix que l'anterior, només la diferència és que les dues resistències desplegables de 10K ohms per configurar el temps es connecten al pin # 8 i el pin # 9 de la resta del circuit s'explica per si mateix.

Programa per al rellotge digital:

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

Ara, analitzem les capacitats gràfiques de la pantalla. La pantalla Nokia 5110 té 84x48 píxels, que poden mostrar gràfics molt limitats que també en monocrom. Pot ser que no sigui una pantalla de color tan capaç als telèfons intel·ligents, però és molt útil si hem de mostrar logotips o símbols al vostre projecte.

Il·lustració de gràfics mitjançant la pantalla Nokia 5110:

Cara de troll popular:

El Dr. A.P.J Abdul Kalam:

Com podem veure que utilitzant una pantalla monocroma, encara podem mostrar algunes fotos o logotips directament des d’arduino. No necessitem cap tipus de memòria externa com la targeta SD.

El procés de convertir una foto en codi 'C' està subjecte a un altre article, on il·lustrarem el procés pas a pas.

Si teniu cap pregunta, expresseu-la a través de la secció de comentaris.




Anterior: Emissor-seguidor BJT - Circuits d'aplicació i de treball Següent: Circuit de descàrrega de sobretensions amb instal·lació de mesura