🛠 Avoir une console série sur une carte sans pont USB (UART0)

RP2040 (carte / puce générique) · debutant · Schéma : IMG-rp2040-generic-debutant-2-rp2040-console-serie-uart.svg — carte RP2040 générique reliée à un adaptateur USB-TTL : GP0 TX vers RX de l'adaptateur, GP1 RX vers TX, masses communes, terminal série à 115200 bauds

Objectifs

Une carte RP2040 minimaliste (Zero, Pico-clone sans pont) n'a pas de puce USB-série dédiée : le REPL MicroPython ou printf passent par l'USB natif du RP2040. Mais quand l'USB est occupé (mode device HID, alimentation sur batterie) ou que les broches USB ne sont pas soudées, la solution est l'UART : le RP2040 possède deux UART routables sur n'importe quelle GPIO (datasheet RP2040). Tu vas câbler un adaptateur USB↔TTL et obtenir une console de debug indépendante.

Matériel

Code complet

# main.py — REPL et print sur UART0 (GP0=TX, GP1=RX), 115200 bauds
from machine import UART, Pin
import time

# Sur le port rp2, l'UART0 matériel est déjà écoûté par le REPL :
# un simple reset suffit souvent à obtenir le REPL sur GP0/GP1.
# Pour un flux applicatif dédié :
uart = UART(0, baudrate=115200, tx=Pin(0), rx=Pin(1))
uart.write('Carte RP2040 prete (UART0 115200 8N1)\r\n')

compteur = 0
while True:
    compteur += 1
    uart.write('tick %d\r\n' % compteur)
    if uart.any:                      # données reçues du PC
        data = uart.read
        uart.write('recu: %s\r\n' % data.decode(errors='replace'))
    time.sleep_ms(500)

Vérification attendue

Dans ton terminal série (115200 8N1, picocom, PuTTY, Thonny), les lignes tick N défilent ; un caractère tapé est renvoyé en écho. Ouvre ensuite le REPL MicroPython sur cet UART (Ctrl-C) : import machine fonctionne — tu as un shell complet sans USB. Le REPL UART du port rp2 tourne par défaut à 115200 (MicroPython RP2 quickref).

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels