¿Cómo proteger un MAX232 de los altos voltajes de programación PIC?

2

Esta pregunta se deriva de esta Hilo de revisión de la Junta , pensé que sería preferible convertirlo en una pregunta independiente.

Quiero poder restablecer un PIC de forma remota utilizando el único puerto de comunicación de la placa, el RS232. Pero también quiero poder programarlo con un ICD3 (sin cargador de arranque), y este programador aparentemente aplica alto voltaje (0-13V?) A / MCLR, lo que sin duda matará al MAX232 (MAX233 de hecho).

¿Sería el camino a seguir un schottky entre R2 fuera del MAX233 y 5V? La hoja de datos dice que el voltaje máximo absoluto en ese pin es 5.3V, lo encuentro un poco apretado para un schottky. ¿Alguna sugerencia más robusta? No quiero usar un puente ya que esto podría ser olvidado ...

Esquema:

Gracias

Editar:

¿Funcionaráesto?

simular este circuito : esquema creado usando CircuitLab

El Zener es un SOBRE SEMI BZX84B5V1LT1G que tiene una tolerancia de 5-5.2V a 5mA y estoy permitiendo 4.4mA max. El MAX233 impulsará el pin / MCLR a 0,41 V, donde hasta 1 V es un nivel bajo. El 20kOhm pull up proviene de una de las respuestas de Olin aquí .

    
pregunta user42875

2 respuestas

1

Si coloca un diodo Zener de 5.1 V en el pin 20 y tierra (0 V) del MAX233A, se protegerá, pero luego habrá 70 mA que fluyen a través de R3 durante la programación y esto puede ser demasiado, aumente R3 y R4 en 10x. La funcionalidad de reinicio aún debería estar bien, pero ahora, cuando se programan solo 7 mA fluye al diodo zener.

simular este circuito : esquema creado usando CircuitLab

    
respondido por el Andy aka
2

Puede conectar el MAX233 a la MCU utilizando un arreglo Open Drain o Open Collector .

El MAX233 activa un transistor (NPN BJT o MOSFET de canal N) que, a su vez, baja el pin MCLR.

simular este circuito : esquema creado usando CircuitLab

Esta es también una de las formas recomendadas de activar una línea de reinicio desde múltiples fuentes: una disposición por cable o con dispositivos de drenaje abierto.

Tenga en cuenta que la lógica del reinicio se invierte desde la perspectiva del MAX223; debe configurar la salida HIGH para que MCLR LOW.

    
respondido por el Majenko

Lea otras preguntas en las etiquetas