🛠 Lire un bouton poussoir et afficher dans la console

LattePanda 3 Delta (id : lattepanda-3) · debutant · Schéma : IMG-lattepanda-3-debutant-2-bouton-console.svg — Bouton poussoir entre la broche D2 et le GND avec résistance de pull-up 10 kΩ vers 3,3 V, lecture de l'état dans la console.

Objectifs

Compléter le premier tutoriel en ajoutant une entrée numérique : un bouton poussoir lu par le microcontrôleur ATmega32U4 embarqué, avec affichage de l'état dans la console du PC x86 via pinpong. On apprend le câblage d'une entrée (résistance de pull-up), la lecture read_digital, et le rebond matériel. C'est la base de toute interaction homme-machine avec les broches.

Matériel

Code complet

Câblage : une patte du bouton → D2, l'autre → GND ; résistance 10 kΩ entre D2 et 3,3V (pull-up). Appui = D2 relié à GND = niveau 0.

import time
from pinpong.board import Board, Pin

Board("leonardo", "COM5").begin   # Linux : "/dev/ttyACM0"

btn = Pin(Pin.D2, Pin.IN)           # D2 en entrée numérique

etat_precedent = None
while True:
    état = btn.read_digital       # 0 quand le bouton est pressé (pull-up)
    if état != etat_precedent:      # n'afficher qu'aux changements
        if état == 0:
            print("Bouton PRESSÉ")
        else:
            print("Bouton relâché")
        etat_precedent = état
    time.sleep(0.05)                # anti-rebond logiciel (50 ms)

Vérification attendue

À chaque appui, la console affiche « Bouton PRESSÉ » puis « Bouton relâché » au relâchement, sans salves parasites grâce à la temporisation de 50 ms. Couper le programme avec Ctrl+C.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels