Circuito ICSP: Vpp (13 V) y Vdd (5 V) en el pin MCLR del microcontrolador Pic

Al conectar ICSP, ¿es seguro conectar Vpp a MCLR mientras que los +5 V de ICSP también van al pin MCLR a través de una resistencia pulldown y Vdd del microcontrolador?

Sospecho que esto no es seguro ya que obtendría 5V y 13V de dos fuentes de voltaje diferentes en el pin MCLR momentáneamente.

¿Cómo se puede diseñar correctamente un circuito ICSP?

Si no está utilizando esa opción MCLR con un botón u otro circuito de reinicio (por ejemplo, otro microcontrolador u oscilador quizás reiniciando su microcontrolador), entonces no necesita configurar ese pin como reinicio. Configúrelo como un pin de entrada deshabilitando MCLR en la palabra de configuración. Esto lo activará siempre y podrá conectar su Vpp sin preocupaciones.

Respuestas (2)

De la Guía de programación en serie en circuito de Microchip :

ingrese la descripción de la imagen aquí

Entonces el diodo proporciona V D D al pin MCLR cuando el conector ICSP no está conectado o cuando V PAG PAG no está presente Debe ser un diodo Schottky.


Resistencia en línea Vdd.
Se agregó RM: Steven puede editar como/si lo desea:

La razón no es 100% segura, pero tenga en cuenta que se muestra como una resistencia o una conexión directa.
En la página 2-2 de la hoja de datos dice:

  • Interfaz al programador
    La longitud del cable entre el programador y el circuito también es un factor importante para ICSP. Si el cable entre el programador y el circuito es demasiado largo, pueden producirse reflejos de señal. Estos reflejos pueden causar momentáneamente hasta el doble del voltaje al final del cable, que fue enviado desde el programador. Este voltaje puede causar un bloqueo. En este caso, se debe utilizar una resistencia de terminación al final de la línea de señal.
Ya veo, ¿cuál es el motivo por el que la resistencia viene de Vdd al segundo pin del conector ICSP? ¿No estaría simplemente conectando Vdd a Vdd? Además, ¿qué hace el condensador? ¿Sería seguro hacer esto sin estos dos componentes?
@Shubham - Solo adivinando: Vdd en la placa y desde el conector pueden diferir ligeramente, y conectarlos sin resistencia provocaría una alta corriente de cortocircuito. La resistencia evita esto.
@stevenvh: vea mi adición a su respuesta. Edite como/si lo desea.

Sí, es perfectamente normal tener una resistencia en MCLR a Vdd, pero también aumentar MCLR (esta vez en su función Vpp) al voltaje de programación durante la programación. Usualmente uso 20 kΩ para eso. Es una buena compensación entre tener una impedancia lo suficientemente baja como para no captar ruido, pero lo suficientemente alta como para que la mayoría de los programadores no tengan problemas para llevar la línea al nivel Vpp. Tenga en cuenta que puede ser de hasta 13 V en algunos PIC.

También debe considerar que la corriente se descarga en el riel de suministro de 5 V. Con 13 V para Vpp, suministro de 5 V y resistencia pull-up de 20 kΩ, 400 µA irán al riel de 5 V. Si el resto del circuito consume al menos eso, entonces no habrá problema. La fuente de alimentación solo suministrará 400 µA menos. Si es solo el PIC, es posible que deba considerar sujetar el suministro de 5 V, usar una resistencia pullup más alta o colocar un diodo en serie con la resistencia. En la práctica, la mayoría de las veces, 400 µA es lo suficientemente pequeño como para que otras partes absorban la corriente, y la mayoría de los PIC más nuevos usan un voltaje de programación más bajo de todos modos.

Para obtener más antecedentes y desmitificación general del diseño de la programación en circuito, consulte mi artículo en http://www.embedinc.com/picprg/icsp.htm .