CONTENIDO ►
La pantalla OLED 0.96″ de Arduino te permite crear proyectos geniales con una pantalla manteniendo el tamaño de los dispositivos de bricolaje. Los módulos OLED basados en SSD1306 son bastante populares debido a su fácil conexión y a la alta resolución de la pantalla de 128×64 píxeles. Vamos a considerar las características del SSD1306 OLED, la conexión con Arduino y desglosar los comandos de las bibliotecas: OLED_I2C.
Para esta actividad necesitaremos:
- Arduino Uno / Arduino Nano / Arduino Mega
- display OLED 0.96″ 128×64 i2c;
- sensor DHT11 de temperatura y humedad;
- cables de conexion;
- librerias OLED_I2C.h y DHT.h
Arduino pantalla OLED 128×64 i2c datacheet (pinout)

Características display OLED Arduino:
- Dimensiones: 36 x 34 x 3 mm3
- Matriz de píxeles: 128 x 64
- Tamaño de los píxeles: 0,21 x 0,21 mm2
- Paso entre píxeles: 0,23 x 0,23 mm2
- Interfaz de comunicación: I2C
- Modo de consumo bajo de energía: < 11mA
- Voltaje de alimentación: 3,3V a 5V
- Temperatura de funcionamiento: -20 to 70 ºC
OLED display (Organic Light-Emitting Diode) es un dispositivo semiconductor que emite luz cuando pasa una corriente eléctrica por él. El módulo OLED 0.96″ está controlado por el chip SSD1306, que admite cinco protocolos de comunicación diferentes. Hay módulos con el protocolo IIC, pero también con el protocolo SPI Arduino, e incluso pantallas con la posibilidad de seleccionar (cambiar) entre estos dos protocolos de comunicación.
La principal ventaja del SSD1306 OLED 128×64 iic es el funcionamiento del módulo sin retroiluminación, lo que garantiza el bajo consumo de energía de este módulo. La alta resolución del Arduino OLED 128×64 px le permite mostrar más información, a diferencia de la pantalla de texto 1602. Se utilizan cuatro conectores para la conexión: dos cables para la alimentación (5V y GND) y dos cables para el bus IIC Arduino (SDA y SCL).
Como conectar pantalla OLED 128×64 Arduino

| OLED i2c 0,96 | Arduino Uno | Arduino Nano | Arduino Mega |
| GND | GND | GND | GND |
| VDD | 5V | 5V | 5V |
| SDA | A4 | A4 | 20 |
| SCL | A5 | A5 | 21 |
La imagen muestra el diagrama de cableado I2C del OLED – los conectores SDA y SCL del módulo están conectados a los pines correspondientes. Para Arduino Uno y Nano SDA es el pin A4, SCL es el pin A5 y para Arduino Mega – pines 20 y 21 respectivamente. El módulo se alimenta con 3,3 o 5 voltios. A continuación, vamos a considerar dos bibliotecas populares para trabajar con Arduino OLED SSD1306 – la biblioteca OLED_I2C.h.
Programa Arduino para display OLED 0.96 i2c Arduino
#include "OLED_I2C.h" OLED myOLED(SDA, SCL, 8); extern uint8_t TinyFont[]; extern uint8_t SmallFont[]; extern uint8_t MediumNumbers[]; extern uint8_t BigNumbers[]; void setup(){ myOLED.begin(); } void loop(){ myOLED.setFont(TinyFont); myOLED.print("ABCDEFGHIJKLMNOPQRSTUVWXYZ", LEFT, 10); myOLED.update(); delay(1000); myOLED.setFont(SmallFont); myOLED.print("ABCDEFG", CENTER, 25); myOLED.update(); delay(1000); myOLED.clrScr(); myOLED.update(); myOLED.invert(true); delay(1000); myOLED.setFont(MediumNumbers); myOLED.print("123456789", RIGHT, 5); myOLED.update(); delay(1000); myOLED.setFont(BigNumbers); myOLED.print("123456789", 5, 30); myOLED.update(); delay(1000); myOLED.clrScr(); myOLED.update(); myOLED.invert(false); delay(1000); }
Explicación del código para display OLED 0.96 i2c Arduino:
- la biblioteca utiliza mucha memoria del microcontrolador para cargar las fuentes, por lo que trabajar con la pantalla OLED de 0,96 en la placa Arduino Nano no funcionará, el código no se cargará por falta de memoria Nano;
- en los ejemplos se pueden encontrar otros comandos de la biblioteca.

La librería OLED_I2C.h permite cambiar la fuente del texto (tamaño), así como posicionar el texto en la pantalla (izquierda, derecha o centro). El siguiente programa muestra la posibilidad de visualizar la temperatura y la humedad en la pantalla utilizando el DHT11 sensor de temperatura y humedad. Conecta la pantalla OLED y el sensor DHT11 al microcontrolador según el diagrama anterior y carga el programa en la placa Arduino Uno.
Programa Arduino para pantalla OLED 128×64 i2c y DHT11
#include "OLED_I2C.h" OLED myOLED(SDA, SCL, 8); #include "DHT.h" DHT dht(2, DHT11); extern uint8_t TinyFont[]; extern uint8_t SmallFont[]; extern uint8_t MediumNumbers[]; extern uint8_t BigNumbers[]; void setup(){ myOLED.begin(); dht.begin(); } void loop(){ float h = dht.readHumidity(); float t = dht.readTemperature(); myOLED.setFont(MediumNumbers); myOLED.print(String(t), LEFT, 5); myOLED.update(); myOLED.setFont(MediumNumbers); myOLED.print(String(h), LEFT, 25); myOLED.update(); delay(1000); }
Explicación del código para pantalla OLED 128×64 i2c y DHT11:
- las variables se muestran OLED 0.96 utilizando un objeto String.
Conclusión. Intentamos revisar el esquema de conexión del OLED 0.96 a Arduino y desmontar los comandos de la librería para la pantalla. Es bastante difícil hablar de todas las posibilidades de trabajar con el SSD1306 OLED 128×64 en un solo artículo. Puede explorar esta información a partir de los ejemplos de archivo con las bibliotecas por sí mismo. Si tienes alguna pregunta, escríbela en los comentarios.

Deja una respuesta