Librería 4Display-Shield para Arduino

Publicado por en Arduino el 09/12/2010

Hace muy poco, los chicos de 4D Systems han sacado a la luz unas estupendas placas shield para Arduino que permiten utilizar sus pequeñas pantallas inteligentes OLED directamente con Arduino. Éstas pantallas permiten dibujar gráficos a todo color mediante un sencillo protocolo série, pudiendo dibujas cosas simples como pixeles, rectángulos, círculos etc y también gráficos o vídeo. Además todos los modelos disponen de un zócalo para tarjetas de memoria microSD que permite almacenar tanto datos como imágenes, animaciones o incluso vídeos para luego reproducir directamente en la pantalla.

Han sacado varios modelos de placas shield con distintos tamaños de pantalla y tras una conversación con uno de los ingenieros y el fundador de la compañía, me he puesto a desarrollar una pequeña librería llamada displayshield4d que permite utilizar las nuevas shield fácilmente con Arduino.

En concreto, 4D Systems ha sacado 4 modelos diferentes y todas con la misma base salvo la pantalla:

Los 4 modelos actualmente son:

Todas las placas disponen de un pequeño joystick que permite utilizarlo también como pulsador. Las pantallas de 4D Systems son estupendas por su extrema sencillez de uso aunque a priori puedan parecer un poco complicadas de hacer funcionar, pero nada más lejos de eso. Disponen de un puerto UART que permite conectarlas a un host como Arduino con tan sólo dos pines (TX y RX). Se alimentan con 5V y su consumo en general es muy bajo. Por su tecnología OLED, se ven extremadamente bien y son ideales para utilizar incluso a plena luz del sol.

Su programación también es muy sencilla dado que utilizan un sencillo protocolo serie muy bien documentado que permite indicarle a la pantalla qué hacer, cómo por ejemplo dibujar una linea, un circulo, textos, imágenes o vídeos. Disponen de mucho comandos que permiten hacer una gran cantidad de cosas y de paso alivia el host de tener que hacerlo y así poder utilizarlo para otras tareas. Liberaremos así el Arduino de la tarea de dibujar un entorno gráfico y podremos ahorrar espacio de programa, a la vez que podremos hacer una interfaz muy atractiva y profesional con muy pocas lineas de código.

Para facilitar ese proceso, he realizado una pequeña librería que en principio está pensada para las 4Display-Shield citadas arriba, pero que también es válida para gestionar directamente las pantallas uOLED-96, uOLED-128 y uOLED-160 de 4D Systems. En principio también es válida para todos los modelos de pantalla con chip GOLDELOX-SGC. Hace ya varios años que he desarrollado una librería para éstas pantallas aunque ha quedado un poco (bastante!) obsoleta. Ésta nueva librería se puede considerar como una nueva versión mejorada de su predecesora.

uOLED-96 uOLED-128 uOLED-160

La librería se llama displayshield4d y está disponible para descargar en Google code. Está en fase de desarrollo pero actualmente ya es capaz de inicializar la pantalla (57600bps), dibujar gráficos básicos como píxeles individuales, lineas, rectángulos, triángulos (con opción de linea o relleno), también permite dibujar textos pudiendo seleccionar varios tamaños de fuente y posicionarlo donde queramos. He puesto el soporte para ajustar el contraste y entrar en modo de bajo consumo. Quedan muchos comandos aún por añadir y poco a poco iré poniendo más cosas. Por supuesto, todo el código es Open Source bajo una licencia Creative Commons y todo aquel que quiera participar no tiene más que decírmelo. Podéis descargar la primera versión de la librería o descargar directamente el fuente desde el repositorio (subversion) por si queréis hechar un vistazo, modificarla a vuestro gusto o simplemente quereis tener siempre la última versión del fuente:

svn checkout http://displayshield4d.googlecode.com/svn/trunk/ displayshield4d-read-only

También he puesto para descargar un pequeño programa demo de ejemplo que permite ver cómo utilizar la librería. Y como no podía ser de otra forma, también os dejo un vídeo para que veas cómo queda. Espero vuestro comentarios y sugerencias. Espero que os guste! :)

En la tienda

Arduino 4Display shield 160

Si te ha gustado, compártelo con tus amigos!

Ver comentarios antiguos...

Uso de Cookies

Utilizamos cookies propias y de terceros para optimizar tu visita. No utilizamos cookies para recoger información de carácter personal.

Puedes permitir su uso o rechazarlo y cambiar su configuración cuando lo desees.

Cerrar

Más información en nuestra Política de Cookies.