Étape 7: Prendre des mesures !
Pour vérifier le que fonctionne de la Arduinolyzer, j’ai programmé un Arduino Micro pour incrémenter une valeur de 4 bits à des intervalles de 50ms et écrire la sortie dans ses broches. Utilisation peu un comme déclencheur que j’ai capturé la première image ci-dessus. Il n’y a aucune photo de ce matériel, mais je l’utilise comme mon banc d’essai pour s’assurer que l’échantillonneur fonctionne si je ne suis jamais en doute les données que je collecte.
Les deux prochaines photos sont d’un projet que je construis. C’est un tampon de pression sensible qui compte des objets se déplaçant dessus lorsque l'on appuie sur la touche. Les objets se déplacent très, très rapidement, en passant quelques millisecondes. LEDs de debug ne fonctionnent pas parce que je ne peux pas simplement ajouter une boucle de retard du logiciel de l’univers (je sais, poisse). Avec le Arduinolyzer, j’ai pu mesurer l’état de la touche et les objets en passant dessus.
La première forme d’onde montre le coussinet de détection de pression, et puis les blips unique sur les trois autres canaux indiquent un seul objet en passant au-dessus. (Les capteurs de pression sont hautes et basses pour environ 500 millisecondes et les objets passent au-dessus dans environ 20 ms). La deuxième forme d’onde montre deux objets passant pendant les intervalles de télédétection. J’ai pu repérer deux bugs sur le matériel qui étaient dus à des problèmes de synchronisation dans la logique en aval. En ajustant la synchronisation de flops en aval, j’ai pu éclaircir les canaux qui avaient des retards. J’ai trouvé ces bugs presque instantanément après avoir ramassé les formes d’onde, par opposition à des semaines de regarder les schémas en attente pour le problème de sauter sur moi.