L'environnement de développement ne fonctionne actuellement que sous MS Windows. La version de GCC pour les AVR est disponible sur de nombreuses plate-formes (Linux/MacOS/BSD/...).
Les 2 fichiers à récupérer sont:
L'installation des 2 programmes ne pose a priori pas de problèmes particulier. J'ai testé en installant GCC en premier, afin que AVR Studio puisse trouver le compilateur GCC directement.
Aucun soucis. Il suffit de double-cliquer sur le fichier WinAVR-20050214-install.exe et de se laisser guider. L'installation est même en français. À noter tout de même. 6 icônes apparaissent sur le bureau.
Pas de soucis non plus. Il suffit de double-cliquer sur le fichier aStudio4b452.exe. L'installation est en anglais. Il est juste à noter qu'il y a une option à cocher pour un dribver USB qui fait 176 Ko... alors que l'installation a déjà besoin de 70 Mo... Il faut redémarrer la machine à la fin de l'installation.
L'installation logicielle ne posant pas de problème, nous essayons maintenant de faire tourner un programme simpliste (de type "hello World") et de programmer la carte.
L'environnement de développement est démarré classiquement, en allant chercher le programme dans Démarrer/Programme/Atmel AVR Tools/AVR Studio 4. Une fenêtre apparaît au démarrage de l'application. Si on choisi « New Project », on a directement une option pour utiliser la chaine de compilation GCC:
Il faut préciser le composant utilisé: C'est un ATMega8515 qui est livré par défaut avec la carte STK500.
Le projet est créé, et un fichier est créé. On peut voir sur la gauche les fichiers présents dans le projet. On retrouve beaucoup de comportements classique des environnements de développement, comme dans Keil par exemple.
Le code exemple utilisé ici sert à faire clignoter une diode LED (sur le port B.0). Il n'y a pas de timers, donc il ne faut pas s'attendre à quelque chose de formidable :-).
On compile ensuite. Il y a une barre d'outil pour la compilation:
Le kit de démarrage STK500 ne nous permet pas de faire du debuggage en ligne, par contre, on peut tout à fait utiliser le simulateur pour vérifier le comportement fonctionnel de notre application. Il y a une barre à outil de débuggage avec les fonctions play/pause/reset/step over/step into..., la possiblité de mettre des points d'arrêt et de visualiser la valeurs des registres spécifiques de manière très efficace (sur la partie gauche, l'onglet I/O View):
Il est tout d'abord nécessaire d'effectuer la connexion avec la carteSTK500 dans le menu Tools/Program AVR/connect... Bien entendu, la carte doit être branchée.
Pour la mise à jour, il suffit de lire les instructions données lors de l'invite. Il n'y a pas de problème particulier.
Pour la programmation de la carte, il est nécessaire de:
C'est tout.
On se reconnecte ensuite à la carte. La programmation est de type "in situ" (ISP). Il suffit alors d'indiquer le fichier .HEX à programmer (en flash)
Dans un premier temps, en laissant toute la configuration par défaut (dans les autres onglets sur la figure précédente), le programme fonctionne. Il faudra revenir dessus pour une configuration plus précise (validation du watchdog, ...)
Pour tester notre magnifique application, on peut mettre un connceteur entre le port B (tous les ports sont disponibles sur la carte) et les diodes LEDs (il y a sur la carte 8 diodes LEDs et 8 interrupteurs).