Fabriquer un programmeur (ISP) AVR hybride pour ATTiny et ATMega

Pour la programmation de mes microcontrôleurs, j’ai toujours trouvé plus commode de disposer d’une plaque sur laquelle sont soudés quelques broches et un support ZIF pour faciliter les manipulations. Il est aisé ensuite de brancher cette plaque sur un Arduino.

Au début, j’avais simplement soudé ces broches avec un support à  8 pattes, ce qui me permettait de programmer les microcontrôleurs de ce format (ATTiny85 ou ATTiny45).

Puis je suis passé à l’ATMega, et j’ai donc fabriquer un nouveau support avec les broches adéquates, sur 28 pattes. J’étais néanmoins obligé de changer de plaque à chaque fois que je passais d’un ATMega à un ATTiny.

Il y a peu, j’ai reçu des ATTiny4313. Ce microcontrôleur utilise un nouveau format, à 20 broches, ce qui aurait impliqué de fabriquer une nouvelle plaque dédiée.

C’est quand même bien foutu !

J’ai décidé de réfléchir un peu et je me suis rendu compte d’une chose : les broches utilisées pour la programmation sont placées exactement de la même façon. Seule la position des broches d’alimentation et de réinitialisation (RESET) varie.

ATMEGA168details
Broches d’un ATMega168
attiny85details
Broches d’un ATTiny85
ATTINY4313details

Broches d’un ATTiny4313

En rouge, les broches SCK (Horloge), MISO et MOSI (entrée/sortie du mode SPI), sont positionnées toutes 3 dans le même ordre pour chacun des microcontrôleurs.

Les broches en vert sont mobiles, mais on retrouve cependant les mêmes positions des VCC et RESET pour les deux versions d’ATTiny.

Factorisons tout ça !

Maintenant que nous avons la position des broches, on peut rapidement comparer ce qui se passe si on superpose les 3 microcontrôleurs. Magie ! Aucune broche « sous-tension » (VCC ou GND) n’interfère avec les broches RESET, SCK, MISO ou MOSI. Ce qui veut dire que l’on peut  brancher le tout comme ceci :

universalisp_bbPour rappel, voici les branchements à faire avec un Arduino :

Microcontrôleur Arduino
VCC VCC
SCK 13
MISO 12
MOSI 11
RESET 10
GND GND

2 réflexions au sujet de « Fabriquer un programmeur (ISP) AVR hybride pour ATTiny et ATMega »

  1. Bonjour
    (2 ans plus tard…)

    bravo, très bien vu ! ca vaut le coup de faire une carte avec un connecteur ZIF , est-ce qu’il y a d’autres attiny qui sont compatibles ? si oui, est-ce que tu pourrais compléter la liste ? merci

    1. Bonjour,

      Normalement, les microcontrôleurs de même nomenclature ont le même format de boitier. Il est toujours nécessaire de vérifier les datasheets avant de brancher une puce afin d’être sûr de ne rien griller.
      Il me semble que les attiny84 et 85 ont le même format, ainsi que les 1313, 2313 et 4313. Pour l’Atmega, les 168 et 328 doivent correspondre également.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*