debug

buoingiorno a tutti, avrei bisogno di chiedere, se qualcuno sa se esiste il sistema di vedere passo passo le istruzioni che sta eseguendo la scheda,mi spiego meglio, io ho cercato di implementare 2 programmi creati da persone diverse, però mi si blocca il programma ad un punto e vorrei vedere, se è possibile, il punto in cui da problemi(diciamo un debug).Grazie saluti a tutti Roberto

La possibilità esiste ma :

  1. devi usare Atmel Studio 6.1 (o 6.2 beta) ... è gratuito, ma comunque richiede STUDIO, PAZIENZA e buona volontà per cominciare ad usarlo ... non è certo il semplice IDE di Arduino.

  2. devi installare Visual Micro

  3. devi acquistare la registrazione (29 US$) per attivare la parte di debugger

... e, in ogni caso è un debug via software.
Se vuoi qualche cosa via hardware, devi dimenticare Arduino IDE e tutte le sue facilitazioni e lavorare esclusivamente con Atmel Studio acquistando poi a parte una delle loro schede per il debug ... :roll_eyes:

Guglielmo

P.S. : Consiglio ... la strada più semplice ed economica è quella di mettere delle Serial.print() all'interno del codice e cercare di capire cosa fa ... XD XD XD

grazie per la risposta, scusa la domanda, ma le serial print come funzionerebbero(scusami ma ho appena iniziato)...grazie saluti Roberto

Serial.print() come Serial.println() sono due metodi della classe Serial che ti permettono di mandare messaggi e valori di variabili sul monitor seriale che puoi aprire dall'IDE di Arduino.

Molto semplicemente un esempio ... nella funzione setup() apri la porta seriale con la Serial.begin() e nella funzione loop(), dove ti serve mandare un messaggio o esaminare il valore di una variabile, metti una Serial.print() o una Serial.println() (la seconda, dopo aver stampato, va a capo) ...

void setup() {
   delay(500);
   Serial.begin(9600);
}

void loop() {
   byte i;
   for (i = 0; i < 10; i++) {
      Serial.print("Il valore di i è : ");
      Serial.println(i);
   }
}

Il delay(500) che ho messo nella setup() è solo a fini precauzionali ... se tu impegnassi immediatamente la seriale poi potresti avere difficoltà a caricare nuovi programmi in Arduino tramite l'IDE ... :wink:

Guglielmo

P.S. : Solo per chiarezza (magari a qualcuno viene il dubbio) ... nell'esempio io non l'ho fatto, ma, ovviamente, tutti i metodi della Serial si possono usare sia nella setup() che nella loop() che in proprie funzioni specifiche :wink: