🛠 Configuración de Entradas/Salidas Digitales (DIO) en la BIWCL-PAT
Objectifs
Este tutorial tiene como objetivo dominar la interfaz de Entradas/Salidas Digitales (DIO) de la placa mono-placa BIWCL-PAT. A diferencia de los GPIO clásicos de los microcontroladores, esta placa industrial expone un header DIO de 8 bits dedicado, ideal para conmutar señales lógicas en entornos de automatización. Configuraremos estos pines para encender un LED (salida) y leer el estado de un interruptor (entrada) bajo Linux, una habilidad clave para integrar periféricos simples sin usar USB o serie.
Matériel nécessaire
- Placa BIWCL-PAT (BIOS bloqueado para acceso a periféricos integrados).
- Fuente de alimentación DC 12V (en rango 9-24V).
- Un botón pulsador momentáneo (NA).
- Un LED con resistencia limitadora (o módulo LED industrial).
- Cables Dupont macho-hembra.
- Monitor conectado vía HDMI o DisplayPort para terminal Linux.
- SO: Ubuntu 24.04 LTS (preinstalado o vía USB).
Étapes
- Identificación del Header: Localice el conector DIO de 8 bits en la placa. Suele ser un conector de pines macho (2x4 o 1x8) cerca de los puertos serie. Consulte la documentación técnica específica para identificar GND, 3.3V/5V (si están disponibles) y las 8 líneas IO. Tenga en cuenta que los niveles lógicos pueden requerir adaptadores si controla cargas externas de 24V.
- Cableado de Salida (LED): Conecte el cátodo del LED a un pin GND del header DIO. Conecte el ánodo del LED (a través de la resistencia) al pin DIO_OUT_1. Asegure la polaridad correcta.
- Cableado de Entrada (Botón): Conecte un pin del botón pulsador a un pin GND. Conecte el otro pin al pin DIO_IN_1. Use una resistencia de pull-up interna si el driver Linux lo permite, o una resistencia externa de pull-up a 3.3V/5V para evitar estados flotantes.
- Acceso via sysfs (Linux): Abra una terminal. Las interfaces DIO suelen exponerse vía
/sys/class/gpio. Identifique los números GPIO correspondientes mediantedmesg | grep gpioo la tabla de asignación del fabricante. Exporte los pines si es necesario:
echo <num_gpio_salida> > /sys/class/gpio/export
echo <num_gpio_entrada> > /sys/class/gpio/export
- Configuración de Direcciones: Defina el pin de salida en modo escritura y la entrada en modo lectura:
echo out > /sys/class/gpio/gpio<num_gpio_salida>/direction
echo in > /sys/class/gpio/gpio<num_gpio_entrada>/direction
- Prueba de Salida: Encienda el LED escribiendo 1 en el archivo value:
echo 1 > /sys/class/gpio/gpio<num_gpio_salida>/value
El LED debe encenderse. Escriba 0 para apagarlo.
- Lectura de Entrada: Presione el botón y lea el estado:
cat /sys/class/gpio/gpio<num_gpio_entrada>/value
El estado debe alternar entre 0 y 1 según la configuración de pull-up/down.
Vérification
El LED debe encenderse y apagarse bajo comando. El valor leído en el pin de entrada debe alternar al presionar el botón. Si falla, verifique las conexiones físicas, la alimentación de la placa y asegúrese de que el módulo del kernel apropiado (ej: gpio-bios o driver Intel específico) esté cargado (lsmod | grep gpio).
Pour aller plus loin
Para aplicaciones críticas, evite el polling cat y use interrupciones vía epoll o librerías como libgpiod. Para señales analógicas o protocolos complejos, explore los puertos serie RS232/422/485 integrados o las interfaces I2C/SPI si están expuestas mediante headers específicos o adaptadores M.2.
Otros tutoriales para esta placa
- BIWCL-PAT: Primeras conexiones y puesta en marcha
- Dominar las E/S en la BIWCL-PAT
- Configuración avanzada: BIOS, NVMe y triple pantalla en BIWCL-PAT
- Dominar E/S avanzadas en BIWCL-PAT: GPIO, sensores y pantalla
- Desplegar una estación de automatización industrial en BIWCL-PAT
- Configurar las tres salidas de vídeo en BIWCL-PAT