Pixel du M5Stack Atom Lite
Librairies
Le contrôle du pixel du M5Stack Atom Lite nécessite les librairies suivantes :
- M5Atom
- FastLED
À ajouter dans l'espace global (au début du code)
Ajouter FastLED et un tableau de pixel :
// Inclure la librairie FastLED qui va gérer le pixel :
// https://github.com/FastLED/FastLED
#include <FastLED.h>
// Un tableau qui contient une variable de type CRGB.
// Il y a un seul pixel, mais il doit être dans un tableau.
// CRGB est un type de couleur défini par la lirairie FastLed :
// https://github.com/FastLED/FastLED/wiki/Pixel-reference#crgb-reference
CRGB mesPixels[1];
Configuration dans setup()
À ajouter dans setup :
// Ajouter le pixel (il y en a un seul) du M5Atom à la librairie FastLED :
FastLED.addLeds<WS2812, DATA_PIN, GRB>(mesPixels, 1);
Utilisation dans loop()
Pour changer la couleur du pixel, il faut changer la valeur des trois couleur du premier pixel du tableau :
// Changer la couleur du premier pixel pour le blanc :
mesPixels[0].red = 255;
mesPixels[0].green = 255;
mesPixels[0].blue = 255;
Après, il faut envoyer la mise à jour des couleurs des pixels à FastLED :
// Mettre à jour le pixel :
FastLED.show();
Exemple de code avec une couleur fixe
Copier et coller ce code dans un nouveau document Arduino :
// Exemple qui démontre comment allumer le Pixel sur un M5Stack Atom Lite.
// Le pixel alternera entre deux couleur à chaque demie-seconde.
// Par Thomas O Fredericks
// Inclure la librairie M5 (version pour M5Atom) :
// https://github.com/m5stack/M5Atom
#include <M5Atom.h>
// Inclure la librairie FastLED qui va gérer le pixel :
// https://github.com/FastLED/FastLED
#include <FastLED.h>
// Un tableau qui contient une variable de type CRGB.
// Il y a un seul pixel, mais il doit être dans un tableau.
// CRGB est un type de couleur défini par la lirairie FastLed :
// https://github.com/FastLED/FastLED/wiki/Pixel-reference#crgb-reference
CRGB mesPixels[1];
void setup() {
// Démarrer la libraire M5 avec toutes les options de pré-configuration désactivées :
M5.begin(false, false, false);
// Démarrer la connexion sérielle :
Serial.begin(115200);
// Ajouter le pixel (il y en a un seul) du M5Atom à la librairie FastLED :
FastLED.addLeds<WS2812, DATA_PIN, GRB>(mesPixels, 1);
}
void loop() {
// Toujours inclure M5.update() au début de loop() :
M5.update();
// Changer la couleur du premier pixel pour le blanc :
mesPixels[0].red = 255;
mesPixels[0].green = 255;
mesPixels[0].blue = 255;
// Mettre à jour le pixel :
FastLED.show();
}
Exemple de code avec une couleur aléatoire entre le rouge et l'orange
Copier et coller ce code dans un nouveau document Arduino :
// Exemple qui assigne une couleur aléatoire entre le rouge et le jaune
// au pixel pour simuler la lumière d'une chandelle.
// Par Thomas O Fredericks
// Inclure la librairie M5 (version pour M5Atom) :
// https://github.com/m5stack/M5Atom
#include <M5Atom.h>
// Inclure la librairie FastLED qui va gérer le pixel :
// https://github.com/FastLED/FastLED
#include <FastLED.h>
// Un tableau qui contient une variable de type CRGB.
// Il y a un seul pixel, mais il doit être dans un tableau.
// CRGB est un type de couleur défini par la lirairie FastLed :
// https://github.com/FastLED/FastLED/wiki/Pixel-reference#crgb-reference
CRGB mesPixels[1];
void setup() {
// Démarrer la libraire M5 avec toutes les options de pré-configuration désactivées :
M5.begin(false, false, false);
// Démarrer la connexion sérielle :
Serial.begin(115200);
// Ajouter le pixel (il y en a un seul) du M5Atom à la librairie FastLED :
FastLED.addLeds<WS2812, DATA_PIN, GRB>(mesPixels, 1);
}
void loop() {
// Toujours inclure M5.update() au début de loop() :
M5.update();
// Changer la couleur pour un rouge-orangé :
mesPixels[0].red = random(50, 256);
mesPixels[0].green = random(0, 60);
mesPixels[0].blue = 0;
// Mettre à jour le pixel :
FastLED.show();
}