Figure 1 - Schéma de l'adaptateur 12F

Figure 1 – Schéma de l’adaptateur 12F

Le programmateur sur port parallèle a été réalisé initialement pour charger le firmware du fréquencemètre sur PIC 16F84. Le PIC s’insère dans le connecteur ZIF pour cette opération. Pour programmer la série des petits processeurs 12F il me faut maintenant un adaptateur ad hoc. C’est tout naturellement que l’adaptateur va s’insérer en lieu et place du 16F84. La figure 1 ci-contre montre le schéma de l’adaptateur. Les 5 connexions nécessaires à la programmation sont : Vdd (+5V), Vss (ground), Vpp (tension de programmation +13V), CLOCK, DATA. Pour s’assurer de la bonne connexion de l’adaptateur j’ai ajouté une petite LED et sa résistance de 1K sur Vdd.

1. Réalisation

Le circuit est réalisé  sur une plaque PCB FR4 pastillée étamée à trous métallisés double face de 4x6x0,16 cm. D’une face, figure 2 ci-dessous, sont soudées 2 barrettes sécables mâles droites de 4 pôles au pas de 2,54mm destinées à s’enficher sur le connecteurs ZIF sur les broches 4 à 7 et 12 à 15 du 16F84.

Figure 2 - Adaptateur face ZIF

Figure 2 – Adaptateur face ZIF

De l’autre face, figure 3 ci-dessous, sont soudées 2 barrettes de connexion sécables femelles rondes de 4 pôles au pas de 2.54mm destinées à recevoir le PIC 12F683 etc..

Figure 3 - Adaptateur face 12F...

Figure 3 – Adaptateur face 12F…

Comme vous pouvez le constater il reste beaucoup de place sur cette petite plaque qui pourra être utilisée pour s’adapter à une autre série de PIC. La dernière photo montre le programmateur en action muni de l’adaptateur.

Figure 4 - Programmateur + adaptateur 12F...

Figure 4 – Programmateur + adaptateur 12F…

2. Gestion de l’algorihme « Vpp before Vdd »

Pour programmer le 12F683, la tension Vpp doit être appliquée au moins  5us avant Vdd dans le cas de l’utilisation du mode INTOSC et du mode internal MCLR. Ce choix est fait en sélectionnant les bits du registre de configuration CONFIG. On se reportera utilement à la documentation de Microchip 41204G et particulièrement au chronogramme figure 3-1 du chapitre 3.

Mon programmateur a été conçu à l’origine pour le 16F84 du fréquencemètre et ne gère par cette séquence. Il est possible de programmer une première fois le 12F683. Il est ensuite impossible de le reprogrammer. Impossible me direz-vous ! Je ne connais pas ce mot (il me semble que quelqu’un à déjà dit cela avant moi…). En cherchant, j’ai trouvé une astuce pour reprogrammer le PIC sans changer de programmateur. Lorsque je mets sous tension mon programmateur portant le 12F683 qui a déjà été programmé dans le mode INTOSC et MCLRE_OFF, PICPgm regimbe et me dit qu’il ne connaît pas mon programmateur et du même coup ne peut identifier le PIC. Voilà comment je procède pour franchir l’obstacle. Tout en laissant connecté et sous tension mon programmateur, je fais croire à PICPgm que j’utilise un programmateur OLIMEX PIC-PG3 (28 pin – 40 pin) en le sélectionnant dans la liste des programmateurs disponibles. PICPgm se laisse faire et reconnaît le PIC. Je lance uniquement la séquence Erase. Bien entendu pas question d’aller plus loin, il refuse de charger le programme, mais cette étape est suffisante. Je sélectionne ensuite mon programmateur qui est bien reconnu ainsi que le PIC. Je peux exécuter le chargement du programme.

Bien entendu si on utilise l’option MCLR_ON, le 12F683 se reprogramme simplement comme d’habitude.

That’s all folks!

Download  Télécharger le fichier Inkscape du schéma.

Index des articles de la catégorie microcontroleur