Acoplando un LED al pin Rx de PIC

13

Necesito alguna forma de saber si el microcontroller ( PIC ) está recibiendo (o transmitiendo) algún dato. Así que pensé en mantener un LED separado para que parpadee cuando ocurra cualquier transferencia de datos.

Pero necesito saber cómo adjuntar este LED . ¿Está bien adjuntar directamente un LED a PIC s Tx (y Rx ) pines? Quiero decir, ¿afectará de alguna manera a la transferencia de datos (como al eliminar el voltaje, etc.)?

    
pregunta Anubis

3 respuestas

14

(Al menos algunos) Los PIC no pueden conducir mucha corriente (*), pero también para el pin RxD es mejor usar un transistor para controlar el LED, ya que evitará cargar el transmisor en el otro extremo (probablemente un MAX3232 o similar?).

Conectelaentrada"Q" a la línea TxD / RxD. Un transistor de propósito general típico tendrá una ganancia de aproximadamente 100, entonces 1 mA de corriente de base es suficiente para obtener 20 mA de corriente de colector.

Para un bus de 5 V y una fuente de alimentación:
elija \ $ R_B \ $ = 3.9 kΩ, entonces la corriente base será (5 V - 0.7 V) / 3.9 kΩ = 1.1 mA. Para limitar la corriente del colector a 20 mA (indicador LED típico) \ $ R \ $ debe ser (5 V - 2 V) / 20 mA = 150 Ω.

Para un bus de 3.3 V y una fuente de alimentación, use las mismas ecuaciones, reemplazando 5 V por 3.3 V, entonces sus valores de resistencia serán 2.2 kΩ y 47 Ω resp.



Un MOSFET como AndrejaKo sugiere es una buena alternativa, pero asegúrese de tener un tipo de puerta de nivel lógico , con un voltaje de umbral de puerta máximo algo por debajo del voltaje del bus. (Hay son FET de compuerta de nivel lógico donde puede ser tan alto como 4 V y entonces no obtendrá suficiente corriente de drenaje con un voltaje de bus de 3.3 V). La verdadera ventaja del FET es que casi no necesita ninguna unidad actual, pero como solo necesitamos un mA para el BJT, tampoco tendremos ningún problema con eso.

(*) Este controlador PIC aleatorio especifica una caída de 700 mV solo en Corriente de salida de 3 mA, que es una resistencia de salida de 230 Ω. Un LED de 2 V accionado directamente desde una salida de 3.3 V reducirá la salida en 1 V a solo 4 mA. La mayoría de los indicadores LED están especificados para 20 mA.

    
respondido por el stevenvh
10

No, no desea conectar el LED a través de un transistor de interruptor de lado bajo como lo han mostrado otros. En el caso normal, el nivel de inactividad de ambas líneas es alto, lo que resultaría en que el LED se ilumine la mayor parte del tiempo. Será muy difícil notar que ocasionalmente se pone un poco más oscuro. Lo que desea es que el LED esté encendido solo cuando la línea está en el estado activo, que es bajo. Aquí hay un circuito simple:

El transistor se usa en la configuración del seguidor de emisor, lo que elimina la necesidad de una resistencia de base y también utiliza la corriente de base mínima posible para la corriente de LED resultante. Cuando la línea digital se agota, el emisor estará a unos 700 mV. Considerando un LED verde normal que cae aproximadamente 2.1 V, que deja 2.2 V a través de R1. 2.2V / 120Ω = 18 mA, que está justo por debajo del máximo de 20 mA, el T1-3 / 4 típico y muchos otros LED comunes están clasificados para.

Este es un caso en el que desea maximizar la salida de luz LED, lo que significa que debe ejecutarse a su máxima corriente. La línea bajará durante períodos cortos, por lo que desea que ese breve tiempo sea lo más visible posible. Si eso no funciona, necesitará algún tipo de estiramiento de pulso, pero intente esto primero.

Si está utilizando un suministro de 3.3 V, ajuste R1 en consecuencia. 3.3V - 2.1V - 700mV = 500mV a través de R1. 500mV / 20mA = 25Ω. Desea dejar algo de margen, por lo que el valor estándar de 27 Ω debería funcionar bien. El suministro de 3.3 V es aproximadamente el mínimo en el que desea utilizar la configuración del seguidor de emisor.

    
respondido por el Olin Lathrop
5

No debe intentar conectar el diodo directamente al pin, ya que definitivamente afectará el funcionamiento del pin. En su lugar, intente utilizar un mosfet de nivel lógico para controlar el LED. Conecte el pin de la puerta del MOSFET al pin Rx y el drenaje al LED y una resistencia.

Ignora el número de pieza que se muestra en el esquema. BS170 sería mucho más barato y funcionaría bien para este propósito.

    
respondido por el AndrejaKo

Lea otras preguntas en las etiquetas