Un programmateur de PIC seconde partie et fin



Tous les passionnés d’électronique sont très demandeurs de programmateurs de PIC. Le montage que nous vous proposons dans cet article est celui dont vous rêviez : il est simple et fiable. Cette deuxième et dernière partie vous amènera à la réalisation finale et à l’assemblage des platines.

Le programmateur de PIC que nous vous proposons ici de construire est en mesure de programmer les microcontrôleurs PIC 12F675, 16F628, 16F876 et 16F877. Ce dernier, pour faire l’objet d’un article quelque peu didactique (à notre habitude !) n’en est pas moins un appareil de niveau professionnel. Le système se compose du programmateur EN1580 proprement dit, du bus EN1581, de la platine d’expérimentation EN1582 et bien sûr de l’alimentation EN1203.

Le schéma électrique de l’alimentation
Pour alimenter le programmateur de PIC, le bus, le microcontrôleur et la platine d’expérimentation, il faut une tension alternative de 14 V et deux tensions continues stabilisées de 5,6 V et 12,6 V : l’alimentation EN1203 remplit ce cahier des charges (schéma électrique figure 17). Le transformateur T1 de 25 VA utilisé est à deux secondaires : 14 V et 8 V. La tension alternative de 14 V est redressée par RS1 et stabilisée par le régulateur IC1 L7812 à 12,6 V : en effet, entre sa broche centrale M et la masse nous avons monté en série DS1, ce qui élève la tension nominale du régulateur de 0,6 V. De même, la tension alternative de 8 V est redressée par RS2 et stabilisée par le régulateur IC2 L7805 à 5,6 V : entre sa broche centrale M et la masse nous avons monté en série DS2, ce qui élève sa tension nominale de 0,6 V. Ces élévations de tensions compensent la chute de tension due à la présence de DS1-DS2 (protection contre l’inversion de polarité) à l’entrée de la platine bus (voir figure 4). T1 (figure 17) fournit aussi le 14 V alternatif alimentant le programmateur de PIC (voir figure 2).

Figure 17 : Schéma électrique de l’alimentation EN1203 fournissant toutes les tensions nécessaires pour alimenter les étages programmateur et bus. À droite, les brochages des régulateurs vus de face.


La réalisation pratique de l’alimentation
Pour réaliser cette alimentation, réalisez le circuit imprimé simple face EN1203 dont la figure 18b donne le dessin à l’échelle 1 (ou procurezvous le). Les figures 18a et 19 et la liste des composants vous mettent à l’abri de toute erreur de montage.
Montez le transformateur en dernier et fi xez, à l’aide de petits boulons, les régulateurs sur leurs dissipateurs avant soudures.

Figure 18a : Schéma d’implantation des composants de l’alimentation EN1203. Les régulateurs sont fi xés à leurs dissipateurs par de petits boulons.

Figure 18b : Dessin, à l’échelle 1, du circuit imprimé de l’alimentation.

Figure 19 : Photo d’un des prototypes de la platine d’alimentation. Les liaisons au programmateur EN1580 et à la platine EN1581 doivent être faites seulement après avoir monté le circuit sur le fond horizontal du boîtier plastique (voir fi gure 20).

Le montage dans le boîtier
Pour placer, fi xer et interconnecter les dif férentes platines dans et sur le boîtier plastique avec face avant et panneau arrière en aluminium, les figures 20, 21, 22 et 26 ne vous laisseront aucun doute. Montez l’alimentation sous la demi-coque supérieure à l’aide d’entretoises autocollantes, le programmateur au fond de l’autre demi coque avec des vis autotaraudeuses et sur le boîtier une fois refermé la platine bus (avec des entretoises autocollantes) surmontée de la platine d’expérimentation et de l’adaptateur. Les liaisons entre unités se font par nappes, paires et fi ls torsadés (voir figures 20 et 26).
Les face avant et panneau arrière reçoivent interrupteur, LED, sortie de câbles, cordon secteur 230 V et connecteur (voir figures 21 et 22).
La nappe à dix pôles ne sera insérée dans le connecteur mâle à dix pôles du bus que lorsque vous voudrez programmer un PIC.

Liste des composants EN1203
C1 .... 2 200 μF électrolytique
C2 .... 100 nF polyester
C3 .... 100 nF polyester
C4 .... 100 μF électrolytique
C5 .... 2 200 μF électrolytique
C6 .... 100 nF polyester
C7 .... 100 nF polyester
C8 .... 100 μF électrolytique
DS1 ... diode 1N4007
DS2 ... diode 1N4007
RS1 ... pont redres. 100 V 1 A
RS2 ... pont redres. 100 V 1 A
IC1 ... intégré L7812
IC2 ... intégré L7805
T1..... transfo. 25 W sec. 14 V 1 A – 8 V 1 A
S1 .... interrupteur


