🛠 Maîtriser les GPIO sur Banana Pi BPI-CM5

Banana Pi BPI-CM5 : Module Compute SoC Amlogic A311D2 compatible Raspberry Pi CM4 · debutant · Apprenez à contrôler les broches GPIO de votre BPI-CM5 pour allumer une LED et lire un bouton, une première étape essentielle pour l'interaction physique.

Objectifs

Ce tutoriel vous guide dans la manipulation des broches d'Entrée/Sortie (GPIO) de votre Banana Pi BPI-CM5. Le module, bien que compact (55x40 mm), offre une flexibilité remarquante grâce à ses connecteurs Board-to-Board compatibles avec le Raspberry Pi CM4. Nous allons configurer une sortie pour allumer une LED et une entrée pour détecter l'appui d'un bouton. Cette pratique est fondamentale pour comprendre comment votre système Linux (Ubuntu, Debian ou Armbian) interagit avec le monde physique via le SoC Amlogic A311D2.

Matériel nécessaire

Étapes

  1. Préparation du système : Connectez-vous en SSH ou via le port série. Assurez-vous que votre système est à jour avec sudo apt update && sudo apt upgrade. Installez les outils de contrôle GPIO si nécessaire : sudo apt install python3-rpi.gpio (bien que spécifique aux Pi, les bibliothèques libgpiod sont souvent plus adaptées aux architectures Amlogic, vérifiez la disponibilité avec sudo apt install python3-gpiod ou utilisez le sysfs directement).
  1. Identification des broches : Consultez la documentation de votre carte porteuse. Les connecteurs B2B exposent les broches selon le standard Raspberry Pi. Repérez une broche configurée en GPIO (par exemple, GPIO17) pour la sortie et une autre (GPIO27) pour l'entrée.
  1. Câblage de la LED (Sortie) :
  1. Câblage du bouton (Entrée) :

``bash # Exporter la broche 17 (numérotation BCM peut varier, vérifiez avec gpioinfo) echo 17 > /sys/class/gpio/export echo out > /sys/class/gpio/gpio17/direction echo 1 > /sys/class/gpio/gpio17/value # Allume la LED sleep 2 echo 0 > /sys/class/gpio/gpio17/value # Éteint la LED ``

  1. Test en ligne de commande (Sysfs) : Pour tester rapidement sans programmation complexe, utilisez le dossier sysfs.

``bash echo 27 > /sys/class/gpio/export echo in > /sys/class/gpio/gpio27/direction # Vérifiez l'état (0 si appuyé grâce au pull-up, 1 sinon) cat /sys/class/gpio/gpio27/value ``

  1. Lecture de l'entrée : Configurez la broche 27 en entrée avec pull-up.

Vérification

Vous devez observer la LED s'allumer et s'éteindre selon les commandes envoyées. En maintenant le bouton appuyé, la commande cat sur la broche d'entrée doit retourner 0. Si rien ne se passe, vérifiez les connexions physiques et assurez-vous d'avoir les droits root (sudo) pour accéder aux fichiers sysfs.

Pour aller plus loin

Une fois les bases maîtrisées, explorez l'utilisation de bibliothèques Python comme libgpiod pour une gestion plus robuste des interruptions (détection d'appui sans boucle d'attente). Vous pouvez également intégrer ces entrées-sorties à des applications utilisant les interfaces avancées du BPI-CM5, comme la capture vidéo via les ports MIPI-CSI ou l'affichage sur les sorties HDMI multiples.

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels