Programmateur Port Série

Programmateur Port Série: Le Ponyser modifié

Ce programmateur ne convient que si votre ordinateur possède un port série d’origine ou sous forme d’une carte PCI ou PCMCIA. La plupart des adaptateurs USB-Série ne fonctionneront pas.

Le site Lancos.com est à l’origine de ce programmateur : http://www.lancos.com/siprogsch.html

Personnellement, je me suis inspiré du schéma trouvé sur ce site :http://diy4fun.blogspot.com/2009/01/simple-serial-programmer-for-avr.html

Je l’ai modifié comme ceci :

Les modifications portent sur le transistor, les diodes Zener et le connecteur JP1.

Comme transistor, j’ai utilisé le 2N3904 car c’est celui que j’avais sous la main et il fonctionne très bien. J’ai utilisé des diodes Zener de 5V car elles étaient également dans mes tiroirs. Quant au connecteur, j’ai remplacé le IDC 10 broches par un connecteur 5 broches en ligne car il peut s’implanter directement sur la breadboard.

Deux logiciels peuvent utiliser ce programmateur :

Fonctionnement :

Le connecteur série mâle du PC comporte 9 broches (voir photo): DCD, RD ou Rx ou Rxd, TD ou Tx ou Txd, DTR, Ground ou GND, DSR, RTS, CTS et RI.

La prise femelle du câble présente évidemment la même numérotation mais en miroir. Si on regarde la prise par l’arrière, la numérotation est également en miroir.

Par ailleurs, les broches de programmation ISP (ISP ou In System Programming signifie que le µC peut être programmé sans l’enlever de son circuit) de l’Atmega8 sont les suivantes : GND = Ground = Masse; MISO = Master In Slave Out (ce signal va de l’Atmega au PC); MOSI = Master Out Slave In (ce signal va du PC à l’Atmega); SCK = Slave Clock ( signal d’horloge pour l’Atmega). (Voir photo ci-dessous). Le Master est donc le PC et le Slave est l’Atmega à programmer.

Si on fait une recherche du terme « ponyser » dans le fichier de configuration de avrdude (avrdude.conf) on trouve ceci : « design ponyprog serial, reset=!txd sck=rts mosi=dtr miso=cts ». Cela donne la correspondance entre les signaux du câble série et les broches de l’Atmega.

Le programmateur Ponyser ne transforme pas les signaux reçus, sauf pour le Reset. Il est essentiellement un adaptateur de tension électrique entre les signaux Série et les broches de l’Atmega. Le câble série comporte des tensions allant jusqu’à +- 12V alors que pour l’Atmega, on ne peut dépasser 5,5V. Voilà pourquoi les signaux qui vont du PC vers l’Atmega sont pourvus d’une diode Zener de 5V. En effet la caractéristique d’une diode Zener est de limiter la tension au seuil indiqué sur la diode. Les tensions appliquées aux broches de l’Atmega ne dépasseront donc jamais 5V. Les résistances accompagnant les diodes ont pour but de limiter le courant traversant les diodes.

On remarque que la broche Reset égale !Txd. Le point d’exclamation indique qu’il faut prendre l’inverse du signal Tx. Ceci s’obtient grâce au transistor. En effet, lorsque le signal Tx est positif, le transistor laisse passer le courant. Le fil de Reset est alors connecté à GND, c’est-à-dire à 0V. A l’inverse, lorsque Tx vaut 0V ou est négatif, le transistor est bloqué et Reset n’est plus connecté à la masse. Or, sur la breadboard, le signal Reset comporte une résistance de 10K connectée au +5V. Lorsque le transistor est bloqué, la broche Reset passe donc à ce potentiel.

Les signaux Reset, MISO, MOSI et SCK sont manipulés à partir du PC par les logiciels PonyProg ou Avrdude renseignés ci-dessus.

Réalisation pratique

Vous aurez besoin du matériel suivant :

  • Un câble série
  • Un connecteur D-Sub9
  • Un connecteur 5 pin droit
  • 3 diodes Zener 5V
  • 2 Résistances 4,7 KΩ
  • 1 Résistance 10 KΩ
  • 1 Résistance 33 KΩ
  • 1 condensateur 220 pF
  • 1 Transistor NPN de faible puissance (2N3904, BC547, BC549, BC847, etc…)
  • 1 petite platine d’expérimentation à bandes de cuivre

