Contador Serial
Embárcate en una experiencia interactiva con la placa KITMAKER 2.0 y su pantalla OLED 128×64.
En este ejercicio, aprenderás a programar un contador que se incrementa cada segundo, mostrando el resultado tanto en el Monitor Serie como en la pantalla OLED. Utilizando las bibliotecas de Arduino, I2C y Adafruit, este proyecto te introduce a conceptos fundamentales de comunicación y visualización, proporcionando una base sólida para desarrollar aplicaciones interactivas y proyectos IoT.
¡Descubre cómo transformar simples líneas de código en una herramienta visual que da vida a tus ideas!
/*
* Ejemplo de contador serial con pantalla OLED 128x64 para placa NeoFan de FANIOT.
* Este programa cuenta en pasos de 1 segundo y muestra el conteo en la pantalla OLED.
*/
#include // Biblioteca principal de Arduino
#include // Biblioteca para comunicación I2C
#include // Biblioteca para gráficos
#include // Biblioteca para pantalla OLED
#define SCREEN_WIDTH 128 // Ancho de la pantalla OLED
#define SCREEN_HEIGHT 64 // Alto de la pantalla OLED
#define OLED_RESET -1 // Pin de reset de la pantalla OLED (no utilizado)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); // Inicialización de la pantalla OLED
void setup() {
Serial.begin(9600); // Inicialización del puerto serial
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Inicialización de la pantalla OLED
Serial.println(F("Error al iniciar el display OLED")); // Mensaje de error si la pantalla OLED no se inicia
for(;;); // Bucle infinito si falla
}
display.display(); // Mostrar contenido en la pantalla OLED
delay(2000); // Retardo de 2 segundos
display.clearDisplay(); // Limpiar la pantalla OLED
display.setTextSize(2); // Establecer tamaño de texto
display.setTextColor(SSD1306_WHITE); // Establecer color de texto
}
void loop() {
static int count = 0; // Inicializar contador
Serial.println(count); // Imprimir conteo en el puerto serial
display.clearDisplay(); // Limpiar la pantalla OLED
display.setCursor(0, 0); // Establecer cursor en la posición (0,0)
display.print("Contador: "); // Imprimir etiqueta del contador en la pantalla OLED
display.println(count); // Imprimir conteo en la pantalla OLED
display.display(); // Mostrar contenido en la pantalla OLED
count++; // Incrementar contador
delay(1000); // Retardo de 1 segundo
}
