Files
quibot/raspi/pins.py
2026-06-18 13:45:32 +02:00

85 lines
1.6 KiB
Python

"""
pins.py — Definició de pins GPIO (BCM) de la Raspberry Pi Zero 2W.
Equivalent a io.h del codi Arduino/ESP32.
Tots els números fan referència a la numeració BCM.
"""
# ==================
# MOTORS
# ==================
# Servo d'expulsió de blocs
EN_SERVO = 9
SERVO_PWM = 10
# Motor pas a pas xeringa
STEP_SY = 8
DIR_SY = 5
# Motor pas a pas roda dreta
STEP_R_W = 25
DIR_R_W = 23
# Motor pas a pas roda esquerra
STEP_L_W = 7
DIR_L_W = 11
# Enable motors de rodes (compartit)
EN_W = 6
# Motor pas a pas braç dret
STEP_R_A = 3
DIR_R_A = 4
# Motor pas a pas braç esquerre
STEP_L_A = 13
DIR_L_A = 0
# Enable motors de braços (compartit)
EN_A = 21
# ==================
# SENSORS
# ==================
# Bus I2C principal — VL53L0X (distància) i PAJ7620U2 (gestos), compartit
SDA_DIST = 2
SCL_DIST = 1
SDA_GEST = SDA_DIST # mateixa línia
SCL_GEST = SCL_DIST # mateixa línia
# INT_GEST no connectat a la PCB — el driver usa polling
# Bus I2C sensor de color TCS34725 (bit-bang)
SDA_COL = 22
SCL_COL = 27
# Final de carrera xeringa (efecte Hall)
END_SY = 12
# Final de carrera braç dret (efecte Hall)
END_RA = 16
# Final de carrera braç esquerre (efecte Hall)
END_LA = 17
# Sensors seguidors de línia (TCRT5000)
LINES_R = 14
LINES_L = 15
# ==================
# DISPLAY
# ==================
# Dades matriu LED 8x8 RGB WS2811 (2x ull)
LED_DATA = 26
# ==================
# ÀUDIO (afegit per company, no usat pel robot)
# ==================
# I2S — amplificador MAX98357A + micròfon SPH0645
I2C_BCLK = 18
I2C_LRCLK = 19
AMP_DIN = 24
MIC = 20