Neste post, aprenderemos como fazer a interface do visor do Nokia 5110 com o microcontrolador arduino e como exibir algum texto, também construiremos um relógio digital simples e, finalmente, exploraremos os recursos gráficos do visor do Nokia 5110.
De
A Nokia era a marca de telefones celulares mais popular em todo o mundo antes de entrar no mercado de smartphones. A Nokia era conhecida por fabricar telefones robustos e um dos icônicos e mais robustos de todos foi o Nokia 3310.
A marca Nokia fez muito barulho nas redes sociais e o meme começou a circular na internet e a maior parte do meme era sobre o modelo 3310, devido a sua grande durabilidade com usuários hard-core. Algumas fontes legítimas dizem que os telefones da Nokia até salvaram a vida de algumas pessoas de balas.
Após a redução da demanda por esses modelos no mercado, muitos displays ficaram sem uso. Agora eles são remodelados e lançados no mercado para nossas necessidades personalizadas.
Se quiser um para a prática, você não precisa criar uma mini explosão nuclear em sua área para resgatar um do seu antigo telefone Nokia É comumente disponível em sites de comércio eletrônico.
Ilustração da tela do Nokia 5110:

Curiosidade: a tela do Nokia 5110 também foi usada no modelo 3310 e em mais alguns outros modelos de telefones Nokia.
Agora vamos ver como conectar o display com o arduino.
Conecte a tela com o Arduino

A tela é monocromática e possui 84×48 pixels que podem exibir texto e até gráficos.
O display é composto por 8 pinos: Vcc, GND, reset, chip select (CS), command select, serial data out, serial clock e backlight.
O monitor foi projetado para funcionar a 3,3 V e a aplicação de 5 V danificará o monitor, portanto, tome cuidado ao manuseá-lo.
A tela possui a funcionalidade de luz de fundo que geralmente é na cor branca ou azul. 5V é dado à luz de fundo com resistor limitador de corrente de 330 ohm.
Os pinos 7, 6, 5, 4 e 3 são conectados aos pinos digitais do display. Não é obrigatório saber como o arduino se comunica com o display para utilizá-lo; adicionaremos os arquivos de biblioteca apropriados ao software arduino que cuidará da comunicação entre o arduino e o display.
Agora vamos exibir algum texto.
Exibindo texto

Antes de fazer upload do código, você deve baixar os arquivos da biblioteca e adicionar ao seu IDE do arduino.
• github.com/adafruit/Adafruit-PCD8544-Nokia-5110-LCD-library
• github.com/adafruit/Adafruit-GFX-Library
Programa para Olá mundo:
//------------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--------//
Se você quiser explorar mais sobre a parte de codificação, você pode dar uma olhada no programa de exemplo, que mostra gráficos, cor do texto (preto/branco), tamanho do teste, rotação do texto e muito mais.
Agora vamos construir um relógio digital.

Diagrama de circuito para relógio digital:

O esquema é o mesmo que o anterior, apenas a diferença é que os dois resistores pull-down de 10K ohm para definir o tempo são conectados ao pino 8 e ao pino 9; resto do circuito é auto-explicativo.
Programa para relógio 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-------//
Agora, vamos discutir os recursos gráficos da tela. A tela do Nokia 5110 tem 84×48 pixels, o que pode mostrar gráficos muito limitados também em monocromático. Pode não ser tão capaz de exibir cores em smartphones, mas é muito útil se precisarmos exibir logotipos ou símbolos em seu projeto.
Ilustração de gráficos usando a tela do Nokia 5110:
Cara de troll popular:

Dr. APJ Abdul Kalam:

Como podemos ver que usando uma tela monocromática, ainda podemos exibir algumas fotos ou logotipos diretamente do arduino. Não precisamos de nenhum tipo de memória externa, como cartão SD.
O processo de conversão de uma foto em código “C” é assunto de outro artigo, onde ilustraremos o processo passo a passo.
Se você tiver alguma dúvida, por favor, expresse através da seção de comentários.
Hashtags: #Como #fazer #interface #display #celular #Arduino
FONTE
Nota: Este conteúdo foi traduzido do Inglês para português (auto)
Pode conter erros de tradução
Olá, se tiver algum erro de tradução (AUTO), falta de link para download etc…
Veja na FONTE até ser revisado o conteúdo.
Status (Ok Até agora)
Se tiver algum erro coloque nos comentários