🛠 Faire clignoter une LED via le MCU Arduino embarqué

LattePanda 3 Delta (id : lattepanda-3) · debutant · Schéma : IMG-lattepanda-3-debutant-1-led-mcu.svg — Schéma de câblage : LED sur broche D13 via résistance 220 Ω, alimentation 5 V et GND sur l'en-tête Arduino de la LattePanda 3 Delta.

Objectifs

Découvrir la particularité de la LattePanda 3 Delta : c'est un PC x86 (Intel Celeron N5105) et une carte Arduino sur le même circuit. Le coprocesseur embarqué est un Microchip ATmega32U4-MU, compatible Arduino Leonardo, avec son propre bouton reset. Dans ce tutoriel, on pilote une LED depuis le processeur x86 en Python grâce à la bibliothèque officielle DFRobot pinpong, qui parle le protocole Firmata au microcontrôleur via son port série virtuel. C'est le tutoriel Blink officiel, adapté pas à pas.

Matériel

Code complet

Installation de la bibliothèque (Windows ou Linux) :

pip install pinpong

Programme Python (blink.py) — câblage : signal LED → D13, V+ → 5V, GND → GND :

import time
from pinpong.board import Board, Pin

# Initialisation du ATmega32U4 embarqué (classe Leonardo).
# Windows : COMx affiché dans le Gestionnaire de périphériques ;
# Linux : /dev/ttyACM0
Board("leonardo", "COM5").begin

led = Pin(Pin.D13, Pin.OUT)          # D13 en sortie numérique

while True:
    led.write_digital(1)             # LED allumée
    print("1")
    time.sleep(1)
    led.write_digital(0)             # LED éteinte
    print("0")
    time.sleep(1)

Sous Linux, remplacez "COM5" par "/dev/ttyACM0" et lancez avec python3 blink.py.

Vérification attendue

La LED clignote une seconde allumée / une seconde éteinte, et le terminal affiche en alternance 1 et 0. Sur Windows, le port COM du Leonardo (périphérique « Arduino Leonardo ») doit apparaître dans le Gestionnaire de périphériques ; sous Linux, ls /dev/ttyACM* doit lister ttyACM0.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels