¿Pullup o direct drive cuando se manejan entradas / reinicios activos bajos?

1

Las entradas de restablecimiento activo-bajo parecen ser un remanente de la lógica TTL donde el flanco descendente fue más rápido que el flanco ascendente, por lo que se decidió que el flanco descendente era más importante para aumentar la frecuencia máxima posible.

No estoy seguro de cuán relevante es esto con el CMOS moderno, pero aún así es muy fácil encontrar chips que tienen un restablecimiento bajo activo (el diseño de mi placa de circuito, que usa algunos chips 74XX de la vieja escuela, todos tienen un restablecimiento bajo activo). Incluso el microcontrolador está activo bajo reinicio). Supongo que hay razones más allá de la tecnología utilizada en cuanto a por qué esto todavía prevalece (como la baja activa se restablecería en una condición de apagón, los chips se reiniciarían en el encendido, la tradición, etc.).

Algo en lo que realmente no he pensado hasta ahora, es cuál sería el mejor diseño al manejar una lógica baja activa (específicamente, se reinicia en otros chips) desde un microcontrolador. ¿Es mejor:

A. Repita los reinicios directamente desde el microcontrolador, con un 1 por un período de tiempo indefinido, o

B. Agregue una resistencia pullup a Vdd y use el microcontrolador para bajar brevemente a 0

La opción B agrega más espacio y costo (BOM), pero supongo que sería más estable, ya que se vincula de forma pasiva a la posición de no restablecimiento, y utiliza menos consumo de energía estática (incluso si es insignificante) en el uC ya que la salida sería alta solo por un breve parpadeo. También trivial, pero la programación también sería un poco más fácil (Restablecer = 1 restablece la línea). La opción A es más simple pero, pero un reinicio involuntario en esa línea causaría que el sistema fallara. Se necesitaría un ciclo de alimentación completo para recuperar el sistema.

También pienso en qué posición me gustaría estar mejor con mi diseño si la línea de restablecimiento también fallara de forma permanente: si una resistencia lo arrastraba, el sistema podría seguir siendo en su mayoría funcional, pero si era solo el microcontrolador que controlaba la salida, todo se atascaría en el reinicio (completamente no funcional). Sin embargo, nunca he oído hablar de un solo pin que falla en un microcontrolador.

Para una línea activa de datos baja, nunca consideraría la opción B. No hay ninguna justificación para agregar tantos pullups.

Supongo que no hay una diferencia práctica entre los dos (es decir, los microcontroladores son lo suficientemente confiables para conducir un 1 sólido durante largos períodos de tiempo sin fallos), por lo que debería usar A para ahorrar costos y espacio. ¿Es alguna opción claramente mejor?

    
pregunta BB ON

2 respuestas

1

Esencialmente, cualquiera de los dos funciona; A es probablemente mejor, B es más flexible.

A impulsará la línea de reinicio a '1' más rápido, lo que podría ser un problema en una tabla muy grande.

B permite la opción de agregar otros medios para restablecer la activación: interruptor oculto + clip de papel, monitor de apagón, temporizador de vigilancia, etc. Probablemente ni siquiera cueste el espacio de la placa para una resistencia, ya que muchos microcontroladores tienen software configurable resistencias pullup en cada pin.

    
respondido por el Brian Drummond
0

Sin partes específicas, puede ir con lo que sugiera el fabricante, ya sea de la sección específica de la hoja de datos, el diseño de referencia de la "aplicación típica" o el esquema de la placa de evaluación. La hoja de datos indicará si el pin debe ser colector abierto / drenaje abierto o no.

    
respondido por el Passerby

Lea otras preguntas en las etiquetas