mpaper_touch_paint.ino
Aplicación de dibujo básica que utiliza el controlador táctil GT911 y el framebuffer e-Ink.
Hardware: M5Paper con pantalla táctil capacitiva. Software: M5Paper.h. Ejecución: Toca la pantalla para dibujar puntos. La esquina superior izquierda actúa como botón 'Borrar'. Ten en cuenta que el e-Ink tiene tiempo de refresco, por lo que el dibujo puede parecer entrecortado si se llama a update() con demasiada frecuencia.
mpaper_touch_paint.ino
#include <M5Paper.h>
void setup() {
M5.begin();
M5.display.clear();
M5.display.update();
Serial.begin(115200);
}
void loop() {
M5.update();
// Vérifier si un toucher est détecté
if (M5.TP.Touched()) {
uint16_t x = M5.TP.GetX();
uint16_t y = M5.TP.GetY();
// Dessiner un point noir
M5.display.drawPixel(x, y, BLACK);
// Pour un effet "crayon", dessiner aussi les points adjacents
M5.display.drawPixel(x + 1, y, BLACK);
M5.display.drawPixel(x, y + 1, BLACK);
M5.display.drawPixel(x - 1, y, BLACK);
M5.display.drawPixel(x, y - 1, BLACK);
// Mettre à jour l'écran (attention au clignotement e-Ink)
// On peut limiter la fréquence de mise à jour pour la performance
static uint32_t lastUpdate = 0;
if (millis() - lastUpdate > 100) {
M5.display.update();
lastUpdate = millis();
}
}
// Effacer l'écran si on touche le coin en haut à gauche
if (M5.TP.Touched() && M5.TP.GetX() < 50 && M5.TP.GetY() < 50) {
M5.display.clear();
M5.display.update();
delay(500);
}
}