🛠 Estación meteorológica conectada sencilla con ToughC5
Objetivos
Este tutorial tiene como objetivo crear una estación meteorológica de escritorio autónoma. Aprenderá a inicializar la pantalla táctil ILI9342C, leer el Reloj de Tiempo Real (RTC RX8130CE) para mostrar la hora y simular o leer una temperatura para mostrarla. Esta es una introducción ideal a las interfaces de usuario y la gestión de energía en el M5Stack ToughC5.
Hardware Necesario
- Kit de desarrollo M5Stack ToughC5 IoT
- Cable USB Tipo-C para alimentación y flasheo
- Ordenador con Arduino IDE instalado
- Bibliotecas M5GFX y M5Unified (vía Gestor de Bibliotecas)
Pasos
- Configuración del Entorno: Abra Arduino IDE. Vaya a
Herramientas>Gestor de Bibliotecas. Busque e instaleM5UnifiedyM5GFX. Estas bibliotecas simplifican enormemente el control de la pantalla y el tacto.
- Selección de Puerto: Conecte el ToughC5 vía USB. En
Herramientas>Puerto, seleccione el puerto serie correspondiente.
- Código Base: Cree un nuevo sketch. Copie el siguiente código que inicializa la pantalla y el RTC:
#include <M5Unified.h>
void setup() {
auto cfg = M5.config();
M5.begin(cfg);
M5.Display.setTextSize(2);
M5.Display.setTextColor(WHITE, BLACK);
M5.Display.fillScreen(BLACK);
M5.Display.setCursor(10, 10);
M5.Display.println("ToughC5 IoT");
}
void loop() {
M5.update();
// Obtener hora del RTC
auto rtc = M5.Rtc.getDateTime();
M5.Display.fillRect(0, 50, 320, 100, BLACK);
M5.Display.setCursor(10, 60);
M5.Display.printf("Hora: %02d:%02d:%02d\\n", rtc.hour, rtc.minute, rtc.second);
M5.Display.setCursor(10, 90);
M5.Display.println("Temp: 22.5 C"); // Simulación
delay(1000);
}
- Subida: Haga clic en el botón 'Subir'. Espere a que finalice la compilación y el flasheo.
- Prueba Táctil: Una vez que el dispositivo inicie, la pantalla mostrará la hora. Puede agregar código en
loop()para reaccionar a los toques conM5.Touch.getDetail().
Verificación
La pantalla debe encenderse con fondo negro. El texto "ToughC5 IoT" aparece en la parte superior. Debajo, la hora debe incrementarse cada segundo, lo que prueba que el RTC RX8130CE funciona. La temperatura simulada permanece fija. Si la pantalla está apagada, verifique que el cable USB proporcione 5V.
Para Ir Más Allá
Reemplace la temperatura simulada con una lectura real mediante un sensor DS18B20 conectado a los puertos HY2.0-4P (GPIO). Configure el zumbador pasivo para emitir un pitido en cada cambio de hora.
Otros tutoriales para esta placa
Ejemplos de código para esta placa
toughc5_gpio_button_buzzer.inoC++ (Arduino)toughc5_wifi6_scanner.inoC++ (Arduino)toughc5_rtc_battery_log.inoC++ (Arduino)toughc5_ili9342c_touch_ui.inoC++ (Arduino)toughc5_rs485_modbus_master.inoC++ (Arduino)toughc5-rs485-modbus-master.inoArduino C++