C’est mon tout premier projet sur une raspberri PI 2 model B V1.1.
J’ai une plaque comprenant deux boutons poussoirs (CR-1267836) et une nappe de 4 fils disposés en série (CR-1237840).
Mon but est de brancher ces deux boutons sur ma carte et de m’amuser à programmer les actions sur ces boutons. je ne cherche même pas encore à allumer ou éteindre une LED ! juste des actions visible sur le moniteur !
Sur la plaquette des boutons, je vois que les pins sont dans l’ordre suivant : S1, S2, VCC, GND et je vois aussi qu’il y a deux résistances sur la plaquette.
J’ai pu me procurer l’ordre du pinout pour ma carte en sivant ce lien : Raspberry Pi 2 Pinouts - Digital Lab
Mon priblème de départ est : Comment brancher ma nappe sur les pins du raspberry tout en respectant l’ordre des branchements des boutons poussoirs ?
Je vous remercie pour ces informations.
Pour les bornes d’un bouton poussoir, il y en a une qui va sur un GPIO et l’autre doit-elle aller sur un GND ou une alim. Et si c’est sur une alim, c’est 3,3 V ou 5V ?
A cause de la nappe 4 fils que je possède, je dois brancher sur le raspberry 4 broches côte à côte (je n’ai pas de fils simple pin). Du coup, j’ai repéré sur le pinout les pins 13 (GPIO 27), pin 15 (GPIO 22), pin 17 (3,3V power) et la pin 19 (GPIO 10 SPIO MOSI).
Si je pars sur un branchement avec du 3,3V et pas du 5V (je pense que c’est plutôt une alim pour LEDs), cela correspondrait en partie avec l’ordre des pins sur les boutons poussoirs : S1, S2, VCC et GND.
Ainsi, si je branche ma nappe à cet endroit du raspberry, j’aurai :
-la borne S1 du premier bouton branchée sur la pin 13 (GPIO 27),
-la borne S2 du deuxième bouton branchée sur la pin 15 (GPIO 22)
-la borne VCC du module de boutons branchée sur la pin 17 (3,3V power)
-la borne GND du module de boutons serait branchée sur la pin 19 (GPIO 10 SPIO MOSI).
J’hésite beaucoup sur la dernière pin car je ne sais pas si les GPIO peuvent être branchées sur un GND ? cela provoquerait-il un court circuit ?
Aucune alimentation requise pour ce type d’exercice.
Un bouton permet de faire continuer un circuit ou non, l’idée avec un RPi est que une pin « écoute », celel que tu défini. Vu que le circuit à le bouton non pressé, il ne peut pas aller au Ground (GND). Quand tu appui, tu permet au circuit de compléter le chemin, et ainsi changer l’état capté par la sonde GPIO choisi.
C’est une base du principe d’interaction avec un RPi. Après, allumer une LED va impliquer ce bouton que tu ajoute ET un autre circuit qui pour permettre l’alimentation d’une LED. Le bouton n’interagi par directement avec la LED, c’est le logiciel qui doit le faire.
En passant avec un logiciel, ce n’est pas pour allumer qu’une LED’ mais plutôt organiser un ensemble de commandes en une seul touche. Par exemple allumer la LED et la garder dans son état et quand tu réappuie tu éteins la LED, ou démarrer une action.
Sans RPi, donc direct, tu pourrais connecter le bouton et une LED avec un circuit alimenté depuis une batterie par exemple. Quand le bouton ne sera pas pressé, le circuit ne ce ferme pas et le courant ne peut pas aller du positif au négatif. Principe d’une lampe-torche.
Pour tes branchements;
J’ai de la misère a trouver la référence de ton bouton, je vais alors expliquer avec ce que je connais.
Tu as des boutons à 2, ou 4 branche pour des « on/off », sinon, si tu as 3 5 ou 6 et plus, tu as soit plusieurs états, ou plusieurs outputs. Ici ont considère que tu as un type « on/off ».
Dans ce type ta 2 modèles, soit un pressoir; seul quand tu enfonce qui fait effet, soit un interrupteur, qui garde la position. En simple, seul le temps que l’état reste varie selon le modèle, et tout dépend du besoin.
Mais que tu es 2 ou quatre pins, l’idée est que 1 coté c’est l’entré et l’autre la sortie. Sur un 4 pins, tu peux te servir du « beep » pour savoir qui est relié à qui. Mais tu n’auras que 2 embranchement à utiliser.
Les 4 pins ont 2 entrées et 2 sortie, pouvant gérer deux circuits, un « Y » ou faire une redondance, selon le modèle de bouton.
Pour suivre mon guide…
Tu va donc relier l’un (entrée) sur le GPIO 4 (pin #7) et l’autre (sortie) sur le GND en pin #6, #9, #14, #20, #25, #30, #34 ou #39, à ton choix.
Dans mon code sur le guide, tu as la possibilité d’agir dans 3 états, changement d’état a pressé, il était déjà à pressé et il n’est plus pressé. Tu peux donc ajuster le code selon l’usage. Un bouton pressoir peut devenir un interrupteur, et vice-versa.
Dans l’exemple du code, le bouton A va redémarrer (reboot) et le bouton B fermer (shutdown). Vu que je ne veux pas répéter la commande, il est placé au changement d’état (pas pressé à pressé), et le « elif » qui suit, serais si je l’appliquerais que au second cycle (et les suivant si j’applique pas un autre if pour le limiter), le « else » est quand le bouton n’est pas pressé, avec un petit « if » pour vérifier l’état d’avant, serait possible de capteur un autre changement d’état ici.
Mais ici, c’est pour te montrer le rudiment de la manipulation d’un bouton sur un RPi pour qu’il réponde. Une fois tu comprend son usage et tu es en mesure de le créer physiquement, la tu peux passer à l’ajout d’une LED. Mais ça, je ne t’aiderais pas, j’ai jamais appliqué cette partie là. Mais avec la base du bouton, tu va mieux comprendre comment l’ajouter via d’autres guide sur Internet, il reste que c’est la partie la plus documenté.