puertos de microcontrolador de drenaje abierto

8

Quiero entender el concepto de puertos de drenaje abierto como el puerto P0 del microcontrolador 8051. ¿Por qué necesitamos conectar resistencias de pull up al puerto P0?

Tengo conocimientos básicos de MOSFET y otros dispositivos electrónicos.

    
pregunta AbKDs

4 respuestas

12

Ignorar los entresijos de cómo funcionan las mosfets. La salida actúa como un interruptor a tierra. No puede producir una señal alta (+ 5V) por sí misma. La resistencia de recuperación se usa de modo que cuando el interruptor está abierto, la salida será alta. Cuando se cierra el interruptor, la salida será baja (0V)

    
respondido por el JIm Dearden
9

Hay dos aplicaciones comunes de drenaje abierto (o colector abierto, en el caso de BJT):

1) Conectando más de una salida a la misma línea. Esto se llama un OR cableado. Por ejemplo, puede tener un pin de restablecimiento normalmente alto en un dispositivo, que se restablece desde un pin del microcontrolador y otra fuente, por ejemplo, un botón pulsador. El pin de reinicio está atado alto con una resistencia de pull-up. El microcontrolador está configurado como una salida de drenaje abierto. El pulsador está atado al suelo cuando se empuja. Si el microcontrolador lleva su salida a 0, o se presiona el botón, el dispositivo se reiniciará.

Tenga en cuenta que cuando el microcontrolador establece su pin de salida en 1, el pin se desconecta de la línea. No está conduciendo la línea ("fuente") con ningún voltaje, por lo que cuando el botón empuja la línea a tierra, no hay cortocircuito.

Debido a que la configuración de OR cableado es muy útil, esta es la razón por la que los pines, como los reinicios en un microcontrolador, las líneas de interrupción, el borrado y la habilitación de las líneas en dispositivos como flip-flops, están todos "bajos activos", lo que significa que normalmente están vinculados alto (de nuevo, a través de una resistencia de pull-up), y cualquiera de los varios dispositivos configurados como de drenaje abierto puede reducirlos. Estas entradas generalmente se designan como activas-bajas con una barra en la parte superior del nombre de la señal, ¡o una inicial! (! CLR), o un signo # que se arrastra (CLR #).

2) Dispositivos de control conectados a diferentes voltajes de alimentación. Supongamos que tiene un relé que requiere 20 mA, pero un voltaje de 5 voltios. Pero la salida de su microcontrolador solo puede hacer que los pines alcancen el voltaje de su fuente de alimentación (VCC) de 3.3v. Con una salida de drenaje abierto, puede conectar un lado del relé a 5 V y el otro al pin de salida del microcontrolador. Cuando la salida del microcontrolador es 1, no pasa nada (nuevamente, actúa como si el pin estuviera desconectado). Cuando se establece en 0, conecta a tierra el lado inferior del relé, completando el circuito y operando el relé. En una aplicación de este tipo, es importante colocar un diodo de "retorno" a través de la bobina del relé para evitar daños al microcontrolador cuando el dispositivo se desactiva.

Para controladores de salida como el ULN2803 (matriz de transistores Darlington), puede conducir cargas conectadas a voltajes de hasta 50 v y controlarlos con una entrada compatible con lógica.

    
respondido por el tcrosley
2

Una salida de drenaje abierto es solo un interruptor abierto conectado a 0V. Para pasar la corriente a través de él, es necesario alimentarlo con una corriente y esto se puede hacer con una resistencia pull-up. Si no pasa corriente al pin, no podrá ver una tensión: -

Aquíhaydosdispositivosquecompartenlamismasalidadedrenajeabierto:observelaresistenciadepull-upa+5V.Dehecho,estecircuitoutilizael"drenaje abierto" para realizar la lógica; si alguna de las puertas NAND está "activada" con 1,1, bajará el BUS a 0V. Así, la lógica entregada al BUS es

INVERSO de BUS = A.B + C.D

Los

MOSFET se utilizan generalmente como dispositivos de drenaje abierto, aunque los BJT regulares también pueden realizar esta función. Una salida de drenaje abierto es una simplificación de una salida CMOS regular: se enciende rápidamente y se vuelve más lenta en el viaje de retorno a + Logic debido a los tiempos de carga de los condensadores parásitos a través de la resistencia de pull-up.

Open collector en wiki es una buena lectura: hace lo mismo que open drain y se menciona en el artículo como Es el pequeño diagrama que se muestra arriba.

    
respondido por el Andy aka
0

1) Para simplificar el primer punto en la respuesta por tcrosley, la ventaja de no proporcionar la resistencia de pull-up dentro de una salida es la capacidad de compartir esa resistencia de pull-up entre muchas salidas. Las salidas se conectan en paralelo y todas se conectan a la resistencia compartida y a tierra.

2) El punto "debajo" de la resistencia (en los esquemas) es el lugar donde la salida combinada es recogida por otras partes del circuito. (Por supuesto, todo podría haber sido al revés con respecto a la tierra y el suministro.)

3) Si no desea recolectar la salida combinada de muchas salidas (y el circuito usa la misma fuente de voltaje en todas partes), entonces no desea utilizar las salidas sin partes de pull-up. De lo contrario, se le proporcionan salidas "incompletas" (de alguna manera), que puede personalizar según sus necesidades.

    
respondido por el abracadabra

Lea otras preguntas en las etiquetas