🛠 Débogage pas à pas : CMSIS-DAP et Arduino Debug Launcher

Arduino UNO R4 WiFi · avance · Schéma : IMG-uno-r4-wifi-avance-2-ur4wifi-debug-cmsis-dap.svg — UNO R4 WiFi avec deux ports USB-C annotés (HIC/débogueur à gauche, USB natif du RA4M1 à droite), écran d'IDE avec point d'arrêt rouge sur une ligne, pile d'appels et variables affichées.

Objetivos

Salir de Serial.print para depurar: la R4 es la primera UNO con depurador de hardware integrado. El puente USB integrado (HIC) expone una interfaz CMSIS-DAP conectada al SWD del RA4M1, y la extensión oficial Arduino Debug Launcher (VS Code / PlatformIO o IDE 2.x) permite puntos de interrupción, ejecución paso a paso, inspección de variables y memoria, exactamente igual que en un STM32.

Material

Procedimiento

  1. Instale la extensión Arduino Debug Launcher y el componente de depuración propuesto (OpenOCD/CMSIS-DAP gestionado por la extensión).
  2. Abra el sketch, coloque un punto de interrupción en una línea de loop.
  3. Inicie «Start Debugging»: la placa se programa y se detiene en el punto de interrupción.
  4. Explore: variables locales, globales, pila de llamadas, registros del Cortex-M4, memoria; avance con paso a paso (F10/F11).
// Croquis de test : le bug classique du débordement d'index.
int mesures[8];
int n = 0;

void setup { Serial.begin(115200); }

void loop {
  mesures[n] = analogRead(A0);   // point d'arrêt ici : surveillez n
  n++;
  if (n > 8) n = 0;              // bug volontaire : devrait etre n >= 8
  delay(200);
}

Verificación esperada

La ejecución se detiene en el punto de interrupción; la ventana Variables muestra cómo n aumenta. Al monitorear la matriz, verá la escritura fuera de límites cuando n == 8, el tipo de error invisible con Serial.print. Reanude (F5), modifique la condición, vuelva a programar y verifique de nuevo: este es el ciclo completo de depuración.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales