Estoy planeando usar un expansor de puerto basado en i2c (anteriormente estaba usando el GPIO de atmega328P) para entradas y salidas. En una búsqueda digital, encontré MCP23008, MCP23009 y MCP23017 como posibles reemplazos. De estos tres, solo el MCP23017 es push-pull. Otros dos son de drenaje abierto. Tengo la certeza de que push pull puede ser fuente activa y sumidero y el drenaje abierto no puede ser fuente activa. No estoy muy seguro de cómo afecta esto a mi caso de uso y, por lo tanto, necesito un consejo experto.
Aquí está el caso de uso:
Se supone que SS1 y TRIAC1 van en GPIO del puerto de expansión. Se supone que SS1 debe leerse digitalmente y TRIAC1 debe manejarse ALTO o BAJO.
¿Por lo tanto, importa si uso un drenaje abierto o un tipo de empuje? Si es así, ¿cuál es la mejor opción? Además, quiero mantener el componente a un mínimo. Ex: quiero conducir el controlador triac directamente por el expansor de puerto en lugar de usar otro transistor. Por lo tanto, ten esto en cuenta también.
Nota: Ambos circuitos se replicarán de 4 a 10 veces en la PCB y, por lo tanto, el requisito de expansión de puerto.