|
PIC®LABPourquoi choisir MICROCHIP plutôt qu'AVR ou autres ? Ce sont souvent les premières réalisations à base de microprocesseurs qui orientent le choix. D'abord on se contente de les programmer grâce au fichier HEX fourni par l'auteur, puis vient l'envie d'écrire des programmes pour ses propres réalisations. C'est ce cheminement, dont le but n'est pas encore atteint, que nous allons décrire ici. De simples idées que chacun pourra mettre à profit pour son compte. La première opération est de réaliser un programmateur. Le choix est large mais le résultat n'est pas toujours au rendez-vous. Pour rester dans la
philosophie "amateur",
nous allons chercher d'abord les solutions les plus simples. Devant ces contraintes, le plus simple est de s'orienter vers un programmateur utilisant le port USB. En dehors d'être présent sur tous les ordinateurs, il fournit en plus une tension de 5 Volts convenant parfaitement à l'alimentation du PIC à programmer et à fortiori pour les PIC en 3,3 V. Mais, me direz-vous, il faut aussi du 12 V pour le VPP. Qu'à cela ne tienne, un petit convertisseur élévateur fera l'affaire. Comme il n'est pas question de réinventer la roue, cette réalisation est un clone du PICkit2 de MICROCHIP. Par bonheur, cette société donne à la communauté les plans de son programmateur et également le firmware à intégrer dans le microcontrôleur, cœur de ce montage. Le PICkit2 (qui n'est plus vendu par MICROCHIP depuis la sortie du PICkit3, puis du 4) est un montage compact, entièrement composé de CMS. Comme il est très difficile de faire une copie à cette échelle, nous avons repris le montage original en ne gardant en CMS 1206 que les résistances et les condensateurs et en remplaçant les transistors par des équivalents classiques.
SCHÉMA DU PROGRAMMATEUR C'est la copie conforme de celui de MICROCHIP à l'exception des EEPROMs dont l'accès se fera, si nécessaire, par un connecteur prévu sur la carte. Celle-ci est en double face à trous non métallisés, donc il est nécessaire de faire quelques soudures côté composants.
Il est aussi possible de faire plus simple tout en gardant la possibilité de programmer certains PIC qui fonctionnent en 3,3 volts. Le schéma est le suivant : Le circuit imprimé en double face : Le tout fixé sur une plaque d'aluminium :
SUPPORT UNIVERSEL DE PROGRAMMATION Associé à ce programmateur,
un support universel permet de programmer tous les PIC (sauf peut-être
certains des plus récents). Il fait appel à un support TEXTOOL 40
broches à force d'insertion nulle.
RÉALISATION Le firmware à flasher dans le PIC 18F2550 (PK2V023200.HEX) se trouve sur le site de MICROCHIP ainsi que le logiciel (v2.61) à installer sur le PC. Un "User Guide" très complet est également disponible. Il n'y a pas de driver à installer, à l'ouverture du logiciel, le programmateur est reconnu. En cas de problème, il y a un outil de diagnostique (dans Tools/Troubleshoot...) et un outil de calibration (Tools/Calibrate Vdd & Set Unit ID) avec lequel on pourra même personnaliser son logiciel !
LA PLATINE D'ESSAI Convaincu qu'il faut bien se résoudre à se mettre un jour à la programmation des PIC, nous débutons par une petite platine qui va permettre, avec un microcontrôleur de moyenne gamme et très courant, de faire des petits programmes de gestion des entrées analogiques et digitales et de la communication avec l'extérieur. Nous avons jeté notre dévolu sur : Pour la partie 'Hard" : -
Un 18F2520 qui a remplacé le 16F876A de la première version. En
effet celui-ci est moins performant et semble obsolète d'après MIROCHIP.
Ces deux circuits sont compatibles broche à broche. Le 2550, au brochage identique,
n'a pas de port RC3 (inutilisé dans notre application). Pour la partie "Soft", au choix : -
L'interpréteur-compilateur-éditeur gratuit JAL (Just Another Language)
en open source et qui dispose d'une bonne bibliothèque pour gérer
les LCD, I2C, RS232, PWM, etc. C'est du simili-Pascal. DESCRIPTIONS & SCHÉMAS LE PROGRAMMATEUR : C'est la version "superLite" du PICkit2, juste ce qu'il faut pour programmer le PIC 16F2520 de la platine PICLAB. Ci-dessous, le schéma et le circuit imprimé côté composants (côté soudures par transparence) :
LA PLATINE D'ESSAI PICLAB : Pour
rendre ce montage "universel", il dispose d'un afficheur
2 lignes de 16 caractères, de 2 boutons poussoirs pour les tests
digitaux, deux potentiomètres pour l'analogique, deux LEDs et un
convertisseur TTL/CMOS - RS232 pour les tests de communication.
Un connecteur ICSP pour la programmation et un connecteur pour le
port non utilisé, complètent le circuit. Ci-dessous, le schéma et le circuit imprimé côté composants :
L'interrupteur S1 sert à isoler ou à alimenter le montage par le programmateur. Dans notre cas, c'est le programmateur qui alimente PICLAB, l'intensité consommée étant compatible avec les possibilités d'un port USB (500 mA max.). Voilà, maintenant il n'y a plus qu'à... |
|