Tutoriales

Librería LCD Nokia 5110 para Raspberry Pi y otras plataformas

nokia 5110 raspberry piEn este artículo encontrarás una librería en modo texto para emplear la pantalla Nokia 5110 (driver PCD8544) en tu Raspberry Pi o en cualquier otro microcontrolador o procesador. La librería está basada en código liberado por Mike Pose y simplemente se limpió para desacoplar el código de envío SPI, ya sea por Bitbang o por hardware.

 

 

Software necesario

+ Paquete de descarga librería Nokia 5110 Raspberry Pi

Bitbang SPI (Raspberry Pi)

Hardware SPI (Raspberry Pi)

+ Ambiente Linux en PC con cross-compiler ARM previamente instalado

 

Items necesarios

+ Raspberry Pi

+ Pantalla Nokia 5110. La puedes comprar en Deal Extreme (click en la imagen).

nokia 5110 raspberry pi

 

Librería de Mike Pose

La librería que Mike Pose publicó es capaz de escribir texto en la pantalla 5110, proporcionando 14 caracteres por 6 líneas. Está programada para ser usada en una tarjeta SimpleCortex. Cuenta con funciones básicas de posicionamiento de cursor y escritura de texto.

Link a librería original

La librería envía datos por SPI a la pantalla, pero lo hace en modo bitbang (SPI por software). Tomaremos esta librería, la limpiaremos un poco y la haremos universal para poder ser usada en cualquier microcontrolador o procesador, dejando abierta la implementación SPI para codificarla como mejor convenga.

 

Modificación de la librería con SPI abierto

La librería cuenta con varias funciones de escritura en un solo archivo, esto complica su implementación abierta en otros amibientes que no sean SimpleCortex. Lo único que se hará es agregar un archivo de callbacks, en el que se llamarán funciones de hardware para enviar los datos por SPI a la pantalla. Los archivos generados son los siguientes:

 

 

nokia 5110 files

 

 

+ lcd_pcd8544.h

Este header incluye todas las funciones que deberás llamar desde tu código principal para hacer uso de la librería. Es el único archivo que deberás incluir.

+ lcd_pcd8554_cbk.h

Este archivo define los prototipos de funciones que debes implementar en tu microcontrolador o procesador en específico, de forma tal que implementes SPI como mejor te convenga.

+ lcd_pcd8544.c

Aquí se programó el envío de caracteres y dibujado de la pantalla.

+ lcd_pcd8544_callouts.c

Aquí es donde defines las funciones que el archivo lcd_pcd8554_cbk.h está necesitando. Es el único archivo que deberás modificar.