Configurer un arduino uno pour le faire fonctionner en programmateur ISP.
Pour faire fonctionner l'arduino en tant que programmateur ISP, il faut télécharger dessus le sketch ArduinoISP situé dans le menu File/Examples/.
Les pins SCK (D13, pin 19), MISO (D12, pin 18) et MOSI (D11, pin 17) de l'arduino sont connectées aux pins SCK (7), MISO (6) et MOSI (5) de l'ATtiny85.
L'entrée RESET de l'ATtiny85 est reliée à la pin 16 (D10) de l'arduino.
Un condensateur de 10 uF doit être ajouté entre la pin RESET et GND pour... (éviter le redémarrage instantané de l'arduino ?).
Il y a deux possibilités pour charger un programme dans le microcontrolleur, soit en utilisant l'IDE Arduino, soit en se servant du programme avrdude.
Configurer l'IDE pour pouvoir programmer un ATtiny 45 ou 85. Télécharger les fichiers de spécifications, les copier dans le répertoire contenant
les sketchs. Fermer et relancer l'IDE pour la mise à jour.
Ensuite, Choisir l'AVR à programmer dans le menu Tools/Board de l'IDE Arduino. Par exemple, l'ATtiny85.
En choisissant dans le menu Tools/Burn Bootloader, on grave le programme de démarrage. Notamment, on définit la fréquence d'horloge du microcontrolleur (en interne ou avec un crystal externe).
Les commandes supportées sont :
Le code est écrit en C et compilé pour être ensuite téléchargé sur l'ATtiny85.
Pour compiler le code, utiliser Atmel Studio. On obtient ainsi un fichier
.hex.
Une fois compilé, le fichier .hex est téléchargé sur l'AVR grâce à avrdude qui est disponible en téléchargeant
WinAVR.
avrdude -P comXX -b 19200 -c avrisp -p attiny85 -U flash:w:code_compile.hex
comXX: le numéro du port COM sur lequel est connecté l'arduino.