Comment vérifier que ma carte Arduino fonctionne ou est morte?

17

Lorsque vous avez une planche en main mais que vous ne savez pas si elle fonctionne ou non, comment vérifier si elle fonctionne ou si elle est morte?

Hardik Thaker
la source
3
Je suggérerais que le titre et la question soient modifiés pour devenir "Arduino Uno", ou que la balise "uno" soit supprimée et que la question soit plus générique.
Cybergibbons
Voir aussi arduino.stackexchange.com/a/13293/39212 pour plusieurs vérifications supplémentaires.
Jethro

Réponses:

14

Remarque: Après le commentaire de @ Ricardo sur mon dernier message, je poste ceci!

Branchez la carte sur un port USB de votre ordinateur et vérifiez que le voyant d'alimentation LED vert sur la carte s'allume. Les cartes Arduino standard (Uno, Duemilanove et Mega) ont un indicateur d'alimentation LED vert situé près du commutateur de réinitialisation.

Une LED orange près du centre de la carte (étiquetée «Pin 13 LED» dans l'image ci-dessous) devrait s'allumer et s'éteindre lorsque la carte est sous tension (les cartes proviennent de l'usine préchargées avec un logiciel pour faire clignoter la LED comme une simple vérification que le conseil fonctionne).

entrez la description de l'image ici

Si le voyant d'alimentation ne s'allume pas lorsque la carte est connectée à votre ordinateur, la carte n'est probablement pas alimentée.

La LED clignotante (connectée à la broche de sortie numérique 13) est contrôlée par un code exécuté sur la carte (les nouvelles cartes sont préchargées avec l'esquisse d'exemple Blink). Si la LED de la broche 13 clignote, le croquis fonctionne correctement, ce qui signifie que la puce de la carte fonctionne. Si le voyant d'alimentation vert est allumé mais que le voyant de la broche 13 ne clignote pas, il se peut que le code d'usine ne soit pas sur la puce. Si vous n'utilisez pas de carte standard, elle peut ne pas avoir de LED intégrée sur la broche 13, alors consultez la documentation pour plus de détails sur votre carte.

Des guides en ligne pour démarrer avec Arduino sont disponibles sur Windows , Mac OS X et Linux .

Hardik Thaker
la source
2
Remarque: cela ne fonctionnera que si le port USB ou la puce FTDI n'ont pas été brûlés. La puce Atmega pourrait fonctionner correctement même si ces deux composants ne le sont pas.
asheeshr
1
+1 À droite, Hardik! Ce qui est drôle, c'est qu'hier, quelqu'un a posé une question sur un problème avec son Arduino et je voulais le signaler à votre réponse. Maintenant, nous pouvons le faire correctement.
Ricardo
@Ricardo: Bingo: P
Hardik Thaker
2
Si vous réinitialisez la carte (avec le bouton), le chargeur de démarrage clignote généralement la LED de la broche 13
TheDoctor
Ma première carte était une Duemilanove et est venue avec une puce FTDI morte. C'était très frustrant jusqu'à ce que j'obtienne une planche de remplacement fonctionnelle.
linhartr22
5

Supposons que l'on possède un programmeur USB, il existe une autre façon d'inspecter l'Arduino.

Connectez le programmateur aux broches ICSP de l'Arduino et appelez avrdudeavec les bons paramètres pour lire les fusibles de votre Arduino.

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

Pour un Arduino Uno, partnoc'est m328p. Programmer-iddépend de l'appareil utilisé. Dans mon cas (mySmartUSB light) stk500v2est pris en charge et portest /dev/ttyUSB0. Ici

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

donne la sortie suivante

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.

Le conseil d'administration de l'UNO répond avec la signature correcte et est prêt pour une action :)

Comment se connecter?

Mon programmeur USB était livré avec un câble ruban à 6 fils avec des connecteurs femelles 2x3 des deux côtés. Comme d'habitude, le fil de la broche 1 est marqué en rouge. En raison d'une encoche dans le connecteur mâle 2x3 du programmateur, le câble ne s'insère ici que dans une seule direction.

Si vous regardez l'Arduino UNO, l'en-tête ICSP est à droite du bouton de réinitialisation.

Le brochage est le suivant.

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

REMARQUE La broche 1 est la partie supérieure gauche, marquée d'un point blanc!

Klaus-Dieter Warzecha
la source
2
Cependant, cela ne testera pas l'interface USB-> Série.
Cybergibbons
@Cybergibbons Absolument vrai! Mais même avec une clé USB frite, il pourrait encore y avoir une chance de flasher l'Arduino en utilisant le programmateur alors;)
Klaus-Dieter Warzecha
+1 Bon à savoir! Va mettre mes 3 ATmegas morts à travers ce test. Savez-vous comment vérifier les fusibles en utilisant un Arduino UNO comme programmeur, avec le croquis ArduinoISP chargé?
Ricardo
2

Si vous en avez un autre qui fonctionne, Uno, et que les deux ont des puces de microcontrôleur enchâssées, vous pouvez utiliser la carte connue pour programmer un croquis de test sur la puce de la carte inconnue, la remettre sur la carte inconnue et l'exécuter.

J'aime le croquis de test suivant (pseudo-codé) pour vérifier rapidement mes cartes fabriquées à la main; il est tout aussi pratique pour tester un modèle d'origine inconnu. Ce n'est pas un test exhaustif, il vérifie simplement les E / S numériques de base, les E / S série et court-circuite ou ouvre:

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;
  • Une LED de test - une LED avec sa résistance soudée - connectée entre n'importe quelle E / S et la masse doit clignoter toutes les 2 secondes. Si ce n'est pas le cas, cette broche peut avoir échoué ou avoir une mauvaise connexion.

  • Deux LED de test connectées à des broches numériquement adjacentes (elles peuvent ne pas être physiquement côte à côte) devraient clignoter en séquence. S'ils clignotent ensemble, cela indique un court, probablement un pont de soudure, entre eux.

  • Le terminal devrait dire "Bonjour tout le monde!" toutes les deux secondes. Sinon, cette broche ou le câble FTDI ou la puce USB / série intégrée peuvent avoir échoué.

  • Tapez quelque chose sur le clavier et il devrait être répété sur le terminal série (si le test précédent a réussi). Si ce n'est pas le cas, encore une fois cette broche ou le câble FTDI ou la puce USB / série intégrée peuvent avoir échoué.

JRobert
la source