Come verificare se la mia scheda Arduino funziona o è morta?


Risposte:


14

Nota: dopo il commento di @ Ricardo sul mio ultimo post, sto pubblicando questo!

Collegare la scheda a una porta USB del computer e verificare che l'indicatore di alimentazione LED verde sulla scheda si illumini. Le schede Arduino standard (Uno, Duemilanove e Mega) hanno un indicatore di alimentazione a LED verde situato vicino all'interruttore di ripristino.

Un LED arancione vicino al centro della scheda (etichettato "LED 13 Pin" nell'immagine seguente) dovrebbe accendersi e spegnersi quando la scheda è accesa (le schede provengono dalla fabbrica precaricate con il software per far lampeggiare il LED come un semplice controllo che la scheda funziona).

inserisci qui la descrizione dell'immagine

Se il LED di alimentazione non si illumina quando la scheda è collegata al computer, è probabile che la scheda non sia alimentata.

Il LED lampeggiante (collegato al pin di uscita digitale 13) è controllato dal codice in esecuzione sulla scheda (le nuove schede sono precaricate con lo schizzo di esempio Blink). Se il LED del pin 13 lampeggia, lo schizzo funziona correttamente, il che significa che il chip sulla scheda funziona. Se il LED di alimentazione verde è acceso ma il LED del pin 13 non lampeggia, è possibile che il codice di fabbrica non si trovi sul chip. Se non si utilizza una scheda standard, potrebbe non essere presente un LED incorporato sul pin 13, quindi consultare la documentazione per i dettagli della scheda.

Le guide online per iniziare con Arduino sono disponibili su Windows , Mac OS X e Linux .


2
Nota: funzionerà solo se la porta USB o il chip FTDI non sono stati bruciati. Il chip Atmega potrebbe funzionare correttamente anche se questi due componenti non lo sono.
asheeshr,

1
+1 Proprio su, Hardik! La cosa divertente è che proprio ieri qualcuno ha posto una domanda su un problema con il suo Arduino e volevo indicarlo alla tua risposta. Ora possiamo farlo correttamente.
Ricardo,

@Ricardo: Bingo: P
Hardik Thaker,

2
Se ripristini la scheda (con il pulsante), il bootloader di solito lampeggia il LED del pin 13
TheDoctor

La mia prima tavola è stata una Duemilanove ed è arrivata con un chip FTDI morto. È stato molto frustrante finché non ho ottenuto una scheda sostitutiva funzionante.
Linhartr22,

5

Supponiamo che uno possieda un programmatore USB, c'è un altro modo per ispezionare Arduino.

Collega il programmatore ai pin ICSP di Arduino e chiama avrdudecon i parametri giusti per leggere i fusibili del tuo Arduino.

avrdude -c programmer-id -p partno -P port

Per un Arduino Uno, lo partnoè m328p. Programmer-iddipende dal dispositivo utilizzato. Nel mio caso (mySmartUSB light) stk500v2è supportato e lo portè /dev/ttyUSB0. Qui

avrdude -c stk500v2 -p m328p -P /dev/ttyUSB0

fornisce il seguente output

avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e950f
avrdude: safemode: Fuses OK
avrdude done.  Thank you.

Il consiglio di amministrazione dell'ONU risponde con la firma corretta ed è pronto per alcune azioni :)

Come connettere?

Il mio programmatore USB è venuto con un cavo a nastro a 6 fili con connettori femmina 2x3 su entrambi i lati. Come al solito, il filo per il pin 1 è contrassegnato in rosso. A causa di una tacca sul connettore maschio 2x3 del programmatore, il cavo si adatta qui solo in una direzione.

Se si esamina Arduino UNO, l'intestazione ICSP si trova a destra del pulsante di ripristino.

La piedinatura è la seguente.

MISO 1 2 VCC
SCK 3 4 MOSI
RESET 5 6 GND

NOTA Il pin 1 è quello in alto a sinistra, contrassegnato da un punto bianco!


2
Questo tuttavia non testerà l'interfaccia USB-> Seriale.
Cybergibbons,

@Cybergibbons Assolutamente vero! Ma anche con una USB fritta, potrebbe esserci ancora la possibilità di eseguire il
flashing

+1 Buono a sapersi! Metterà i miei 3 ATmegas morti attraverso questo test. Sai come controllare i fusibili usando un Arduino UNO come programmatore, con lo schizzo ArduinoISP caricato?
Ricardo,

2

Se ne hai un altro, funzionante, Uno, ed entrambi hanno un microcontrollore con socket, puoi usare la scheda nota per programmare uno schizzo di prova sul chip della scheda sconosciuta, rimetterlo sulla scheda sconosciuta ed eseguirlo.

Mi piace il seguente schizzo di prova (pseudo-codificato) per controllare rapidamente le mie schede costruite a mano; è altrettanto utile per testare uno sconosciuto costruito in fabbrica. Non è un test esaustivo, controlla solo gli I / O digitali di base, gli I / O seriali e i cortocircuiti o si apre:

forever,
  for each digital I/O pin:
    write high;
    delay 100ms;
    write low;
  end;

  write "Hello, World!\n" to serial output;
  while serial character available,
    write character to serial output;
  end;
  write "\n" to the serial output;
end;
  • Un LED di prova - un LED con la sua resistenza saldata ad esso - collegato tra qualsiasi I / O e terra dovrebbe lampeggiare ogni 2 secondi. In caso contrario, il pin potrebbe non essere riuscito o avere una connessione errata.

  • Due LED di prova collegati a pin numericamente adiacenti (potrebbero non essere fisicamente uno accanto all'altro) dovrebbero lampeggiare in sequenza. Se lampeggiano insieme, indica un corto, probabilmente un ponte di saldatura, tra di loro.

  • Il terminale dovrebbe dire "Hello World!" ogni due secondi. In caso contrario, il pin o il cavo FTDI o il chip USB / seriale integrato potrebbero non funzionare.

  • Digita qualcosa sulla tastiera e dovrebbe essere ripetuto sul terminale seriale (se il test precedente è passato). In caso contrario, è possibile che il pin o il cavo FTDI o il chip USB / seriale integrati non siano riusciti.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.