- 1. Carte Arduino non reconnue
- 2. Carte non synchronisée
- 3. Le code ne démarre pas lors de la réinitialisation de l'alimentation
- 4. Erreur de signature de périphérique non valide
- 5. Erreur Launch4j
- 6. Port série déjà utilisé
- 7: Sketch est téléchargé avec succès mais rien ne se passe
- 8. Erreur de lien insatisfaite
- 9. Esquisse trop grande
- 10. java.lang.StackOverflowError
Commencer en tant que débutant avec l'Arduino peut être assez difficile pour les personnes sans expérience en électronique, vous rencontreriez des erreurs, dont certaines peuvent avoir des solutions simples mais peuvent prendre des jours à résoudre. Donc, pour rendre les choses un peu plus faciles, j'ai créé une liste des 10 erreurs Arduino les plus populaires ainsi que des solutions possibles.
1. Carte Arduino non reconnue
Cela fait référence à une situation où une carte Arduino, connectée à un ordinateur n'est pas reconnue par l'ordinateur. Lorsque cela se produit, la carte n'est généralement pas répertoriée dans les listes de ports de l'IDE Arduino et est parfois étiquetée USB2.0 sous le gestionnaire de périphériques.
Solution
Cela se produit lorsque vous utilisez certains clones Arduino bon marché qui utilisent la puce de conversion USB vers série CH340g au lieu du FTDI (FT232RL) et d'autres utilisés par les cartes Arduino standard. Les pilotes pour les puces USB vers série utilisées par les cartes Arduino standard sont toujours emballés avec le fichier de configuration Arduino IDE, donc lorsque vous installez l'IDE, les pilotes sont automatiquement installés sur votre PC. Pour pouvoir utiliser ces cartes Arduino basées sur un convertisseur USB vers série CH340g, vous devrez télécharger et installer le pilote de la puce. Le pilote peut être téléchargé à partir de ce lien. L'installer est aussi simple que de cliquer sur le bouton d'installation de l'interface de configuration ci-dessous.
Cela fait, vous devriez maintenant être en mesure de localiser le port auquel la carte est connectée sur l'IDE Arduino.
2. Carte non synchronisée
Habituellement, lorsque cela se produit, vous ne pourrez pas télécharger de code (bien que l'EDI affiche parfois «téléchargement terminé») sur la carte Arduino et l'EDI affichera le code d'erreur; « Avrdude: stk500_getsync (): pas synchronisé: resp = 0x00 ».
Solution
La sync: resp = 0x00 est une réponse générique qui se traduit par «la puce Atmega ne fonctionne pas » sur l'Arduino. Lorsque cela se produit, il y a tout un tas de choses qui pourraient être erronées. Voici quelques étapes à suivre pour effacer cette erreur.
1. Assurez-vous que rien n'est connecté aux broches numériques 0 et 1 sur l'Arduino (y compris les blindages).
2. Vérifiez que le port com et la carte appropriés ont été sélectionnés dans le menu Outils.
3. Appuyez plusieurs fois sur le bouton de réinitialisation de l'Arduino et retéléchargez le code.
4. Déconnectez et reconnectez l'Arduino au PC.
5. Redémarrez l'IDE Arduino.
Si tout cela ne fonctionne pas, il est peut-être temps d'essayer d'utiliser une autre carte Arduino avec le PC ou d'utiliser la carte Arduino «défectueuse» avec un autre PC. Cela devrait vous aider à identifier lequel d'entre eux est à l'origine du problème. Si vous découvrez que le problème vient du PC, réinstallez l'IDE Arduino. Cependant, si la carte Arduino «défectueuse» est la source du problème, une solution ultime sera de flasher la carte avec le firmware Arduino. Si aucune des solutions ci-dessus ne fonctionne, il est peut-être temps pour vous de changer la carte Arduino.
3. Le code ne démarre pas lors de la réinitialisation de l'alimentation
Cela fait référence aux cas où l' Arduino n'exécute pas l'esquisse qui lui est téléchargée lorsqu'il est allumé et, dans la plupart des cas, revient simplement à l'esquisse clignotante associée au chargeur de démarrage.
Solution
Tout comme les autres problèmes traités, il y a un certain nombre de choses qui pourraient causer cela.
Si la carte se bloque et ne fait rien, vous devez vérifier votre code pour vous assurer que vous n'envoyez pas de données série à la carte lorsqu'elle s'allume. Lorsque l'Arduino est allumé, le chargeur de démarrage, dans les premières secondes, écoute l'ordinateur pour lui envoyer un nouveau croquis à télécharger sur la carte. Si aucune nouvelle esquisse n'est reçue, après un court instant, le chargeur de démarrage expirera et exécutera la dernière esquisse téléchargée sur la carte. Si votre code envoie des données série pendant les premières minutes, le bootloader n'expirera pas et le dernier croquis téléchargé sur la carte ne démarrera pas.
Si l'envoi de données série dès que la carte est allumée est une partie importante de votre projet, vous devrez peut-être trouver un moyen de lui donner un certain délai pour empêcher les données série d'arriver immédiatement que l'Arduino s'allume. Si les ajustements affectent la tâche que le projet doit effectuer, vous devrez peut-être télécharger votre croquis sur la carte à l'aide d'un programmeur externe, car le chargeur de démarrage peut être contourné par eux.
Si la carte ne se bloque pas mais revient à l'esquisse de clignotement Arduino (le voyant de la broche 13 clignote de temps en temps), une solution simple sera de flasher la carte avec le chargeur de démarrage Arduino, car celui de la carte peut avoir été corrompu.
4. Erreur de signature de périphérique non valide
Cette erreur s'affiche lorsqu'une tentative est faite pour télécharger du code, sur une carte, différente de celle sélectionnée dans la liste des outils> de la carte sur l'IDE Arduino. Cette erreur se produit généralement en raison du fait que la signature du périphérique sur la carte cible est différente de celle de la carte sélectionnée sur l'EDI.
Solution
La solution à cette erreur est aussi simple que de s'assurer que la bonne carte est sélectionnée sur l'IDE Arduino. Si cela ne fonctionne pas, il peut être nécessaire de flasher le microcontrôleur avec la dernière version du chargeur de démarrage Arduino.
5. Erreur Launch4j
L'IDE Arduino prend parfois un certain temps avant le chargement et lorsqu'il se charge, si vous cliquez sur quelque chose, il affichera l'erreur Launch4J comme indiqué ci-dessus. Launch4j est un outil utilisé pour envelopper les applications Java (jars) dans un exécutable natif Windows, leur permettant d'être utilisé comme un programme Windows normal.
L'IDE Arduino lui-même est écrit en JAVA et cette erreur se produit en raison de l'incompatibilité de la bibliothèque Java Run Time Environment (JRE) fournie avec l'IDE Arduino.
Solution
Par expérience, cette erreur peut être effacée par quelque chose d'aussi simple que de désactiver la connectivité Bluetooth ou WiFi de votre PC. Cependant, une solution plus complète et permanente consiste à remplacer le JRE du package Arduino par une version récente.
6. Port série déjà utilisé
C'est probablement l'une des erreurs les plus faciles à résoudre. Cela se produit généralement lorsque vous essayez de télécharger du code sur un Arduino alors que le moniteur série est ouvert (ce n'est plus un problème si vous utilisez des versions IDE récentes) ou lorsque vous essayez de lancer le moniteur série lorsque l'Arduino parle à un autre logiciel ou appareil via le port série. Essentiellement, cela se produit lorsque vous essayez d'utiliser le port série Arduino pour deux choses différentes en même temps.
Solution
Tout comme l'IDE suggéré, fermez tous les autres logiciels / outils (y compris le moniteur / traceur série) qui peuvent utiliser le port com. Si vous n'êtes pas sûr du logiciel particulier, débranchez l'Arduino. Il devrait être prêt à fonctionner au moment où vous le rebranchez.
7: Sketch est téléchargé avec succès mais rien ne se passe
Cette erreur est similaire à certaines des autres erreurs déjà traitées ci-dessus. Pour cette erreur, l'IDE Arduino suggérera que le code a été téléchargé avec succès, mais la carte ne fait rien.
Solution
- Assurez-vous que la carte sélectionnée dans l'EDI est la même que la carte cible.
- Cela peut être dû au fait que la taille de l'esquisse est supérieure à la capacité de la carte. Vérifiez la taille de l'esquisse et utilisez certaines des méthodes mentionnées ci-dessus pour réduire la taille.
- Enfin, cette erreur peut se produire lorsqu'une alimentation bruyante est utilisée. Assurez-vous que l'alimentation est suffisamment stable.
8. Erreur de lien insatisfaite
C'est probablement la seule erreur rare qui a figuré sur cette liste. Cela se produit lorsque vous disposez d'une ancienne version de la bibliothèque de communication sur votre PC, probablement d'une installation précédente.
Solution
Pour résoudre cette erreur, recherchez comm.jar ou jcl.jar dans /System/Library/Frameworks/JavaVM.framework/ ou dans les répertoires des variables d'environnement CLASSPATH ou PATH de votre PC.
9. Esquisse trop grande
Cette erreur se produit lorsque votre code est plus grand que la mémoire flash de cette carte Arduino particulière. La taille de la mémoire flash de l'Arduino Uno, par exemple, est de 32 Ko avec 2 Ko déjà utilisés par le chargeur de démarrage Arduino. Si vous devez télécharger un code d'une taille supérieure à 32 Ko, l'Arduino affichera cet avertissement.
Solution
Comme mentionné ci-dessus, cela se produit lorsque votre esquisse est plus grande que la mémoire flash de la carte que vous utilisez.Par conséquent, pour résoudre ce problème, vous devez trouver des moyens de réduire la quantité d'espace occupé par votre code. Certains des conseils pour y parvenir comprennent:
- Dans la mesure du possible, utilisez des types de données entiers à la place d'un flottant.
- Dans la mesure du possible, utilisez le qualificatif «const» lors de la déclaration des variables.
- Incluez uniquement les bibliothèques nécessaires. Dans la mesure du possible, utilisez les versions allégées des bibliothèques les plus importantes.
- Améliorez le code en général. Développez des algorithmes qui pourraient vous aider à rendre votre code plus court et généralement léger.
Une solution plus radicale sera de déplacer le projet sur une autre carte, comme l'Arduino Mega, qui dispose d'une mémoire flash plus grande que l'Uno.
10. java.lang.StackOverflowError
Lors du traitement de l'esquisse, l'Arduino utilise des expressions régulières pour le traitement et se confond parfois lorsqu'il rencontre certaines erreurs liées aux chaînes telles que des guillemets manquants.
Solution
Cette erreur est résolue en jetant un deuxième regard sur le code, en particulier les parties où des séquences de chaînes sont utilisées. Assurez-vous que les guillemets sont complets, que les contre-obliques sont correctement utilisées, etc.
Il y a une limite au nombre d'erreurs que l'on peut insérer dans un seul tutoriel et pour cette raison, nous nous arrêterons ici. Cependant, cette liste contient certaines des erreurs les plus courantes auxquelles sont confrontés les débutants lorsqu'ils utilisent Arduin o. Êtes-vous confronté à une erreur particulière, n'hésitez pas à laisser un commentaire, j'espère que nous pourrons y remédier ensemble.
La prochaine fois.