Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Raspberry Pi 4
  3. Le GPIO du Raspberry Pi
Extrait - Raspberry Pi 4 Exploitez tout le potentiel de votre nano-ordinateur (...) (2e édition)
Extraits du livre
Raspberry Pi 4 Exploitez tout le potentiel de votre nano-ordinateur (...) (2e édition)
3 avis
Revenir à la page d'achat du livre

Le GPIO du Raspberry Pi

Présentation du GPIO

Le GPIO du Raspberry Pi est identique pour tous les modèles actuels. La compatibilité est assurée entre les différentes versions de la carte.

Les broches GPIO du Raspberry Pi sont reliées à un connecteur 40 points J8, situé sur un bord de la carte. Les broches du connecteur sont réparties sur deux rangées de 20 broches. 26 broches GPIO sont accessibles (GPIO 2 à GPIO 27).

Les broches du connecteur sont également appelées pin (= aiguille en anglais). Ces deux termes sont équivalents et utilisés indifféremment dans cet ouvrage.

Ce sont des entrées/sorties numériques capables de fournir et de recevoir des signaux numériques 1 et 0 sous la forme de tensions 0 volt et 3,3 volts.

Certaines broches peuvent être utilisées différemment pour fournir un bus I²C, un bus SPI ou une E/S UART. Dans ce cas, les broches concernées ne peuvent plus être utilisées comme entrées/sorties numériques.

Le brochage du connecteur GPIO est rappelé dans le schéma suivant. Les broches impaires sont à gauche, les paires sont à droite.

Le GPIO est identique sur les BCM2835 (Raspberry Pi Zero), BCM2837 (Raspberry Pi 3 A+ et B+) et BCM2711 (Raspberry Pi 4). Dans la suite de ce chapitre, le SoC sera désigné par BCM2xxx.

Connecteur GPIO J8

images/07LF01.png

Sur cette photo du connecteur GPIO J8, la broche 1 est à gauche au premier plan. La pastille de cette broche 1 sous la carte est carrée. Le schéma qui suit présente le connecteur GPIO (J8) vu de dessus.

images/07LF02.png

Douze pins concernent l’alimentation. Les tensions d’alimentation 3,3 V et 5 V ainsi que la masse sont accessibles sur les broches du GPIO pour alimenter des circuits extérieurs. Inversement, il est possible d’alimenter le Raspberry Pi en 5 V à partir des broches du GPIO. Le GPIO fournit deux broches 3,3 V, deux broches 5 V et huit broches de masse.

Le tableau ci-dessous détaille l’utilisation des broches du GPIO.

Broches

Utilisation

Descriptif

6-9-14-20-25-30-34-39

Alimentation

Masse

2-4

Alimentation

+ 5 V

1-17

Alimentation

+ 3,3 V

8-10

UART

Ces deux broches donnent accès à un UART (Universal Asynchronous Receiver Transmitter = émetteur-récepteur asynchrone universel) qui pourra dialoguer avec un terminal ou tout autre appareil possédant un port série. Ces broches sont la 8 : TXD (Transmitted Data = données émises) et la 10 : RXD (Received Data = données reçues).

19-21-23-24-26

Bus SPI

Ces cinq broches fournissent un bus SPI (Serial Peripheral Interface = interface de périphérique série). C’est un bus de transmission de données série synchrone. Il est utilisé pour faire communiquer des circuits...

Caractéristiques techniques des E/S

Ce sont des entrées/sorties (E/S) numériques capables de fournir et de recevoir des signaux numériques 1 et 0 sous la forme de tensions 0 volt et 3,3 volts. Il n’y a pas d’entrée/sortie analogique.

Comme tout circuit électronique, les ports du GPIO ont des limitations en tension (V) et en courant (I) qu’il faut connaître et intégrer pour utiliser le Raspberry Pi en toute sécurité.

1. Numérotation des E/S

Les E/S sont numérotées de plusieurs façons. Il faudra être attentif au mode de numérotation utilisé. Les différents modes sont les suivants :

  • BCM - numérotation utilisée par le fabricant du SoC Broadcom. Elle est également notée "GPIO".

  • Physique - numérotation correspondant à la position physique des broches sur le connecteur GPIO.

  • Bibliothèque - numérotation interne à une bibliothèque. Utilisée par exemple quand on utilise la librairie Wiring Pi.

Par exemple, la broche physique 12 correspond à BCM 18 et à Wiring Pi pin 1.

Avant de démarrer un projet ou une réalisation, il faudra bien vérifier le mode utilisé et s’assurer de la concordance des broches.

2. Schéma de l’interface GPIO

Le schéma suivant est une représentation simplifiée de l’étage de sortie d’une broche GPIO du SoC Broadcom BCM2xxx.

images/07LF03.png

La broche d’entrée/sortie (E/S GPIO24) se trouve à gauche du schéma. À droite de ce point d’accès physique, les composants représentés sont dans le SoC. Toutes les E/S GPIO sont basées sur le même circuit.

Il est possible de régler le courant de sortie de 2 mA à 16 mA par pas de 2 mA, de choisir la pente (slew rate = vitesse de balayage) du signal et de mettre en service l’hystérésis sur l’entrée. Ces choix sont valables pour l’ensemble des broches du GPIO. Il est impossible de modifier séparément chaque broche.

L’hystérésis permet de mettre en forme un signal en utilisant des seuils différents sur le front...

Liaison GPIO - breadboard

1. Fils Dupont

images/07LF05.png

Les fils Dupont sont généralement disponibles sous forme de nappe comportant 40 fils de diverses couleurs. Les extrémités sont équipées de connecteurs mâles ou femelles. Il existe trois types de câbles : Mâle/Mâle, Femelle/Femelle et Femelle/Mâle. Différentes longueurs sont disponibles. Pour de l’expérimentation, les fils de 20 cm de long sont pratiques.

Avec la carte breadboard, ce sont des fils Femelle (côté GPIO)/Mâle (côté breadboard) qui sont le plus souvent utilisés. Il est bien de prévoir un jeu de chaque sorte si vous voulez répondre à tous les cas possibles.

2. Carte T-Cobbler

Des câbles sont disponibles pour relier le port GPIO du Raspberry Pi à une carte d’expérimentation (breadboard). Le kit "Pi T-Cobbler" proposé par Adafruit comporte un câble de liaison en nappe, avec deux prises à 40 contacts serties sur la nappe.

images/07LF06.png

Une carte de circuit imprimé en forme de T porte des inscriptions sérigraphiées qui indiquent le nom de chacune des 40 broches. Un connecteur à 40 points est fourni, ainsi que des connecteurs à souder en bande. Le connecteur 40 points sera soudé sur le dessus de la barre horizontale du T et assurera la liaison avec le câble en nappe....

Conclusion

Les broches GPIO donnent au Raspberry Pi 4 un accès au monde physique. Elles sont relativement faciles à paramétrer aussi bien en lecture qu’en écriture, particulièrement avec les librairies développées dans les différents langages.

Le nombre restreint de ports GPIO, leurs limitations en tension et en intensité et l’absence d’entrées/sorties analogiques ont amené le développement d’une multitude de cartes d’extensions.