SKU: OT3345 Número de artículo: OT3345 EAN: 8721244302812
Esta placa de desarrollo ESP32-C3 combina conectividad inalámbrica con una compacta pantalla OLED de 0.42 pulgadas. La placa está basada en el fiable chip ESP32C3FN4/FH4 y cuenta con una antena cerámica integrada para WiFi y Bluetooth. Con 4MB de memoria flash y programación por USB, es ideal para diversos proyectos IoT.
Gracias a su bajo consumo y su versátil conectividad, esta placa es adecuada para:
Esta compacta placa IoT está basada en el chip ESP32-C3 (RISC-V) y cuenta con una pantalla OLED integrada de 0.42 pulgadas. Como el pinout y el control de la pantalla difieren de los módulos ESP32 estándar, a continuación encontrará las instrucciones específicas para usar la placa correctamente.
La documentación en línea suele ser confusa. Utilice las siguientes asignaciones de pines para esta placa específica (estilo ABRobot):
LOW = encendido, HIGH = apagado).Para programar esta placa, seleccione los siguientes ajustes en Arduino IDE:
ESP32C3 Dev ModuleEnabled (Esencial para poder ver Serial.print).DIO (predeterminado).La pantalla utiliza un controlador SSD1306, pero tiene una resolución física de solo 72x40 píxeles. Sin embargo, el búfer interno es de 128x64. Debe aplicar un "offset" (desplazamiento) para que el texto sea visible.
Biblioteca necesaria: Instale la librería U8g2 (de olikraus) mediante el Arduino Library Manager.
Código de ejemplo:
#include
#include
// Inicialización para ESP32-C3 con I2C en pin 5 (SDA) y 6 (SCL)
// Usamos el controlador estándar 128x64, pero solo una parte de la pantalla.
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE, 6, 5);
// Ajustes para la pantallita de 0.42 pulgadas
int width = 72;
int height = 40;
// Los offsets son necesarios para centrar la salida en el búfer 128x64
int xOffset = 30; // 30 funciona mejor en la práctica
int yOffset = 12; // (64 - 40) / 2 = 12
void setup(void) {
delay(1000); // Breve pausa para estabilidad
u8g2.begin();
u8g2.setContrast(255); // Brillo máximo
u8g2.setBusClock(400000); // Velocidad I2C de 400kHz
u8g2.setFont(u8g2_font_ncenB10_tr); // Elija una fuente legible
}
void loop(void) {
u8g2.clearBuffer(); // Borrar búfer interno
// Dibujar un marco para probar el área visible
u8g2.drawFrame(xOffset, yOffset, width, height);
// Dibujar texto (¡tenga en cuenta xOffset y yOffset!)
u8g2.setCursor(xOffset + 5, yOffset + 25);
u8g2.print("ESP32-C3");
u8g2.sendBuffer(); // Enviar datos a la pantalla
delay(1000);
}
¿Quiere probar los demás pines? Utilice este sencillo loop. Atención: el pin 8 también controla el LED integrado.
// GPIO 8 es el LED integrado (LOW = ENCENDIDO)
#define LED_PIN 8
void setup() {
pinMode(LED_PIN, OUTPUT);
}
void loop() {
digitalWrite(LED_PIN, LOW); // LED encendido
delay(500);
digitalWrite(LED_PIN, HIGH); // LED apagado
delay(500);
}