La programmation "in-circuit"
La programmation "IN CIRCUIT" des PIC est très avantageuse car elle fait gagner du temps : elle permet en effet de programmer le PIC sans l’extraire de la platine de l’appareil qui l’utilise.
Cela est possible grâce aux CONN.1 situés sur le programmateur et les bus. Les essais seront possibles dès l’installation du logiciel.
Parmi ceux que Microchip met sur le marché, par exemple EPICWIN, ICPROG, PONYPROG, etc., nous en avons choisi un qui convient bien aux PIC des autres constructeurs comme Atmel : ICProg permet la programmation de plusieurs microcontrôleurs ainsi que celle des mémoires et il peut gérer le dialogue logiciel avec divers types de programmateurs.
Il est disponible avec une documentation complète.

Le logiciel pour les PIC
Tout ce dont vous avez besoin pour écrire les programmes puis programmer les PIC se trouve en effet dans un CDROM qui ne vous coûtera guère que le prix du support. En ce qui concerne l’éditeur, l’assembleur, le "linker" (éditeur de liens) et le compilateur, nous avons utilisé le programme MPLAB IDE version 6.51 de Microchip.
Le programme pour transférer les données sur le microcontrôleur est le IC-Prog version 1.05C, choisi car il peut être paramétré pour la langue française et parce qu’il est très simple d’utilisation (pour en savoir plus connectez-vous au site www.icprog.com).

L’installation de IC-Prog
Le CD en question contient le programme MPLAB pour écrire, contrôler, compiler, assembler et simuler votre logiciel et le programme IC-Prog pour programmer les PIC (téléchargeables aussi sur le site de Microchip). On y trouve encore une série de programmes de démonstration écrits pour les PIC 16F628, 16F876 et 16F877, fort utiles pour tester la platine d’expérimentation et pour apprendre à programmer.
Et ça marche avec un SE W98 ou supérieur.
Installez d’abord le programme IC-Prog, vous pourrez ainsi charger sur le PIC le programme de démonstration scia.hex et vérifi er si vous avez monté le programmateur, le bus et la platine d’expérimentation correctement. Insérez le CD dans le lecteur, cliquez sur Démarrer et Exécuter (voir figure 23). À partir de la fenêtre visible figure 24 écrivez dans la case Ouvrir :


D:\IC-PROG.EXE

Note : le D représente en principe le lecteur de CD, mais il se peut que dans votre ordinateur le lecteur ait une autre désignation.
Cliquez sur OK et le programme s’installe automatiquement sur le disque dur sous l’onglet IC-Prog (voir figure 25).

Faire glisser l’icône sur le bureau
Sous l’onglet IC-Prog se trouve également le raccourci vers le programme justement nommé Raccourci vers icprog, à placer sur le bureau en l’y faisant glisser avec un clic gauche maintenu.
Ensuite, pour ouvrir le programme vous n’aurez qu’à cliquer sur l’icône du bureau (voir figure 27).

La liaison entre les platines
Reliez le programmateur EN1580 au bus EN1581 à l’aide du connecteur à 10 pôles, puis enfoncez dans les connecteurs du bus la platine d’expérimentation EN1582 (voir figure 26), insérez dans le support à 18 broches un PIC 16F628, sans vous tromper dans l’orientation, comme le montre la figure 13.
Prenez le câble à 25 pôles mâle/femelle et reliez le programmateur au port parallèle de l’ordinateur. Alimentez le programmateur : DL3 ON témoigne de la tension d’alimentation.

La configuration matérielle
Lancez le programme IC-Prog en cliquant sur l’icône, comme le montre la figure 27. La première fois que vous l’ouvrez, un message vous demandant de configurer votre matériel apparaît : cliquez sur OK et, dans la fenêtre visible figure 28, spécifi ez le type de programmateur utilisé. Cliquez sur la fl èche tournée vers le bas pour en visualiser la liste et choisissez ProPic 2 Programmer. Si vous avez plusieurs ports parallèles (voir figure 28), configurez celui auquel vous avez relié le programmateur. Pour fi nir cochez les cases Invert MCLR et Invert VCC (voir figure 28). Fermez cette fenêtre en cliquant sur OK et l’écran principal du programme apparaît.

Le choix de la langue française
Pour mettre le programme en français, dans le menu "Settings" cliquez sur Options (voir figure 29).
Dans la boîte de dialogue Options vous sont proposées diverses options : cliquez sur Language et dans le menu déroulant choisissez "French" (voir figure 30) puis cliquez sur OK.

