Programmateur pour cartes Gold
et Silver
(et pour microcontrôleurs PIC et mémoires EEPROM
séries)
Comme vous l'avez vu à la
rubrique Cartes de ce site, les cartes
Gold et
Silver contiennent toutes les deux un microcontrôleur PIC de
Microchip. La réalisation d’un programmateur pour ces cartes se
borne donc à celle d’un programmateur de PIC, équipé bien sûr d’un
connecteur pour cartes à puce.
Tous les microcontrôleurs
PIC récents supportent la programmation en circuit ou ICSP pour In
Circuit Serial Programming. Cette programmation, qui a lieu sous
forme série, n’impose de devoir accéder qu’aux pattes : /MCLR
(reset), CLK (horloge externe), RB6 et RB7 du microcontrôleur,
pattes qui sont justement celles qui sont accessibles via le
connecteur des cartes à puce Gold et Silver.
 |
| Le programmateur
pour cartes Gold et Silver que vous allez réaliser ici |
Le seul problème qui peut se
poser est celui de la mémoire EEPROM associée au microcontrôleur
pour laquelle trois situations différentes sont à considérer.
Il convient tout d’abord de
faire la distinction entre les applications qui nécessitent une
programmation préalable de cette mémoire et celles qui n’en ont pas
besoin. Dans ce dernier cas, aucun problème ne se pose puisque
l’application programmée dans le PIC gère la mémoire contenue dans
la carte sans que l’on ait à s’occuper de quoi que ce soit en phase
de programmation.
Par contre, dans le premier cas, il faut pouvoir
programmer la mémoire EEPROM depuis l’extérieur de la carte. Deux
cas sont donc à nouveau à considérer :
- Si vous utilisez une carte Gold ou Silver « maison », réalisée
comme expliqué par ailleurs sur ce site, rien ne vous empêche
d’enlever momentanément la mémoire de son support afin de la
transporter sur un programmateur adéquat.
- Si vous utilisez une vraie carte Gold
ou Silver, c’est à dire une carte
dans laquelle les composants sont intégrés sous forme de puce, cette
manipulation est évidemment impossible et il faut faire appel à un
programme "loader" que vous trouverez à la rubrique
Logiciels de ce
site.
Schéma du programmateur
Ce programmateur présenté
ci-dessous est dérivé du schéma de base très connu sous le nom de "JDM
Programmer". Il se connecte sur le port série de n’importe quel
compatible PC et exploite les niveaux RS 232 pour générer les
tensions de programmation nécessaires.
Son principe est relativement
simple mais le schéma utilisé s’avère particulièrement astucieux de
façon à générer les deux tensions nécessaires pour programmer les
PIC, à savoir la tension d’alimentation VDD de 5 volts et la tension
de mise en mode programmation, appliquée à l’entrée /MCLR, de 13
volts. Ces tensions sont obtenues par redressement, filtrage et
régulation au moyen des diodes Zener DZ1 et DZ2, à partir des
niveaux + et - 12 volts disponibles sur les différentes lignes de
l’interface série RS 232 du PC associé.
Ces mêmes lignes servent
évidemment à délivrer au circuit l’horloge et les données de
programmation après écrêtage de leurs niveaux à 5 volts. Le
programmateur pilote trois supports vides :
- un support 8 pattes destiné aux mémoires EEPROM de la série 24xx
qui équipent les cartes Gold et Silver "maison" ;
- un support 18 pattes destiné aux PIC 16C84 ou 16F84 qui équipent
les cartes Gold ;
- un support 28 pattes étroit destiné au PIC 16F876 qui équipe les
cartes Silver.
Comme cela ne coûtait que le
tracé de quelques pistes en plus sur le circuit imprimé, je n’ai pas
résisté à la tentation d'ajouter un support 8 pattes et un support
18 pattes dont le brochage leur permet de programmer en outre, sans aucun adaptateur, les
12C5xx et 12C67x en boîtier 8 pattes et tous les PIC en boîtier 18
pattes : 16C55x, 16C61, 16C62x, 16C71, 16C71x, 16C8x, 16F8x
et16F62x.
Le connecteur visible sur la
droite de la figure correspond quant à lui au connecteur de cartes à
puce destiné à recevoir les cartes Gold ou
Silver, véritables ou de
fabrication "maison", dont il permet la programmation directe du
microcontrôleur qu’elles contiennent.
|