20 min. El problema real: dos AS5600 tienen la misma dirección fija (0x36) y no se puede cambiar. Sin mux, no hay dos sensores de RPM.

Tres formas de expandir

Técnica Chip Qué expande Costo real
Mux I²C TCA9548A 8 buses I²C aislados, resuelve direcciones duplicadas una escritura de control por cambio de canal + tiempo de establecimiento
Mux analógico CD74HC4067 16 señales analógicas a 1 ADC divide la frecuencia de muestreo entre N canales; suma R_on en serie
Expansor GPIO PCF8574 / MCP23017 8–16 entradas/salidas digitales vía I²C latencia de I²C — no sirve para señales rápidas ni interrupciones críticas

Frecuencia efectiva: el cálculo que decide todo

Multiplexar no multiplica el ancho de banda, lo reparte:

f_efectiva_por_canal = f_total_del_ADC / n_canales

Y hay que restar el tiempo de establecimiento:

t_ciclo = n_canales × (t_conmutación + t_establecimiento + t_conversión)

Con 4 potenciómetros de suspensión en un CD74HC4067, si se necesitan 100 Hz por canal el ADC tiene que sostener 400 muestras/s más el overhead de conmutación. Si no llega, hay que bajar la frecuencia o usar canales dedicados.

Tiempo de establecimiento — el error clásico

Al cambiar de canal, la capacitancia del mux más la del cable no se cargan al instante. Si el ADC muestrea de inmediato, lee un residuo del canal anterior. El síntoma es venenoso: los valores se ven razonables pero el canal 2 "se contagia" del canal 1. No es ruido, es correlación.

Regla: esperar al menos 5τ después de conmutar, con τ = R_fuente × C_entrada. En la práctica, decenas de microsegundos — y hay que medirlo, no adivinarlo.

Pull-ups en I²C con mux

Cada rama del TCA9548A necesita sus propios pull-ups. Poner un solo par en el maestro deja las ramas flotando; poner 8 pares de 4.7 kΩ en paralelo hunde la línea. Se calcula por rama según la capacitancia y el número de dispositivos.

Bibliografía