Si vous travaillez sous WINDOWS NT/2000/XP
Ce programme peut en effet être utilisé avec ces SE. Dans ce cas, rouvrez la fenêtre de dialogue Options (voir figure 29) et cliquez sur MISC. Cochez Habiliter le pilote NT/2000/XP puis confi rmez avec OK, comme le montre la figure 31.

Le contrôle matériel
Dans le menu Réglages, cliquez sur Contrôle Matériel.
Dans la fenêtre "Check Hardware",
cochez les cases :
Activer Data Out
Activer MCLR
Activer VCC
comme le montre la figure 32, puis confi rmez par OK. Le fonctionnement matériel est démontré par cette confi guration mais, si l’on ferme le programme, elle n’est pas maintenue.

Figure 20 : Photo d’un des prototypes des platines des programmateur et alimentation montés dans leur boîtier plastique sur le fond horizontal avec des vis autotaraudeuses (programmateur) et sous le couvercle avec des entretoises autocollantes (alimentation).

Figure 21 : Les fi ls d’alimentation pour le bus et la nappe connectant le programmateur au bus sortent de la face avant en aluminium du boîtier plastique.

Figure 22 : Le connecteur mâle à 25 pôles pour la liaison au port parallèle est sur le panneau arrière en aluminium.

La configuration du PIC
Dans la fenêtre principale du programme, en haut à droite, il est possible de choisir le type de microcontrôleur à programmer : cliquez sur la fl èche du bas pour ouvrir le menu déroulant et cherchez le PIC 16F628.
Pour confi rmer le choix, cliquez sur 16F628 (voir figure 33).
Toujours à droite de la fenêtre principale du programme, il est possible de configurer certaines caractéristiques du PIC choisi.
Ouvrez le menu déroulant en cliquant sur la fl èche, sous le mot "Oscillator", pour choisir le type d’oscillateur et la fréquence utilisée, puis sélectionnez le mot XT (correspondant à une fréquence d’horloge de 100 kHz à 4 MHz). Les autres mots, comme le montre la figure 34, sont utilisés dans les cas suivants : LP – à sélectionner quand on utilise une horloge à basse fréquence afi n de faire moins consommer le microcontrôleur (32 - 200 kHz).
HS – à sélectionner quand on travaille avec des fréquences de 8 MHz à 20 MHz.
ExtClk ("external clock") – à sélectionner quand on utilise une source externe pour fournir l’horloge.
IntRC I/O ("internal RC") – à sélectionner quand on défi nit une horloge interne à l’aide du programme. Dans ce cas les broches A6 et A7 du PIC peuvent être utilisées comme entrées.
IntRC CLKOUT ("internal RC" avec sortie horloge) – comme le précédent, à sélectionner quand on défi nit une horloge interne à l’aide du programme.
Dans ce cas cependant, seule la broche A7 peut être utilisée comme entrée ou sortie. La broche A6 fournit une copie externe de l’horloge interne.
ER I/0 ("External Resistence") – à sélectionner quand on défi nit une horloge interne à l’aide du programme.
Dans ce cas cependant la broche A6 est utilisée comme entrée ou sor tie et la broche A7 avec une résistance de "pull-up".
ER CLKOUT ("External Resistence" avec sortie horloge) – à sélectionner quand on défi nit une horloge interne à l’aide du programme.
La broche A6 nous fournit une copie de l’horloge interne et la A7 est utilisée comme entrée ou sortie avec une résistance de "pull-up".
Continuons la confi guration, sous le mot "Fuses" il est possible de sélectionner une série de fonctions typiques des PIC.
Pour activer ces fonctions, il faut cocher les cases associées à chaque indication. Quant à nous, nous ne pouvons cocher que l’option MCLR (voir figure 34). En réalité cette fonction peut aussi bien ne pas être cochée.
Note : si ces fonctions ne sont pas remplies, le PIC ne fonctionne pas comme il le devrait ni comme nous le voudrions.
Les autres fonctions sont : WDT ("Watchdog Timer") – si une instruction n’est pas exécutée avant ce délai le PIC se réinitialise.
PWRT – détermine une routine avec temps fi xe simulant la charge d’un condensateur sur la broche de "reset".
BODEN – défi nit le niveau minimal de la tension de travail (BVdd).
Note : il y a des PIC travaillant jusqu’à 3 V.
LVP ("low voltage program") – habilite la fonction de programmation à 5 V au lieu de 13,3 V. Il n’est pas conseillé d’activer cette fonction, notre programmateur n’assumant pas la LVP.
CPD – active la protection en lecture du contenu de la mémoire de données.
Chaque fois qu’on active ou désactive une de ces fonctions, la valeur de la somme de contrôle (visible au bas de la figure 34) varie et c’est elle qui sera insérée automatiquement durant la programmation.
Quand vous devez programmer un PIC, le programme doit être confi guré de cette façon.
Note : quand on ferme le programme cette confi guration n’est pas maintenue.

