¿Cómo funciona una compuerta de colector abierto mediante el uso de resistencias?

0

Entiendo que el propósito es conducir varias señales a un cable bidireccional. Los dos estados lógicos son 0 o flujo (alta impedancia). Sin embargo, ¿cómo entran en juego las resistencias para los estados lógicos?

    
pregunta user2874945

1 respuesta

1

Las entradas de drenaje abierto (o de colector abierto, en el caso de BJT) permiten la conexión de más de una salida a la misma línea. Esto se llama un OR cableado. La línea está atada con una resistencia de pull-up.

Esta es la razón por la que los pines, como las líneas de restablecimiento e interrupción en un microcontrolador, entre otros, están "activos en nivel bajo"; es decir, cuando no están activadas (lógica 1) están en un estado de alta impedancia, desconectando efectivamente el pin desde la linea Dado que ninguna de las líneas de salida impulsa la línea, se necesita una resistencia de pull-up para mantener la línea que va al microcontrolador en un estado alto o lógico 1. Luego, cualquiera de los dispositivos puede bajar la línea (lógica 0) sin afectar a los otros dispositivos. (Si un dispositivo activa la línea alta, y otro dispositivo activa la línea baja, tendrá un cortocircuito).

Dichas entradas generalmente se designan como activas-bajas con una barra en la parte superior del nombre de la señal (\ $ \ small \ overline {\ text {INT}} \ $). En sistemas donde eso no es posible, otros métodos son usar un signo de exclamación inicial (! INT), o una barra diagonal (/ INT), o un signo # de seguimiento (INT #). En el programa de captura esquemática Eagle, si prefieres un símbolo con! el programa lo convertirá en una barra.

Enelcircuitoanterior,haytresdispositivosquepuedengenerarunainterrupción.Cuandoningunadelasinterrupcionesestáactiva(lógica0),todaslassalidasestánenunestadodealtaimpedanciaylaaltatensión(VCC)sesuministraalaentradadelmicrocontroladoraladerechaporlaresistenciadepull-upR1.Cuandounadelaslíneasdeinterrupciónestáactivada,controlalasalidabaja(lógica0),quesealimentaalpindebajainterrupciónactivadelmicrocontroladorygeneraunainterrupción.

Sielmicrocontroladornecesitadeterminarlafuentedelainterrupción,lassalidassepuedenaislarcondiodoscomosemuestraacontinuación,ycadaunadeellasvuelveaunpinindividualenelmicrocontrolador.(Laotraforma,queseahorrautilizandolospinesadicionalesenelmicrocontrolador,esparaqueextraigalosregistrosdecadadispositivo).

Las resistencias pull-up también se usan en las líneas I2C, como se muestra a continuación:

Unodelos"nodos" suele ser un microcontrolador, y los otros nodos son dispositivos. Sin embargo, todos utilizan esencialmente el mismo circuito. I2C permite que más de un maestro (por ejemplo, un microcontrolador) se conecte al mismo bus (modo multi-maestro).

Los pull-ups son necesarios porque tanto el cable del reloj (SCL) como el cable de datos (SDA) son bidireccionales, por lo que tiene más de un dispositivo capaz de conducir la misma línea. (SCL debido al alargamiento del reloj del esclavo y SDA porque la misma línea se usa para entrada y salida).

Cuando ningún dispositivo conduce las líneas SCL o SDA, todos los MOSFET están apagados. Cuando uno de los dispositivos está afirmando la línea, uno de los MOSFET está activado, lo que hace que la línea sea baja.

    
respondido por el tcrosley

Lea otras preguntas en las etiquetas