Arduino:
Å bruke en feilsøker

Hvordan:

Med Arduino IDE kan du bruke serieutskrifter til å feilsøke, men det er litt som å bruke en lommelykt for å utforske en hule. For ekte feilsøking, kan du ønske å oppgradere spillet ditt med noe som Atmel-ICE feilsøkeren som integreres med Arduino-miljøet. Her er en smak av pseudo-feilsøking ved hjelp av Serial:

void setup() {
  Serial.begin(9600);
}
void loop() {
  int sensorValue = analogRead(A0);
  Serial.print("Sensorverdi: ");
  Serial.println(sensorValue);
  // Forestill deg at du forventer 512 her, men får 0.
  // På tide å inspisere sensorforbindelsen
  delay(1000); // Vent i et sekund før du leser igjen
}

Kjør dette med Seriell-skjermen åpen, og du vil se hva sensoren din spyttet ut i sanntid.

Dypdykk

Før feilsøkere, var det trykkeutskriftens verden – du kunne bare gjette hva som skjedde ved å skrive ut alt. Debugging med utskrifter er fremdeles vanlig, spesielt i enklere miljøer eller på begrenset maskinvare som Arduino.

Alternativer til inkretsemulatorer som Atmel-ICE inkluderer programvarefeilsøkingsverktøy som avr-gdb. Du kan parre den med avarice for å skape en bro mellom GDB og maskinvaren din, noe som er super hendig for mer avansert feilsøking rett på chipen.

Ved å bruke en feilsøker, kan du sette brytepunkter for å stoppe utførelsen på visse punkter. Du kan gå gjennom koden din linje for linje, inspisere minne, registre og variabler. Dette lar deg peke ut problemer i stedet for å skyte i mørket. Når du implementerer en feilsøker, sørg for at miljøet ditt er riktig oppsatt - feilpassede versjoner eller dårlig konfigurerte verktøy kan føre til frustrasjon.

Se også

Klar til å dykke dypere? Utforsk disse: