Una ruta no deseada con un microcontrolador apagado

0

Hice un tablero prototipo de adquisición de datos y lo encendí como en el esquema a continuación:

Este es un esquema simplificado.

Hay un puerto USB que proporciona alimentación a toda la placa; un FT230 para la conversión USB-UART; un ST6600 para la funcionalidad del botón inteligente; un LDO-3.3V para alimentar el microcontrolador (PIC32MZ).

Cuando presiono el botón, el ST6600 confirma la señal que activa el LDO-3.3V y, por lo tanto, el microcontrolador.

Pero aquí tengo un pequeño problema: si conecto el cable USB y NO presiono el botón, el LED en la salida del microcontrolador se enciende débilmente. Entonces, noté que el problema se debe a las señales RX y TX que desde el FT230 están conectadas al microcontrolador. Estas señales van a 3.3 V cuando el USB está conectado y, incluso si el microcontrolador está apagado, hay una corriente que fluye en su interior y se apaga en la salida del LED; Incluso puedo leer un 1.8V en la red de 3.3V del circuito.

¿Es este un comportamiento normal (tal vez me equivoqué con este esquema) y, de ser así, alguien me puede explicar por qué de la corriente de salida y la 1.8V?

    
pregunta thoraz

1 respuesta

2

A excepción de los 5 tolerantes a V, los pines de E / S de MCU tienen un circuito de protección interno. Consiste en un diodo entre el pin de E / S y 3V3 (A en E / S, K en 3V3) y otro diodo entre el pin de E / S y GND (A en GND, K en I / O). La idea es que los voltajes por encima de algo como 3.7 V hacen que el diodo superior conduzca y disipe la energía en el riel 3V3, mientras que el voltaje por debajo de alrededor de -0.4 V causa que el diodo inferior conduzca y disipe la energía a GND. Protege al IC contra transitorios y otros impulsos de energía limitada y este circuito es común en los IC lógicos.

simular este circuito : esquema creado usando CircuitLab

En su caso, el microcontrolador no está encendido pero el USB-UART IC está impulsando una E / S del microcontrolador con su voltaje de salida RXD. Este voltaje es alto cuando RXD está inactivo, lo que para su UART probablemente sea mucho más frecuente en este momento. Así que RXD conduce el riel 3V3 del microcontrolador a través del diodo superior de su pin RB5. Esto coloca su microcontrolador 3V3 a un voltaje en el riel intermedio muy por debajo del nivel operativo y consumiendo más corriente de la que RXD puede suministrar sin problemas. Me atrevería a decir que resulta en un microcontrolador semi-funcional que conduce erróneamente su salida de LED débilmente alta.

Si conecta RXD al microcontrolador como se muestra a continuación, no debería tener más problemas.

(Si tengo los pines IC USB-UART denominados al revés, el texto anterior espera que RXD sea el pin 'USB recibe datos' y, por lo tanto, RXD es una salida de ese IC).

simular este circuito

    
respondido por el TonyM

Lea otras preguntas en las etiquetas