Le GPIO du Raspberry Pi
Présentation du port GPIO
Depuis le Raspberry Pi Modèle B+ sorti en 2014, le port GPIO n’a subi aucun changement ni dans son brochage ni dans ses fonctions de base. Ceci assure une compatibilité totale des cartes additionnelles appelées aussi cartes HAT (du nom donné à la spécification du port GPIO par la Fondation). Même les très anciennes cartes HAT qui disposent d’un connecteur GPIO à 26 broches sont compatibles, les 26 premières broches du connecteur à 40 broches ayant les mêmes fonctions.

Positionné entre deux des quatre trous de fixation de la carte, il est repéré J8. Cette sérigraphie J8 repère d’ailleurs la première broche numérotée 1. La broche numéro 2 se situe en haut à gauche. Les broches sont ensuite numérotées jusqu’à 40 en zigzag vers la droite. En clair, toutes les broches en bas sont impaires et toutes les broches en haut sont paires.
D’un point de vue général, vous trouverez deux types de broches sur ce port :
-
Des broches d’alimentation : leur fonction est fixe. Elles consistent à mettre à disposition une source d’énergie pour alimenter la carte HAT, le montage ou la platine d’essai. Il existe deux broches fournissant du +3,3 volts (orange), deux du +5 volts...
Caractéristiques techniques des différentes broches
1. Les broches d’alimentation
Nous l’avons abordé plus haut, les broches d’alimentation sont là pour mettre à disposition une alimentation électrique au montage externe ou à la carte HAT. Elles sont de trois types différents :
-
Les broches de masse GND ou ground (en noir), sont directement reliées au potentiel 0 volt de la carte. Elles assurent le retour d’électricité (ou le pôle négatif), que cela soit du 3,3 volts ou du 5 volts. Il n’y a pas de limite électronique sur ces broches, c’est-à-dire qu’elles peuvent assurer des alimentations conséquentes (dans la limite des capacités de l’alimentation du Raspberry Pi), mais aussi assurer un court-circuit en cas de fausse manipulation.
-
Les broches 5V (en rouge) fournissent la même alimentation que celle de la carte Raspberry Pi, soit du 5 volts. Sa fourniture est assurée par le circuit DA9091. La consommation soutirée est additionnée au courant contrôlé pour les ports USB. La limite de courant est donc la même que pour la carte Raspberry Pi entière. Si vous la dépassez, il existe un risque de ne plus avoir la tension de 5 volts nécessaire au fonctionnement de la carte Raspberry Pi entière et donc de subir un plantage ou un redémarrage.
-
Les broches 3.3V (en orange) fournissent l’alimentation électrique en 3,3 volts utilisée en interne par les circuits électroniques comme le SoC, la RAM ou certains autres circuits. C’est ce niveau de tension qui permet le codage des « 1 » (niveaux hauts) en interne. La puissance maximale prévue à la conception de la carte est d’environ 80 mA , ce qui correspond approximativement à 3 mA par broche GPIO. C’est une limite à bien garder à l’esprit, car de fait, il n’est pas possible d’utiliser toutes les sorties GPIO en même temps avec une LED connectée et allumée ! Avec un courant de 20 mA par LED par exemple, il faudra se limiter à quatre LED allumées en même temps !
2. Les broches GPIO
La première fonctionnalité configurable par logiciel est le sens...
Précautions d’usage
Le port GPIO offre de multiples possibilités d’interaction avec le monde extérieur. Mais ses capacités restent modestes en termes de puissance électrique. N’oubliez pas que beaucoup de ses broches sont directement connectées au SoC et fonctionnent donc avec des courants faibles et des tensions de 3,3 volts. Malgré les protections, son utilisation doit être réservée à quelques composants externes. Pour les projets plus conséquents, préférez des cartes additionnelles qui adapteront les puissances ou augmenteront les capacités en termes de puissance.
Pour les liaisons avec des câbles Dupont, préférez des câbles femelle/femelle afin d’éviter des contacts accidentels avec des broches du connecteur GPIO.
Conclusion
C’est ce port GPIO qui est devenu un standard au fil du temps. Nombre de cartes d’extension ont été développées autour de ce port à cause de ses capacités multiples. D’autres fabricants l’ont aussi adopté afin d’être compatibles avec l’écosystème Raspberry Pi.