3.9. Interrupteurs et résistances de tirage¶
Une sortie GPIO commande du matériel externe. Une entrée GPIO fait l’inverse : la caméra lit la tension sur une broche et la rapporte comme 0 ou 1. Le dispositif d’entrée le plus simple est un interrupteur – et le rendre lisible de manière fiable nécessite un composant électronique en plus de l’interrupteur lui-même.
3.9.1. Interrupteurs et entrées flottantes¶
Un interrupteur est un contact mécanique : deux pièces de métal qui se touchent lorsque l’interrupteur est fermé et se séparent lorsqu’il est ouvert. Électriquement, c’est là tout le dispositif. Il n’y a aucune source de tension à l’intérieur ; un interrupteur seul ne fournit que « connecté » ou « déconnecté ».
Câbler un interrupteur directement entre une broche GPIO et la masse signifie que la broche est :
À 0 V lorsque l’interrupteur est fermé (désormais reliée à la masse).
Flottante lorsque l’interrupteur est ouvert (reliée à rien).
Une broche flottante n’a pas de tension définie. L’entrée lit tout ce qui se trouve à proximité – diaphonie de signaux voisins, bruit de l’alimentation, voire l’électricité statique d’un doigt proche du fil. value() renvoie des mélanges imprévisibles de 0 et de 1 plusieurs fois par seconde.
3.9.2. Résistances de tirage vers le haut et vers le bas¶
La solution est une résistance de tirage : une résistance de forte valeur (10 kΩ à 100 kΩ est typique) qui relie l’entrée à un rail connu lorsque l’interrupteur est ouvert.
Configurations de tirage vers le haut (à gauche) et vers le bas (à droite) pour une entrée d’interrupteur.¶
Tirage vers le haut. La résistance relie l’entrée au rail d’alimentation. Lorsque l’interrupteur est ouvert, seul un faible courant s’écoule à travers la résistance et la broche lit l’état haut. Lorsque l’interrupteur est fermé, il court-circuite la broche à la masse ; la broche lit l’état bas. La résistance limite le courant qui circulerait autrement de l’alimentation vers la masse à travers l’interrupteur fermé.
Tirage vers le bas. L’image miroir : la résistance relie l’entrée à la masse, et l’interrupteur se connecte à l’alimentation. Ouvert lit l’état bas, fermé lit l’état haut.
Le tirage vers le haut est la convention la plus courante – des boutons « actifs à l’état bas ». Le microcontrôleur lui-même fournit des résistances de tirage vers le haut et vers le bas intégrées, qui peuvent être activées avec Pin.PULL_UP ou Pin.PULL_DOWN, supprimant entièrement la résistance externe.