La prise série du PC étant mâle, le câble série doit avoir au moins une extrémité femelle. L’autre extrémité peut être mâle ou femelle mais est à adapter au connecteur D-Sub 9 à monter sur la platine. Attention, les câbles peuvent être droits ou croisés. Dans ce dernier cas, ils sont appelés « null modem ». Essayez d’éviter ces câbles croisés car il y a déjà assez d’occasions de se tromper dans les connections. L’idéal est de se servir du contrôleur en position de ohmmètre pour être certain de repérer la connexion des broches.

Comme connecteur D-Sub9, choisissez un modèle possédant à l’arrière des petites broches cylindriques permettant d’y souder directement un fil.

En effet, les modèles à souder au circuit imprimé ont les broches en quinconce et ne peuvent être soudées aux pistes de cuivre de votre platine.

Il est également possible de supprimer ce connecteur et de couper le câble pour un raccordement direct des fils à la platine. Il faudra alors fixer de manière solide l’extrémité du câble car les fils sont trop fragiles pour supporter des manipulations.

Les connecteurs « pin header » se vendent sous forme de barrettes de 40 pins. Au choix, on peut choisir des pins droites ou pliées à 90°.

Ces barrettes se cassent à la longueur désirée. Disposer une pince de chaque côté de l’endroit à casser et plier l’endroit où le plastique doit casser.

Il faut être très attentif à l’orientation des diodes Zener sous peine de risquer la destruction du µC. Toutes les diodes comportent une bande circulaire claire ou sombre permettant d’identifier la cathode, c’est-à-dire le pôle négatif.

Des résistances de ¼ de Watt ou même moins conviennent parfaitement.

Le condensateur sera un petit condensateur céramique. Il peut être de forme ou de couleur différente. La valeur de 220pF sera généralement marquée sous la forme codée « 221 » : les deux premiers chiffrent indiquent une valeur de 22 et le troisième chiffre représente le nombre de zéro à ajouter derrière. Le marquage est en pico Farad. Donc 221 correspond à 220 pF. (voir http://f5zv.pagesperso-orange.fr/RADIO/RM/RM24/RM24G/Rm24G11.html)

En ce qui concerne le transistor, Identifiez bien la Base, le Collecteur et l’Emetteur avant de le souder. Le 2N3904 est représenté ci-contre. Si vous choisissez un autre modèle, vérifiez l’ordre des pattes dans son Datasheet.

Il est temps maintenant de passer au montage.

Comme support de fixation du connecteur D-Sub, on prend un morceau de profilé d’aluminium et on le découpe à la scie à métaux selon la forme ci-contre.

On coupe également à la scie à métaux un morceau de platine à bandes de cuivre de la largeur de ce support de fixation. Pour la longueur du morceau, compter une douzaine de trous libres à droite du support de fixation.

La photo ci-dessous montre la platine avec les composants implantés. Les pistes de cuivre sont en bleu et sont représentées en transparence.

  • A l’aide d’un canif, d’un cutter ou d’une fraise, pratiquer 4 interruptions des pistes aux endroits indiqués par les flèches jaunes.
  • Fixer le support de D-Sub à la platine à l’aide de 2 vis et écrous M3 (3 mm de diamètre).
  • Fixer le connecteur D-Sub à son support avec des vis et écrous similaires.
  • Repérer avec soin les broches 3, 4, 5, 7 et 8. Attention, leur position dépend du caractère mâle ou femelle de votre connecteur et du côté où on regarde le connecteur.
  • Raccorder ces broches au 5 pistes indiquées. Les connections en rouge de la photo représentent  les fils de connection.
  • Implanter les résistances. R1, R3 et R4 sont à placer verticalement, avec une patte de chaque côté de l’interruption.
  • Implanter le condensateur.
  • Implanter les diodes en respectant le sens.
  • Implanter le transistor après avoir repéré les broches. Les pattes sont à plier pour accéder aux trous prévus : B et C de part et d’autre de l’interruption de la piste Reset et E sur la piste GND.
  • Si le connecteur est droit, souder les longues pins sous la platine, du côté cuivre, de manière à les enficher dans la breadboard. Si c’est un connecteur à 90°, souder la partie courte des pins.
  • Avec le voltmètre, vérifier l’absence de court-circuit et la continuité des pistes.
  • Il ne reste plus qu’à imprimer et à coller une étiquette pour identifier les broches.

Retour au Menu

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s