clignotante.py

LattePanda 3 Delta (id: lattepanda-3) · Archivo : clignotante.py · Lenguaje : Python · Uso : Faire clignoter une LED depuis Python (broche du MCU)

El patrón LattePanda: el script Python corre en el PC x86, la patilla física vive en el ATmega32U4, y PinPong tiende el puente en una línea. El mundo Arduino se vuelve librería del PC.

Hardware necesario

Una LattePanda 3 Delta (x86 Intel N5105, Windows 10/11 o Ubuntu) con su coprocesador Arduino compatible (ATmega32U4) conectado a los dos conectores de 50 pines. 1 LED + resistencia de 330 Ω en el conector de 50 pines (pin D13 del MCU).

Cableado

Ánodo en el pin D13 del conector (ver esquema), resistencia de 330 Ω, GND en un pin GND del mismo conector.

Funcionamiento

Board().begin() abre el puerto serie interno hacia el MCU; Pin(D13).write_digital maneja la patilla estilo Arduino. El firmware PinPong debe estar programado en el 32U4 (viene con la librería). Lado anfitrión: pip install pinpong y python3. Lado MCU: el ATmega32U4 aparece como puerto COM — prográmelo con el Arduino IDE (placa « Arduino Leonardo »).

Para ir más lejos

Modulead el periodo con un sensor, o manejad dos LED desde dos hilos Python.

clignotante.py

#!/usr/bin/env python3
# Clignotement LED via PinPong : Python cote hote, GPIO sur l'ATmega32U4.
# Installation : pip install pinpong
from pinpong.board import Board, Pin
from pinpong.extension.unipiot import *   # chargement standard
import time

Board().begin()                    # detecte le MCU (port serie interne)
led = Pin(Pin.D13, Pin.OUT)

print("Clignotement D13 (Ctrl-C pour arreter)")
try:
    while True:
        led.write_digital(1)
        print("ON")
        time.sleep(1)
        led.write_digital(0)
        print("OFF")
        time.sleep(1)
except KeyboardInterrupt:
    led.write_digital(0)
    print("Arret propre")

← Volver a la ficha