Trabajar con arduino y una pantalla Nokia 5110

Como trabajar con la pantalla Nokia 5110 LCD y el arduino

Cuando queremos que nuestro arduino nos muestre información, la opción más habitual es instalarle una pantalla. Y la pantalla que traía los modelos Nokia 5110 es una buena alternativa, tiene un tamaño ni muy grande, ni muy pequeño, nos permite mostrar información en pantalla nokia 5110 LCDmodo gráfico, lo que nos permitirá una gran flexibilidad a la hora de presentar nuestros resultados. Y además, para mi principalmente el precio es muy asequible, por poco más de 3€ podemos hacernos con una.

Ya con todos los conectores y configuración para montarla con nuestro arduino.

Otra de las principales características importantes de esta pantalla LCD, es la de disponer de multitud de librerías que que nos facilitaran enormemente su programación.

Materiales usados

Arduino UNO Arduino UNO
pantalla nokia 5110 Pantalla Nokia 5110
protoboard Protoboard
cables_union Cables de conexión

Montaje de la pantalla LCD Nokia 5110 con

arduino

Para conectar la pantalla del nokia 5110
con nuestro arduino conectaremos los siguientes pines del arduino a los conectores de la pantalla. Dependiendo del fabricante de la pantalla la posición de los pines puede variar, he incluso algún nombre también.

Pin Pantalla Pin Arduino Descripción
Rst 3 Reinicio de la pantalla
CE | SCE 4 Chip selection ( Selección del chip)
DC | D/C 5 Data / Commands choice (Envío de datos o comandos)
Din | DN | MOSI 6 Serial data in (Envío de datos serial)
CLK | SCLK 7 Serial Clock ( señal de sincronización)
Vcc +3,3 Alimentación a la pantalla de 3,3 ( Esta pantalla funciona con un rango de voltaje de 2,7 a 3,3, NO CONECTAR A 5V
LIght GND Retroiluminación de la pantalla, le podemos poner un potenciómetro para regular la iluminación.
GND GND Alimentación negativa de la pantalla

En algunos montaje he visto que intercalan resistencias en los pines de datos (los pines de la pantalla del 1 al 5), yo lo he probado, tanto con resistencias como sin ellas y la pantalla funciona perfectamente, Puede ser que el montaje de mi pantalla ya estén instaladas, lo desconozco.

Programación de la pantalla LCD Nokia 5110

Gracias a la popularidad de esta pantalla existe multitud de librerías, después de probar varias yo me quedo con la de Adafruit PCD8544 Nokia 5110 LCD. Es muy sencilla es su manejo, es compatible con las ultimas versiones de Arduino IDE, y trae un ejemplo que facilita su uso, para poder utilizar las funciones gráficas de la librería tenemos que instalar esta otra librería, la librería gráfica GFX, que sera la que nos permita mostrar gráficos en nuestra pantalla.

Inicialización de la pantalla Nokia 5110

Creamos el objetos que manejara la pantalla, aquí le pasamos como parámetros los pines donde están los pines de datos de la pantalla.

// Software SPI (slower updates, more flexible pin options):
// pin 7 - Serial clock out (SCLK)
// pin 6 - Serial data out (DIN)
// pin 5 - Data/Command select (D/C)
// pin 4 - LCD chip select (CS)
// pin 3 - LCD reset (RST)
Adafruit_PCD8544 Pantalla = Adafruit_PCD8544(7, 6, 5, 4, 3);

Arrancamos la pantalla

  Pantalla.begin();

Ajustamos el contraste, no confundir con la retroiluminación, esto configura el negro de la pantalla, lo situamos a la mitad, podemos ajustarlo a nuestro gusto.

display.setContrast(50);

Mostrar texto en la pantalla Nokia 5110

Para mostrar cadena de caracteres simplemente le tenemos que indicar la posición donde queremos que se muestre el texto, el color, aunque la pantalla es de blanco y negro podemos jugar con invertir el color, escribir el negro o en blanco, y el tamaño de la fuente a utilizar.

// text display tests
Pantalla.setTextSize(1);
Pantalla.setTextColor(BLACK);
Pantalla.setCursor(0,0);
Pantalla.println("Hello, world!");
Pantalla.setTextColor(WHITE, BLACK); // 'inverted' text
Pantalla.println(3.141592);
Pantalla.setTextSize(2);
Pantalla.setTextColor(BLACK);
Pantalla.print("0x"); 
Pantalla.println(0xDEADBEEF, HEX);
Pantalla.display();

El ultimo comando «Pantalla.display()»  es la que mostrara el texto, los comandos anteriores cargan la información en el buffer, hasta que no pongamos el comando display no se mostrara en la pantalla.

Mostrar gráficos en la pantalla Nokia 5110

Si queremos mostrar gráficos en la pantalla lo mejor es cargar el ejemplo de la librería, en el encontramos como dibujar una linea

void testfillrect(void) {
  uint8_t color = 1;
  for (int16_t i=0; i<display.height()/2; i+=3) {
    // alternate colors
    display.fillRect(i, i, display.width()-i*2, display.height()-i*2, color%2);
    display.display();
    color++;
  }
}

Círculos, rectángulos, múltiples lineas, imágenes bitmap, etc.

Por ultimo un pequeño video del funcionamiento de la pantalla nokia 5110 y el arduino con la librería de Adafruit.

Gracias ha esta pequeña pantalla y a la librería de Adafruit el mostrar información con nuestro arduino sera muy fácil y sencillo.

Si tienes alguna duda o algún comentario, no dudes en escribirnos.