Para poder mostrar imagenes en estas pantallas desde Arduino es necesario codificarlas de una manera tal que puedan ser incrustadas en el codigo del sketch, es decir hay que transformarlas a texto para pasarlas como si fueran el valor de una variable.
La pantalla 5110 de Nokia tiene unas dimensiones de 84x48 asi que lo que se puede hacer es crear una imagen con esas dimensiones en Gimp. Esta imagen debe ser duotono por que la pantalla no es capaz de representar escalas de grises.
Una vez tengamos el contenido de la imagen completado la exportaremos en formato PBM.
Por otro lado: en este blog: http://thegaragelab.com/nokia-5110-lcd- ... he-attiny/, encontraremos mucha informacion sobre como funcionan estan pequeñas pantallas y dentro del post que indico hay un enlace a un repositorio con un script de python que convierte imagenes en formato pbm a arrays de bytes tal y como necesitamos:
https://github.com/thegaragelab/tinytem ... cdimage.py
En este enlace podeis descargar este script con un pequeño ajuste que lo adecua a la pantalla que nos ocupa.
http://bilbaomakers.org/fitxategiak/lcdimage.zip
Simplemente tenemos que descomprimirlo y ejecutarlo pasandole como argumento el nombre de la imagen que queramos convertir:
Código: Seleccionar todo
./lcdimage.py <IMAGEN.PBM>
Código: Seleccionar todo
const uint8_t IMAGE_IMAGEN[] PROGMEM = {
0x169, 0x00, 0xfe, 0xfe, 0xfe, 0xf2, 0xee, 0xfa, 0x3a, 0xba, 0xb6, 0xb6,
0xa2, 0xbe, 0xae, 0xbe, 0xb2, 0xaa, 0xba, 0xbe, 0xba, 0xba, 0x36, 0xaa,
0xba, 0xba, 0xbe, 0xbe, 0xaa, 0xba, 0xba, 0xae, 0xbe, 0xbe, 0x2a, 0x3e,
0x32, 0xea, 0xfa, 0xe2, 0xfe, 0xfe, 0x00, 0xf8, 0x07, 0xff, 0xdf, 0x1f,
0x5f, 0xff, 0x00, 0x3f, 0x3f, 0x1f, 0x3f, 0x3f, 0x01, 0x01, 0x2f, 0x7f,
0x3f, 0x3f, 0x3d, 0x34, 0x00, 0x54, 0x7f, 0xbf, 0x9f, 0x1f, 0x0f, 0x07,
0xfb, 0xf9, 0xfd, 0x00, 0x00, 0x00, 0xec, 0x5f, 0x3f, 0x5f, 0xff, 0x0f,
0xe0, 0xff, 0xfc, 0xc3, 0x3e, 0xff, 0xff, 0xff, 0xfc, 0xe0, 0x00, 0x50,
0x78, 0x50, 0x30, 0x18, 0x08, 0xee, 0xe6, 0xf0, 0x50, 0x00, 0x00, 0xec,
0xff, 0xff, 0xfe, 0x00, 0x00, 0x11, 0xff, 0xff, 0x7f, 0x00, 0xe0, 0xfe,
0xff, 0xff, 0xff, 0x7f, 0x82, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf1,
0xcf, 0x3f, 0xff, 0xff, 0xff, 0xfc, 0xf2, 0xce, 0x88, 0x00, 0x00, 0xff,
0xff, 0xff, 0x55, 0x00, 0x00, 0xee, 0xff, 0xff, 0xff, 0x00, 0x00, 0x91,
0xcf, 0xf3, 0xfc, 0xff, 0xff, 0xff, 0x3f, 0xcf, 0xf1, 0xfc, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf9, 0xf7, 0xcf,
0x9f, 0x7f, 0xc3, 0xaa, 0x8c, 0x5b, 0xf3, 0x6f, 0xc5, 0x80, 0x80, 0x96,
0x6f, 0xe7, 0x19, 0x1c, 0xea, 0x5d, 0x61, 0xbf, 0xcf, 0xe7, 0xf9, 0xfc,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfb, 0xf6,
0xe7, 0xcc, 0x97, 0x3f, 0x6b, 0x94, 0xd8, 0xe5, 0xf7, 0xfb, 0xf9, 0xfe,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff,
};
https://youtu.be/tFvSZBBVu1I
En la web del desarrollador de la libreria que estoy usando para gestionar la pantalla he encontrado tambien un conversor online:
http://www.rinkydinkelectronics.com/t_i ... ter565.php