urriellu.net => Proyectos => Electrónica => pic³prog

pic³prog es un programador para todos los microcontroladores de Microchip. Esto incluye a los PICs de 8 y 16 bits así como los dsPICs. La mayoría pueden programarse directamente desde la placa del programador, y todos deberían poder programarse directamente en el circuito donde estén montados usando ICSP (si el circuito lo soporta). Los modelos soportados dependen del programa que se utilice para programarlos.

La mayoría de programadores utilizan el puerto serie, pero está obsoleto, muchos ordenadores ya no lo incluyen, y además las conexiones pueden variar entre distintos fabricantes. La mejor alternativa es el puerto USB pero el programador requeriría él mismo incluir un microcontrolador y obviamente no se puede programar un microcontrolador sin tener el programador ya hecho. Por lo tanto la mejor solución es utilizar el puerto paralelo.

Este programador está basado en el EPIC, un programador propietario de la empresa Melabs, bastante caro y no incluye todos los zócalos ni adaptador para ICSP, deben comprarse por separado. En cambio pic³prog lo incluye todo.

Esquema electrónico

esquema electrónico del programador de picsJ1 es una hembra DB25 acodada, por lo que se necesita un alargador macho-macho para conectarlo al ordenador. Este cable es difícil de encontrar, así que J1 podría sustituirse por un macho DB25.

conectores de alimentación e ICSP, y LED de alimentaciónzócalos de programación 

El circuito requiere alimentación externa de 5V para los circuitos integrados y 13.5V (pueden ser 12V) para poner el microcontrolador en modo de programación.

Incluye dos LEDs: uno que indica cuándo el circuito está siendo alimentado, y otro que indica cuándo se está programado o leyendo un microcontrolador.

Con los zócalos incluidos pueden programarse todos o casi todos los PICs de 8 bits. No utilicé un zócalo ZIF porque es mucho más caro y menos útil que ICSP.

 

Conexión al ordenador

En Windows pueden utilizarse melabs Programmer o WinPicProg.
En Linux pueden utilizarse PiKdev, Piklab, Odyssey...
y en general, cualquier programador software que soporte EPIC o hardware genérico que te permita configurar la distribución de los pines del puerto paralelo, usando la siguiente distribución:

  • Pin 2 (D0) - Salida de datos
  • Pin 3 (D1) - Señal de reloj
  • Pin 4 (D2) [invertido] - Vdd
  • Pin 5 (D3) [invertido] - Vpp
  • Pin 6 (D4) - Vpp/2
  • Pin 10 (ACK) - Entrada de datos

AVISO: El jumper P3 debe estar conectado al usar cualquier programador, y desconectado usando PiKdev.

 

Diseño de la placa perforada

componentes, vista superiorpistas en primer plano, vista superiorpistas, vista inferiorcomponentes y pistas, vista inferiorcomponentes y pistas, vista superior 

 

Montaje de la placa perforada

placa perforada virgenplaca perforada virgenmodificando la hembra DB25modificando la hembra DB25colocando la hembra DB25colocando la hembra DB25colocando la hembra DB25colocando la hembra DB25estañando componentescolocando componentescolocando componentesestañando componentesestañando componentesprimer plano de las pistasestañando componentes 

La posición de los pines de la hembra DB25 no coincidía con los agujeros de la placa perforada, así que tuvo que ser modificada.

 

Zócalo adaptador

Para ahorrar espacio sobre la placa perforada sólo se colocó el zócalo de 40 pines, y se construyeron adaptadores para otros zócalos.

La base de plástico de los postes debe ser cambiada de posición para poder estañar los postes.

modificando los posteszócalo adaptadorzócalo adaptadorzócalo adaptadorzócalo adaptador 

 

Cable de alimentación

cable de alimentacióncable de alimentacióncable de alimentación conectado 

El hilo negro es masa, el del centro (rojo) son 5V y el naranja del extremo son 12-13,5V.

 

Diseño del PCB

PCB del programador de PICsEl diseño es a doble cara.

Le faltan los planos que cubran de cobre toda la placa.

Las letras se ven al revés porque la imagen muestra la vista superior, y las letras están en la cara de abajo, por lo que desde arriba (si la placa fuese transparente) se verían al revés.

La placa tiene las inscripciones "L³S" y "0x4CB353.net" porque allí es donde iban a ir publicados todos mis proyectos antes de que naciese urriellu.net.

 

Montaje del PCB

cara superior del PCBcara inferior del PCB 

 

Placas terminadas

La placa perforada:
programador de pics en la placa perforadaprogramador de pics en la placa perforadaprogramador de pics en la placa perforadaprogramador de pics en la placa perforada 

La placa perforada con el adaptador puesto:
placa perforada con adaptadorplaca perforada con adaptadorplaca perforada con adaptadorplaca perforada con adaptador 

El PCB:
PCB del programador de PICsPCB del programador de PICsPCB del programador de PICsPCB del programador de PICs