Etape 3: Tester le Sketch et les Design Notes
Dans cette étape, que je vais parler de certaines des épreuves et des tribulations que j’ai rencontré sur le chemin, et comment j’ai travaillé à travers eux, dans l’espoir qu’il sera utile. Hésitez pas à passer à l’étape suivante si le contenu scientifique n’est pas votre truc:-)La première étape a été décidé d’utiliser un capteur capacitif ou résistif de détection. Un capteur résistif est connexion du capteur à travers une résistance à l’une des broches analogiques et faire analogRead et compare avec un seuil. C’est plus simple à mettre en œuvre, mais prend beaucoup d’étalonnage.
La théorie de détection capacitive, c’est que quand inverse biaisées (- pour les + plomb et vice versa), une LED ne permettra pas actuelle à couler, mais électrons vont recueillir sur un côté et laisser l’autre côté, un condensateur de charge efficacement. Lumière tombant sur la LED à la fréquence qu’il émet normalement provoque effectivement une smal actuel au flux, qui s’acquitte de ce condensateur.
Ainsi, si nous charger le condensateur de LED et compter combien de temps il faut pour décharger à travers une résistance, on obtient une idée approximative de la quantité de lumière tombe sur la LED. Cela a fonctionné en fait être plus fiable à travers différents dispositifs et fonctionne même pour les phototransistors ! Puisque nous ne faisons pas une mesure précise de lumen et le pointeur laser doit apparaître beaucoup plus lumineux qu’ambiante, nous venons d’examiner pour un temps de décharge binariser.
L’autre partie importante de cette aventure est le débogage. Pour ceux qui sont familiers avec la programmation des systèmes non incorporé, une méthode populaire est d’ajouter des déclarations impression aux points critiques dans le code. Ceci s’applique également aux systèmes embarqués, mais lorsque le compte de chaque microseconde, la quantité de temps à Serial.write (« x est") ; Serial.writeln(x) ; est en fait assez significatif, et vous risquez de manquer beaucoup d’événements dans le processus. Donc n’oubliez pas de toujours mettre vos relevés imprimés en dehors des boucles critiques, ou n’importe quel moment, vous attendez un événement. Parfois un témoin clignotant est suffisant pour que vous sachiez que vous avez obtenu jusqu'à un certain point dans le code.