🛠 Contrôler les GPIO avec le M5Stamp Timer Power 2

M5Stamp Timer Power 2 (PY32L020) · debutant · Apprenez à configurer les broches d'entrée/sortie pour piloter une LED ou lire un bouton sur le module de gestion d'alimentation.

Objectifs

Ce tutoriel vise à comprendre l'interaction basique avec les broches d'entrée/sortie (GPIO) du M5Stamp Timer Power 2. Nous allons configurer une broche en sortie pour allumer une LED et une autre en entrée pour détecter un appui sur un bouton. Ce module, basé sur le microcontrôleur PY32L020, est optimisé pour la basse consommation, mais ses GPIO restent accessibles pour le contrôle logique simple. Il est essentiel de comprendre que la gestion de l'alimentation (via la puce M5PM1) influence l'état des broches, notamment lors des modes de veille. Ce cours vous donnera les bases pour interagir physiquement avec le module sans dépendre uniquement de la communication I2C.

Matériel nécessaire

Étapes

  1. Identification des broches : Le module possède 5 IO programmables. Consultez la fiche technique pour identifier les broches physiques correspondant aux fonctions GPIO souhaitées. Notez que le format est un boîtier castellated-hole de 28 broches.
  2. Câblage de la LED : Connectez la cathode (patte courte) de la LED à la masse (GND) via la résistance de 220Ω. Connectez l'anode (patte longue) à une broche GPIO configurée en sortie. Assurez-vous que la tension de sortie est compatible (3.3V via PY_3V3 ou 3V3_LDO_OUT).
  3. Câblage du bouton : Connectez une patte du bouton à une broche GPIO configurée en entrée (avec résistance de pull-up interne activée si possible) et l'autre patte à la masse.
  4. Initialisation logicielle : Dans votre code (C/C++ ou MicroPython), initialisez le bus I2C pour configurer les registres du M5PM1 si nécessaire pour activer les GPIO spécifiques. Configurez la broche LED en mode OUTPUT et la broche bouton en mode INPUT.
  5. Boucle principale : Écrivez une boucle qui lit l'état du bouton. Si le bouton est pressé (état bas à cause du pull-up), mettez la broche LED à l'état haut (HIGH) pour l'allumer. Sinon, mettez-la à l'état bas (LOW).

Vérification

Ouvrez le moniteur série ou utilisez un multimètre. Appuyez sur le bouton : la LED doit s'allumer immédiatement. Relâchez le bouton : la LED doit s'éteindre. Si la LED ne s'allume pas, vérifiez la polarité de la LED et que la broche sélectionnée est bien alimentée (vérifiez si la sortie 3V3 est active via la configuration de la puce M5PM1).

Pour aller plus loin

Explorez l'utilisation des interruptions externes (IRQ) pour réveiller le module de veille profonde (consommation 6.72uA) lorsqu'un bouton est pressé, plutôt que de polluer la CPU avec une lecture en boucle.

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels