Introducción a las Pantallas OLED
Las pantallas OLED (Organic Light-Emitting Diode) son una tecnología de visualización versátil para proyectos de electrónica y Arduino. Emiten luz propia sin necesidad de retroiluminación, lo que resulta en un bajo consumo de energía (aproximadamente 20mA) y excelente visibilidad, incluso en condiciones de luz solar.
Este documento se centra en las pantallas OLED monocromáticas de 0.96" y 1.30" que utilizan los controladores SSD1306 o SH1106. Estas pantallas compactas (25mm x 14mm) ofrecen una resolución de 128x64 píxeles y son compatibles con interfaces de comunicación I2C y SPI, admitiendo voltajes de 3.3V y 5V.
Configuración I2C y SPI
Las pantallas vienen configuradas de fábrica para el modo SPI. Para utilizarlas en modo I2C, es necesario realizar ajustes físicos, como mover una resistencia y un puente. Se detallan las configuraciones específicas para los modelos de 1.30" y 0.96".
Correspondencia de Pines y Conexión con Arduino
Conexión SPI
Detalles de la conexión SPI de la pantalla OLED con una placa Arduino Uno, incluyendo los pines correspondientes.
Conexión I2C
Detalles de la conexión I2C de la pantalla OLED con una placa Arduino Uno, especificando los pines SCL y SDA.
Se incluyen diagramas de conexionado para ambos modos (SPI y I2C) y ambos tamaños de pantalla (0.96" y 1.30").
Librerías para Arduino IDE
Para facilitar la programación de estas pantallas con Arduino, se recomiendan las siguientes librerías:
- SSD1306: Adafruit_SSD1306 - GitHub
- GFX: Adafruit_GFX - GitHub
- SH1106: U8glib - Universal Graphics Library for 8 Bit Embedded Systems - GitHub
Se explican los pasos para descargar, descomprimir y organizar estas librerías en la carpeta 'libraries' del IDE de Arduino. Se abordan consideraciones previas, como la necesidad de modificar la configuración de tamaño de pantalla en el controlador SSD1306 para que funcione correctamente.
Ejemplo de Programa (Modo SPI)
Se presenta un programa de ejemplo para controlar las pantallas OLED SSD1306 o SH1106 de 128x64 píxeles utilizando la interfaz SPI con Arduino. El código incluye la configuración de pines y una demostración básica de cómo mostrar texto en la pantalla. Se detallan las instrucciones para descomentar el código apropiado según se utilice el driver SSD1306 o SH1106.