Étape 9: Touch
Les numéros de broches analogiques et numériques pour le Attiny sont un peu confus. J’aime faire référence au schéma suivant qui provient du fichier « pin.h » pour le logiciel de base Attiny si vous creusez assez profond :
Le capteur tactile est connecté physiquement à la broche de la Attiny 7, qui, dans la fiche de données de Atmel, est désigné « PB2 ». Dans le logiciel Arduino, nous devons engager la résistance de pull-up à l’aide de la désignation de la broche numérique ("2"). Ensuite, nous devons utiliser la désignation de broche analogique ("1") quand on utilise la fonction analogRead(). Confusion que diable, mais je ne suis pas intelligent assez pour commencer à ré-écrire les bibliothèques de l’Arduino.
Pour mesurer le touch, nous devons faire un peu de magie Arduino. En engageant une résistance pull-up interne, nous pouvons détecter lorsque la résistance à travers deux traces change. Sans un chemin d’accès actuel (haute résistance), la valeur de 10 bits est proche le 1023 maximale car la résistance de pull-up est en tirant la tension élevée. Quand la peau fournit un chemin d’accès actuel, la valeur analogique va descendre en dessous de 1000, et nous pouvons déclencher la LED pour indiquer la détection.
Si nous avions un bouton ou interrupteur installé au lieu de cela, la valeur passerait à près de 0 puisque la résistance est presque nulle.