🛠 Console série sur RP2350 : USB CDC natif et UART0 de secours

RP2350 (genérico / placas basadas en RP2350) · debutant · Schéma : IMG-rp2350-generic-debutant-2-rp2350-console-serie-uart.svg — carte RP2350 générique branchée en USB sur un PC (console CDC), et en parallèle un adaptateur USB-TTL relié à GP0 (TX0) et GP1 (RX0) avec masse commune, terminal à 115200 bauds

Objetivos

El RP2350 integra un único controlador USB: dispositivo USB 2.0 Full-Speed (12 Mb/s) y host Full/Low-Speed con PHY 1.1 integrado (hoja de datos RP2350, §12 USB). En MicroPython, la consola utiliza este USB CDC nativo — no existe ningún chip serie en la placa. Pero cuando el USB está ocupado (modo HID, alimentación por batería) o los pines USB no están cableados (Pro Micro mal soldada, módulo desnudo), necesitas el UART: el RP2350 dispone de 2 UART mapeables a cualquier GPIO. Este tutorial configura ambas vías de respaldo.

Material

Código completo

# main.py — printf sur USB CDC ET trace sur UART0 (GP0/GP1, 115200 8N1)
import sys
from machine import UART, Pin
import time

# 1) La console par défaut est l'USB CDC natif du RP2350 :
print('Bonjour depuis USB CDC')      # visible dans Thonny / mpremote

# 2) Console de secours indépendante sur UART0 :
uart = UART(0, baudrate=115200, tx=Pin(0), rx=Pin(1))
uart.write('RP2350 pret (UART0 115200 8N1)\r\n')

n = 0
while True:
    n += 1
    msg = 'tick %d uptime_ms=%d\r\n' % (n, time.ticks_ms)
    sys.stdout.write(msg)             # USB CDC
    uart.write(msg)                   # UART0 physique
    if uart.any:                    # écho de ce que le PC envoie
        uart.write('recu: ' + uart.read.decode(errors='replace') + '\r\n')
    time.sleep_ms(500)

Verificación esperada

Dos ventanas, mismas líneas: Thonny (puerto CDC de la placa) y tu terminal serie en el adaptador (115200 8N1 — picocom -b 115200 /dev/ttyUSB0, o el puerto COM en Windows). Un carácter tecleado desde el adaptador vuelve en eco. Desconecta el USB de la placa manteniéndola alimentada a 5 V en VREG_VIN (2,7–5,5 V): el registro UART continúa — tienes una consola desacoplada del USB, indispensable para depurar un programa que bloquea la enumeración USB.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales