¿Cuál es la mejor manera de interactuar con el espectáculo OLED con ESP32? Tutorial del espectáculo OLED de ESP32

En este tutorial, descubriremos la forma de interconectar un módulo de visualización OLED con la placa de mejora ESP32. El espectáculo gráfico OLED utilizado en esta misión se basa en el CI controlador OLED SSD1306 y se comunica a través de SPI. Utiliza el ESP32 con el OLED para mostrar contenido textual, imágenes de mapa de bits, gráficos y mucho más, en tu misión de bricolaje.

Introducción

El OLED o diodo emisor de luz natural es un programa avanzado que utiliza una película natural compuesta entre dos electrodos (ánodo y cátodo) y, cuando se aplica una tensión a través de los electrodos, la película natural emite suavemente.

La principal ventaja de una pantalla OLED es que emite su propia luz y no necesita otro suministro de luz de fondo. Como consecuencia de esto, las pantallas OLED suelen tener mayor distinción, brillo y ángulos de visión en comparación con las pantallas LCD.

Otra característica vital de las pantallas OLED es la banda negra profunda. Dado que cada píxel emite su propia luz en una pantalla OLED, para suministrar el color negro, el píxel personal estará apagado.

Unas palabras de transición sobre el SSD1306 OLED Show

¿Quieres utilizar una pantalla OLED en tu proyecto de bricolaje? ¿Quieres mostrar datos vitales como la Tasa de IP, la Tasa de Servidores de Internet y muchos otros en un programa? Entonces, el Módulo OLED Show SSD1306 es la posibilidad adecuada.

Módulo de pantalla SPI-OLED

Este módulo consiste en una pantalla OLED monocromática con una decisión de 128 píxeles por 64 píxeles. Mide 0,96″ en diagonal. Este espectáculo OLED utiliza el CI del controlador OLED SSD1306.

Las pantallas OLED SSD1306 tienen tres variedades de interfaces de comunicación:

  • interfaz paralela 6800 de 8 bits
  • sPI de 3 o 4 hilos
  • I2C

De ellos, el I2Los OLED de tipo C y SPI son bastante comunes. Es posible cambiar la configuración de SPI a I2C y viceversa (has soldado/desoldado algunas resistencias SMD). El maniquí que tengo utiliza la comunicación SPI de 4 hilos.

Módulo de pantalla SPI-OLED-frontal

El SSD1306 OLED Driver IC tiene 128 x 64 bits de RAM de conocimiento gráfico (GDDRAM). Está dividida en ocho páginas (PÁGINA 0 a PÁGINA 7) y cada página web tiene 128 segmentos. De nuevo, cada etapa consta de 8 bits y cada bit representa un píxel del espectáculo.

Así, 8 páginas * 128 segmentos * 8 bits = 8192 bits (1024 bytes).

SSD1306-RAM

Pinout del módulo OLED Show

La siguiente tabla muestra la distribución de pines SPI de 7 pines, basada principalmente en el módulo de visualización OLED.

Pinout (nombres diferentes)

Descripción
GND

Piso

VCC

Fuente de alimentación
D0 (SCK, SCL, CLK)

Ver

D1 (MOSI, SDA)

Conocimiento
RES (RST)

Reinicia

DC (A0)

Conocimiento / Elección del mando
CS

Elige el chip

SPI-OLED-Display-Pinout

Fuente de alimentación

El IC del controlador OLED SSD1306 funciona en VDD = 1,65V a 3,3V y el panel OLED funciona con precisión en VDC = 7V a 15V. El módulo OLED Show se encarga de estos amplios rangos de necesidades de voltaje con un circuito de bomba de coste (para el panel) y un regulador (para el IC del controlador) a partir de una única fuente de alimentación (a menudo entre 3V y 5V).

Esto hace que el módulo de visualización OLED esté relacionado con placas completamente diferentes como Arduino (con lógica de 5V) y ESP32 (con lógica de 3,3V).

Interfaz del ESP32 OLED Show

Ahora podemos ver cómo interconectar una pantalla OLED con el ESP32. Lo primero que hay que entender es que la interfaz de comunicación es SPI. Así que echa un vistazo al Pinout del ESP32 y determina los Pines SPI.

ESP32-Pinout

En la imagen anterior, puedes encontrar HSPI y VSPI en el panel de mejora de la interfaz SPI de ESP32. Nos permite utilizar el periférico VSPI. Los pines para VSPI en el ESP32 son:

Clavija VSPI

Pin GPIO

VSPI_MOSI

GPIO 23
VSPI_MISO

GPIO 19

VSPI_CLK

GPIO 18
VSPI_CS

GPIO 5

NOTA: El ESP32 tiene completamente 4 periféricos SPI (SPI0, SPI1, HSPI y VSPI). SPI0 está dedicado al CI SPI Flash. SPI1 comparte el {hardware} con SPI0. Esto deja a HSPI y VSPI para interconectar las unidades SPI.

El siguiente escritorio revela las conexiones entre el ESP32 y el módulo de visualización OLED. En total, tenemos que hacer siete conexiones, ya que se trata de un Show OLED SPI.

Módulo de visualización OLED

ESP32
GND

GND

VCC

3.3V
D0 (SCK)

GPIO 18

D1 (MOSI)

GPIO 23
RES

GPIO 17

DC

GPIO 16
CS

GPIO 5

Piezas necesarias

  • ESP32 DevKit Placa de mejora del DevKit
  • Módulo de visualización OLED
  • Bandeja para el pan
  • Conexión de cables
  • Cable micro USB

Diagrama del circuito

La siguiente imagen muestra el diagrama del circuito del SPI OLED Show con ESP32.

Diagrama del circuito ESP32-OLED-Show

Preparar el IDE de Arduino

Antes de escribir el código, debes conseguir algunas bibliotecas para el IDE de Arduino asociadas al SSD1306 OLED Show.

He hecho un tutorial dedicado a averiguar cómo configurar la placa ESP32 en el IDE de Arduino. Puedes probar primero ese tutorial. Ahora, abre el IDE de Arduino y ve a Instrumentos -> Manejar Bibliotecas . .

Arduino-IDE-OLED-Library-1

Aparecerá una ventana del Supervisor de la Biblioteca. Dentro de la barra de búsqueda, ordena «ssd1306» y de los resultados elige la posibilidad «Adafruit SSD1306» y haz clic en «configurar». Esta biblioteca se ha escrito especialmente para programas OLED monocromáticos basados principalmente en el CI controlador SSD1306. Las resoluciones admitidas son 128 x 32 y 128 x 64.

Arduino-IDE-OLED-Library-2

Después de poner la Biblioteca SSD1306, busca «gfx» y crea la «Biblioteca Adafruit GFX». Esta puede ser una biblioteca de gráficos de Adafruit para mostrar gráficos fundamentales, como rectas, círculos, rectángulos y muchos otros.

Arduino-IDE-OLED-Library-3

Cierra la ventana del supervisor de bibliotecas cuando hayas descargado todas las bibliotecas necesarias. Ahora, asegúrate de que la placa ESP32 está seleccionada en el IDE de Arduino (Instrumentos -> Placa -> ESP32 Arduino -> Módulo de desarrollo ESP32).

Prueba ESP32 OLED Show

Después de realizar todas las conexiones necesarias, vamos a escribir un código para que el ESP32 muestre algunos contenidos textuales y gráficos en el OLED Show. En este código, estoy probando varias opciones de OLED Show como mostrar contenido textual normal, contenido textual invertido, contenido textual desplazado, mostrar caracteres ASCII, establecer la medida de la fuente.

También he añadido el código para mostrar gráficos como rectángulo, rectángulo apretado, rectángulo redondo, rectángulo redondo apretado, círculo, círculo apretado, triángulo y triángulo apretado.

Por último, tomé la marca «Electronics Hub» y la convertí en un mapa de bits y la mostré en el OLED Show.

Conclusión

Un sencillo tutorial sobre cómo interconectar el módulo SPI OLED Show con la placa ESP32 DevKit. Realizaste el pinout del SSD1306 OLED Show, las conexiones obligatorias para la interfaz SPI con el ESP32, obtuviste las librerías para el IDE de Arduino y mostraste algunos contenidos textuales, gráficos e imágenes en el OLED Show usando el ESP32.

Lee:  Circuitos inductores de CA
Javired
Javired

Deja una respuesta

Tu dirección de correo electrónico no será publicada.