🛠 Configurer les Entrées/Sorties Numériques (DIO) sur la BIWCL-PAT

BIOSSTAR BIWCL-PAT : SBC industrielle 3,5" Intel Wildcat Lake · intermediaire · Apprenez à piloter le header DIO 8 bits de la carte BIWCL-PAT pour interagir avec des capteurs ou actionneurs industriels.

Objectifs

Ce tutoriel vise à maîtriser l'interface d'Entrées/Sorties Numériques (DIO) de la carte mono-plaquette BIWCL-PAT. Contrairement aux GPIO classiques des microcontrôleurs, cette carte industrielle expose un header DIO 8 bits dédié, idéal pour la commutation de signaux logiques (0-24V selon le circuit de protection) dans des environnements d'automatisation. Nous allons configurer ces broches pour allumer une LED (sortie) et lire l'état d'un interrupteur (entrée) sous Linux, une compétence essentielle pour l'intégration de périphériques simples sans passer par l'USB ou le série.

Matériel nécessaire

Étapes

  1. Identification du Header : Repérez le connecteur DIO 8 bits sur la carte. Il s'agit généralement d'un connecteur à broches mâles de 2x4 ou 1x8 situé près des ports série. Consultez la documentation technique spécifique pour identifier les broches GND, 3.3V/5V (si disponibles en sortie) et les 8 lignes IO. Notez que les niveaux logiques peuvent nécessiter des conditionneurs de niveau si vous pilotez des charges externes à 24V.
  1. Câblage de la Sortie (LED) : Connectez la cathode de la LED à une broche GND du header DIO. Connectez l'anode de la LED (via la résistance) à la broche DIO_OUT_1. Assurez-vous que la polarité est correcte.
  1. Câblage de l'Entrée (Bouton) : Connectez une broche du bouton poussoir à une broche GND. Connectez l'autre broche du bouton à la broche DIO_IN_1. Il est recommandé d'utiliser une résistance de pull-up interne si le driver Linux le permet, ou une résistance externe de pull-up vers 3.3V/5V pour éviter les états flottants.
  1. Accès via sysfs (Linux) : Ouvrez un terminal. Les interfaces DIO sont souvent exposées via le système de fichiers /sys/class/gpio. Identifiez les numéros GPIO correspondants via dmesg | grep gpio ou la table de correspondance du fabricant. Exportez les broches si nécessaire :
echo <num_gpio_sortie> > /sys/class/gpio/export
echo <num_gpio_entree> > /sys/class/gpio/export
  1. Configuration des Directions : Définissez la broche de sortie en mode écriture et l'entrée en lecture :
echo out > /sys/class/gpio/gpio<num_gpio_sortie>/direction
echo in > /sys/class/gpio/gpio<num_gpio_entree>/direction
  1. Test de la Sortie : Allumez la LED en écrivant 1 dans le fichier value :
echo 1 > /sys/class/gpio/gpio<num_gpio_sortie>/value

La LED doit s'allumer. Écrivez 0 pour l'éteindre.

  1. Lecture de l'Entrée : Appuyez sur le bouton et lisez l'état :
cat /sys/class/gpio/gpio<num_gpio_entree>/value

L'état doit changer entre 0 et 1 selon la configuration du pull-up/down.

Vérification

La LED doit s'allumer et s'éteindre sur commande. La valeur lue sur la broche d'entrée doit basculer lors de l'appui sur le bouton. Si cela ne fonctionne pas, vérifiez les connexions physiques, l'alimentation de la carte, et assurez-vous que le module noyau approprié (ex: gpio-bios ou driver spécifique Intel) est chargé (lsmod | grep gpio).

Pour aller plus loin

Pour des applications critiques, évitez le polling cat et utilisez des interruptions (interrupts) via epoll ou des bibliothèques comme libgpiod. Pour des signaux analogiques ou des protocoles plus complexes, explorez les ports série RS232/422/485 intégrés ou les interfaces I2C/SPI si exposées via des headers spécifiques ou des adaptateurs M.2.

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels