Étape 1: Problème et solution
Vous ne serez pas en mesure d’obtenir le bon étalonnage hors un Arduino simple afficheurs pour cette raison : il n’y a pas de filtre passe-bas sur le AVCC entrée sur cartes Arduino, authentiques ou non. La seule variation Arduino, que j’ai trouvé qui a il est décrit dans ce instructable.
Sur Arduinos habituel, l’entrée AVCC est connectée directement à la SCR normale d’entrée, ce qui signifie des fluctuations de tension lorsque l’Arduino est quelque chose d’autre tout en vérifiant les entrées analogiques. Plus précisément, cela conduit à beaucoup de bruit dans les lectures analogRead lors de l’essai sont allumés.
Comme vous ne serez pas en mesure d’installer un inducteur sur l’entrée AVCC sur l’Arduino, vous devrez utiliser une autre dérivation. Il y a trois façons de le faire.
1. mettre un condensateur de 100nF entre broche AREF et GND. En fait, cette approche est clairement définie dans la fiche technique Atmega, mais en quelque sorte il ne permettait pas à la documentation de l’Arduino. C’est une bonne idée de garder le cap il si vous utilisez ADC (analogReads) dans vos projets, car il rend la lecture plus fiable. Cependant, « plus fiable » ne signifie pas « exact » – vous aurez encore un peu de bruit, mais pas un critique. Plus particulièrement, vous ne serez toujours pas en mesure d’obtenir des zéros et 1023s dans la sortie, et, en fait, ces erreurs peuvent varier à chaque fois que vous branchez l’Arduino.
2. Utilisez une alimentation de 5v distinct pour les entrées de l’ADC. À savoir, connectez-le au rail que les trimmers obtiennent leur 5v n’oubliez pas de relier les GNDs de deux blocs d’alimentation. Assurez-vous que vous connectez l’alimentation externe après avoir tourné sur l’Arduino, juste au cas où. Cette méthode fournira encore mieux lectures, cependant, des erreurs sont possibles en raison de la différence entre la tension exacte de deux blocs comme (4.98v sur Arduino) et 5.23v sur l’alimentation externe. Cette méthode est plus fiable, vous serez en mesure de voir les zéros et 1023s, mais il y aura de bruit (voir la capture d’écran ci-dessus).
Il est possible de connecter cette tension externe sur la broche AREF, en affectant à analogReference() externe (donc changer le registre ADMUX en conséquence). Un mot d’avertissement : je ne le recommande pas car il est possible d’endommager la puce Atmega si vous faites une erreur. Vérifiez les instructions ici.
3. les meilleurs résultats sont obtenus si deux Arduinos distincts sont utilisés, un pour des trucs de l’ADC, le deuxième pour le test de diodes. Il peut ressembler à une overdose, mais en fait, c’est la meilleure option pour deux raisons. Tout d’abord, la plupart d'entre nous Arduino amateurs ont toujours un tas de Nanos chinois bon marché, traînent, droite ? Deuxièmement et plus important encore, la pratique de dédier des contrôleurs différents à différentes tâches est effectivement recommandé. Surtout si ces tâches sont tellement différentes que dans notre cas : un essayant d’obtenir exactement résulte d’une assez faible Atmega ADC, les autres LEDs en cours d’exécution avides de pouvoir. Vérifiez la sortie stabilisée sur la capture d’écran ci-dessus.