Guía de uso de pines GPIO de reCamera Pro
Introducción
Este artículo describe cómo usar los pines GPIO en la reCamera Pro. Aprenderás cómo determinar el pin GPIO objetivo usando la fórmula de cálculo del número de pin, exportar y configurar la dirección y el nivel del pin a través de la interfaz sysfs, y usar scripts de Python para controlar salidas GPIO o leer niveles de entrada.
En la reCamera Pro, solo hay dos GPIO de propósito general expuestos, y su tensión de salida va de 12 V a 21 V (dependiendo de la entrada DC-IN), lo cual no es adecuado para la mayoría de los dispositivos. Sin embargo, puedes reconfigurar los pines UART o CAN de la interfaz de expansión como GPIO de propósito general. Estos pines entregan un nivel estándar de 3,3 V.
Localización de pines GPIO
Primero, consulta las siguientes imágenes para encontrar las posiciones de los pines GPIO que necesitas:

Fórmula de cálculo del número de pin
El número de pin GPIO se calcula usando la siguiente fórmula:
GPIO bank × 32 + offset within bank
El desplazamiento dentro del banco se calcula como: número de grupo × 8 + número de pin dentro del grupo.
Por ejemplo, para GPIO5_A2:
- El número de banco es 5
- El desplazamiento dentro del banco es
0 × 8 + 2 = 2
Por lo tanto, el número de pin es:
5 × 32 + 2 = 162
La correspondencia entre letras de banco y números es la siguiente:
| Letra | Número |
|---|---|
| A | 0 |
| B | 1 |
| C | 2 |
| D | 3 |
| ... | ... |
Exportar un pin GPIO
Primero, necesitas acceder al terminal del dispositivo. Puedes hacerlo de cualquiera de las siguientes maneras:
- Conectarte al dispositivo mediante SSH
- Usar la función de terminal en la WebUI
Navegar a la interfaz sysfs de GPIO
cd /sys/class/gpio
Exportar el pin GPIO
echo 162 > export
Establecer la dirección del pin GPIO
La dirección del pin admite los siguientes dos modos:
- Salida:
out - Entrada:
in(modo predeterminado)
echo out > direction
Establecer el nivel del pin GPIO
El nivel admite los siguientes dos estados:
- Nivel alto:
1 - Nivel bajo:
0
echo 1 > value
Referencia de código en Python
El siguiente script de Python muestra cómo controlar un pin GPIO para que entregue niveles altos y bajos:
import os
import time
GPIO = 162 # The GPIO pin number calculated earlier
GPIO_PATH = f"/sys/class/gpio/gpio{GPIO}"
def write_file(path, value):
with open(path, "w") as f:
f.write(str(value))
# 1. Export the GPIO
if not os.path.exists(GPIO_PATH):
write_file("/sys/class/gpio/export", GPIO)
time.sleep(0.1) # Wait for export to complete
# 2. Set to output mode (use 'in' for input mode)
write_file(f"{GPIO_PATH}/direction", "out")
# 3. Set high level
write_file(f"{GPIO_PATH}/value", 1)
time.sleep(1)
# 4. Set low level
write_file(f"{GPIO_PATH}/value", 0)
time.sleep(1)
# To read the pin level, you can use the following code:
# with open(f"/sys/class/gpio/gpio{GPIO}/value", "r") as f:
# value = f.read().strip()
# print(value)
Recursos
Soporte técnico y debate sobre el producto
Gracias por elegir nuestros productos. Estamos aquí para ofrecerte diferentes opciones de soporte y garantizar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos múltiples canales de comunicación para adaptarnos a distintas preferencias y necesidades.