Ptitrain Électronique PicTrain Page précédente | ||
RV1 Cette nouvelle rubrique aurait pu aussi s´appeler :
|
1. 1.1. 1.2. 1.3. 1.4. 1.5. 1.6. 1.6.1. 1.6.2. 1.7. |
INTRODUCTION Qu´est-ce que c´est ? À quoi ça sert ? Comment ça marche ? C´est quoi, un programme ? Comment fait-on, pratiquement ? Quelques caractéristiques générales Les microprocesseurs : PIC de Microchip Caractéristiques électriques Liens |
La vedette de toutes ces questions (et réponses !) étant ce petit truc dans le rond bleu sur l´image ci-dessus à gauche, un microprocesseur...
Ce n´est écrit que dans le cadre de notre hobby et pour notre plaisir.
Dans les principes (qu´on verra plus loin), la différence entre votre le processeur Intel Duocore machintruc de votre P.C. et la puce à 8 pattes que vous venez de voir en photo et qui figure dans presque tous mes montages n´est qu´une différence d´échelle (de taille) : nombre de pattes, vitesse, mémoire... mais ils fonctionnent tous les deux de la même manière.
Donc, en pratique, utiliser des microP revient surtout à “traduire” les assemblages de circuits intégrés (et autres composants) chers à Jidé par des programmes, sachant que les capacités des microP sont telles que les logiques que l´on peut mettre en oeuvre sont presque illimitées en nombre de circuits et d´opérations. Par exemple, dans notre exemple, comme j´ai encore quatre “pattes” de libres sur les huit (les pattes 3, 4, 5 et 7), je peux définir quatre autres successions de tiiii-taaaa différentes, simplement en ajoutant 4 autres boutons poussoirs. Attention : pour les besoins de PicTrain, je n´utilise qu´une petite partie des fonctions des microP, je simplifie beaucoup, je suis à la limite du simplisme. Même un tout petit microP comme le 12F675 que j´utilise fréquemment comporte des tas d´autres possibilités : convertisseur analogique-numérique, comparateur de tension, compteur d´impulsions... qu´on aura peut-être l´occasion d´utiliser un jour dans nos p´tits trains.
Souvent les circuits logiques sont utilisés de manière “statique” : il y a un événement à un bout (bouton poussoir par exemple), et il se produit quelque chose à l´autre bout (une succession de tiiii-taaaa par exemple), et puis on revient au repos en attente d´un autre événement. Un microP “tourne” tout le temps, c´est-à-dire qu´il exécute en permanence des instructions du programme : dans notre exemple, le microP “regarde” toutes les 3/1·000·000 (trois millionnièmes !) de seconde si quelqu´un a appuyé sur le bouton ; si c´est le cas il exécute les instructions spécifiques à la production des sons tiiii et taaaa, et après retourne à la surveillance du bouton. Mais il ne s´arrête jamais (sauf exception volontaire bien entendu, que l´on verra plus tard). Pire, il peut faire deux choses en même temps !
Dans notre exemple, on peut résumer le programme comme ça : Je regarde si on appuie sur le bouton. Si oui, je mets “là où il faut” les paramètres du son tiiii. J´émets le son tiiii. Je mets “là où il faut” les paramètres du son taaaa et j´émets le son taaaa. Je refais la même chose pour un autre son tiiii. Et je retourne au début pour regarder mon bouton. La totalité de ce qui est ci-dessus fait 50 lignes de programme, ce qui peut paraître beaucoup, mais chaque ligne est vraiment une seule instruction très élémentaire, facile à comprendre. La programmation est un jeu logique, que l´on peut comparer au jeu, très fameux en modélisme ferroviaire, qui consiste à faire se croiser deux trains sur des voies trop courtes pour les contenir. Chaque manoeuvre est une instruction, et la succession des manoeuvres est un programme. La programmation n´est pas plus compliquée que cela (elle est juste un peu plus longue...)
Bien entendu, au départ, il faut vraiment savoir ce que l´on veut faire : en termes de métier, il faut “spécifier” le montage, le décrire, en français... Un gribouillis sur une nappe en papier est suffisant, mais il est en général utile de le savoir avant de commencer. Ensuite, et en parallèle, on définit ce qui sera fait par le microP et ce qui reste électronique, et on commence la conception du programme et du schéma électronique (pour ce qui est de cette dernière partie, je vous renvoie à tous les articles généraux du Meccano électronique ici même). Pour l´écriture du programme, on utilise un logiciel fourni par le fabricant du microP (c´est une des raisons qui me pousse à utiliser les PIC de Microchip : leurs logiciels sont gratuits). Cet outil possède des fonctions sophistiquées, mais il est aussi et surtout un traitement de texte permettant d´écrire et de contrôler ses programmes.
Dans la plupart des montages, j´utiliserai le microP 12F629 (ou 12F675) de Microchip (une de ces deux références précisément, aucune autre !), et ce pour trois raisons : Les outils de développement (hors le programmateur, la carte) sont gratuits. Ces microP sont assez faciles d´utilisation et bien adaptés aux utilisations non professionnelles comme les nôtres. Il ne sont pas chers (12F675 = 1,60 euro la pièce par dix, chez Sélectronic). Et aussi parce qu´ils sont la matière première des cours d´un des papes francophones de la vulgarisation, je veux parler de Bigonoff (voir les liens).
Mais cette discussion se tiendra lorsque l´on examinera le “Numerax à microP”, une alimentation de train à boutons poussoirs.
Bigonoff : Un des meilleurs sites de vulgarisation des microprocesseurs, surtout les PIC de Microchip. Je vous le recommande chaudement, beaucoup de mes connaissances viennent de ses cours.
|
À suivre : “Un peu plus sur les microP” |
Psi 10/11/07 |
||
N.B. — Textes, schémas, programmes © Psi pour Ptitrain. Photos Jidé ou D.R. quand signalé. — Toutes vos remarques et commentaires sont bienvenus, et les pages de Ptitrain ne sont pas statiques : les erreurs sont corrigées sitôt connues, les améliorations, éclaircissements, etc. feront l´objet de mises à jour fréquentes. | Ptitrain Électronique PicTrain Page suivante |
Ptitrain, l´e-magazine du train éclectique. Directeur de la publication : Christophe Franchini. Rédacteur en chef : Jean-Denis Rondinet |