ESP32 - OLED
Este tutorial te enseña cómo usar el ESP32 para mostrar datos en un OLED. En detalle, aprenderemos a imprimir caracteres y números, dibujar líneas y formas, y mostrar una imagen en la pantalla OLED.
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Acerca de la pantalla OLED
Existen varios tipos diferentes de pantallas OLED que pueden funcionar con el ESP32. Se diferencian entre sí por la interfaz de comunicación (I2C, SPI), por los colores (blanco, azul, de dos colores...), y por los tamaños (128x64, 128×32...).

Este tutorial utiliza una pantalla OLED I2C SSD1306 de 128x64.
Pinout de la pantalla OLED I2C
La pantalla OLED I2C incluye 4 pines:
- Pin GND: debe conectarse a la tierra del ESP32
- Pin VCC: debe conectarse al pin de 5 voltios del ESP32.
- Pin SCL: es un pin de reloj I2C.
- Pin SDA: es un pin de datos I2C.

Diagrama de Cableado
- Cómo conectar ESP32 a la pantalla OLED de 128x64 utilizando breadboard

This image is created using Fritzing. Click to enlarge image
Si no sabe c\u00f3mo alimentar ESP32 y otros componentes, encuentre instrucciones en el siguiente tutorial: C\u00f3mo alimentar ESP32.
- Cómo conectar el ESP32 a una pantalla OLED de 128×64 utilizando placa de breakout con terminales de tornillo

※ Nota:
- El orden de los pines del módulo OLED puede variar entre fabricantes. SIEMPRE utilice las etiquetas impresas en el módulo OLED. ¡Observe detenidamente!
Cómo usar OLED con ESP32
Instalar la biblioteca OLED SSD1306
- Haz clic en el icono de Bibliotecas en la barra izquierda del IDE de Arduino.
- Escribe SSD1306 en la caja de búsqueda, y luego busca la biblioteca SSD1306 de Adafruit
- Instala la biblioteca haciendo clic en el botón Instalar.

- Aparece una ventana para pedirle que instale las dependencias de la biblioteca.
- Instale todas las dependencias de la biblioteca haciendo clic en el botón Instalar todo.

Cómo programar para OLED
- Incluir biblioteca
- Definir el tamaño de la pantalla (123x64 o 128 x32)
- Declara un objeto OLED SSD1306
- En la función setup(), inicialice la pantalla OLED
- Y luego puedes mostrar texto, imágenes, dibujar una línea ...
Código ESP32 - Mostrar texto en OLED
El código ESP32 de abajo muestra un texto en una pantalla OLED.
Podemos hacer más utilizando las siguientes funciones:
- oled.clearDisplay(): esta función se usa para borrar la pantalla
- oled.setTextSize(n): esta función se usa para establecer el tamaño de la fuente; admite tamaños del 1 al 8
- oled.setTextColor(WHITE): esta función se usa para establecer el color del texto
- oled.setCursor(x,y): esta función se usa para establecer las coordenadas desde las que se comienza a mostrar el texto
- oled.drawPixel(x,y, color): esta función se usa para trazar un píxel en las coordenadas x, y
- oled.setTextColor(BLACK, WHITE): esta función se usa para establecer el color del texto y el color de fondo, respectivamente
- oled.println("message"): esta función se usa para imprimir una cadena de texto
- oled.println(number): esta función se usa para imprimir un número
- oled.println(number, HEX): esta función se usa para imprimir un número en formato hexadecimal
- oled.display(): esta función se usa para aplicar los cambios
- oled.startscrollright(start, stop): esta función se usa para desplazar el texto de la izquierda hacia la derecha
- oled.startscrollleft(start, stop): esta función se usa para desplazar el texto de la derecha hacia la izquierda
- oled.startscrolldiagright(start, stop): esta función se usa para desplazar el texto desde la esquina inferior izquierda hasta la esquina superior derecha
- oled.startscrolldiagleft(start, stop): esta función se usa para desplazar el texto desde la esquina inferior derecha hasta la esquina superior izquierda
- oled.stopscroll(): esta función se usa para detener el desplazamiento
Código ESP32 - Dibujar formas en OLED
El código de abajo muestra cómo dibujar varias figuras en una pantalla OLED.
Después de ejecutar el código, verás un rectángulo, un círculo y un triángulo en la pantalla OLED.

Código ESP32 – Mostrar una imagen en OLED
Para mostrar una imagen en una pantalla OLED, es necesario convertir la imagen en un arreglo de mapa de bits. Existe una herramienta en línea para convertir la imagen en un arreglo de mapa de bits. La imagen de abajo muestra cómo hacerlo. Convertí el icono de ESP32 en un arreglo de mapa de bits.

Después de convertir, copie el código del arreglo y actualícelo en el arreglo bitmap_image en el código siguiente:
Al ejecutar el código anterior, verás la imagen mostrada en la pantalla OLED, como se muestra a continuación.