Le programme de test SCIA.HEX pour essais
Pour procéder aux essais du programmateur et du bus, vous pouvez utiliser le programme scia.hex se trouvant dans le CD : il s’agit d’un programme simple allumant une après l’autre les LED de la platine d’expérimentation.

Les phases de programmation
Pour programmer le PIC, mettez S1, situé sur la platine bus, sur P (Programmation) et ôtez J1 du bus.
Ouvrez le fi chier scia.hex avec la commande Ouvrir du menu Fichier, entrez sous l’onglet PRG DEMO, ouvrez l’onglet Scia led et, enfi n, chargez le fi chier scia.hex. Récapitulons le parcours :

C:\IC-Prog\PRGDEMO\Scialed\scia.hex

Pressez F5 pour programmer le PIC et répondez OK à la demande de confi rmation de la programmation. Une fenêtre d’applet apparaît puis la programmation se termine par un avis de fi n : Chip programmé avec succès !
Durant la programmation, contrôlez la présence des effets suivants sur les platines EN1580-1581 : les LED Vdd et Vpp de la EN1580 clignotent, ce qui prouve que le programme fonctionne correctement. DL1, sur le bus EN1581 clignote aussi, ce qui prouve que la platine fonctionne correctement et que la Vdd est bien présente.
Note : si DL1 du bus ne s’allume pas, contrôlez que la nappe est bien insérée et que le connecteur n’a pas été soudé à l’envers.

Les phases d’exécution
Pour essayer la platine d’expérimentation EN1582, débranchez le connecteur à dix pôles du bus et mettez S1 sur E (Expérimentation). DL1 du bus reste allumée (elle est alimentée directement par le 5,6 V de l’alimentation).Si vous avez programmé le PIC en cochant la fonction MCLR (voir figure 34), insérez J1 sur le bus et pressez P1, toujours sur le bus, afi n d’activer le "reset". Si elle n’a pas été cochée, laissez J1 ouvert.
Pour voir les LED clignoter à la suite sur la platine d’expérimentation, ouvrez aussi J4 (si vous le laissez fermé les LED ne clignotent pas).

Figure 23 : Pour installer IC-Prog dans l’ordinateur, cliquez sur Démarrer puis sur Exécuter.

Figure 24 : Dans la case allongée près de Ouvrir, tapez D:\IC-PROG.EXE, puis confi rmez par OK.

Figure 25 : Durant l’installation, la barre bleue vous informera du suivi du chargement du logiciel dans l’ordinateur.

Figure 26 : Après fermeture du boîtier plastique, vous pouvez monter sur le couvercle la platine bus avec des entretoises plastiques autocollantes. Insérez ensuite dans le connecteur à 10 pôles la nappe sortant de la face avant et enfoncez sur les connecteurs du bus la platine d’expérimentation EN1582.

Figure 27 : En faisant glisser sur le Bureau le raccourci vers IC-Prog, il suffi ra de cliquer deux fois sur l’icône pour ouvrir le programme.

Figure 28 : Écran montrant comment doit être confi guré le matériel pour travailler avec notre programmateur.

Figure 29 : Pour confi gurer les Options fournies par le programme, cliquez sur le menu "Settings" puis sur Options (voir fi gure 30).

Figure 30 : Dans la boîte de dialogue Options, sélectionnez "Language", cliquez sur le menu déroulant puis choisissez la langue (confi rmez avec OK).

Figure 31 : Si votre ordinateur est équipé d’un SE Windows NT ou 2000 ou XP, cliquez sur Misc dans la boîte de dialogue Options et habilitez le pilote (confi rmez avec OK).

Figure 32 : Dans le menu Réglages, cliquez sur la commande "Hardware Check" (voir fi gure 29) et quand la boîte de dialogue s’ouvre, cochez les cases "Active Data Out", MCLR et VCC.

Figure 33 : Avec le programme IC-Prog et notre programmateur il est possible de programmer de nombreux types de PIC (voir tableau1). Pour essayer la platine d’expérimentation EN1582, sélectionnez dans le menu déroulant le PIC 16F628.

Figure 34 Après sélection du PIC, confi gurez l’horloge ("clock") et choisissez les fonctions comme l’article l’explique.

0 commentaires:

Enregistrer un commentaire

Related Posts Plugin for WordPress, Blogger...