Vous êtes sur la page 1sur 14

TP N°1

Initiation à l’assembleur Atmega16


avec Avr_Studio
 
I Objectif :

 Le but de ce TP c’est d’apprendre à utiliser le logiciel


Avr Studio4 de Atmel afin de programmer en
assembleur atmega16 .
 Ceci se fera en 4 points a savoir :
1. Création d’un nouveau projet avec choix du simulateur
2. Ecriture du programme en assembleur Atmega
3. Compilation (Traduction) du programme
4. Exécution du programme en pas a pas et vérification
des résultats
II Le logiciel Avr studi4 :

 Avr Studio est un IDE pour système d’exploitation


Windows, permettant d’écrire des programmes en
assembleur atmega ou en langage C , de les compiler
et ensuite les tester sur PC (émulation) ou
directement sur carte prototype atmega ( STK xxx)
III création du projet :
1 Lancer AVR studio
2 Dans la barre de Menu de la fenetre de la page4 choisir Project New
project
Vous obtenez la fenêtre ci dessous
Choisir alors l’option AtmelAVRAssembler pour travailler en assembleur
Introduire le nom du projet dans la case Project name : TP1binome ?? ensuite taper
sur Next
3 On obtient alors la fenêtre suivante : Choisir
AVR Simulator et Atmega16 ensuite Finish
4 On obtient alors la fenêtre d’écriture du programme, introduire alors
les 6 premières instructions du programme de l page suivante.
Le programme a introduire

.NOLIST
.INCLUDE "m16def.inc"
.LIST
.CSEG
.ORG $0000
;definition pile
ldi R16, HIGH(RAMEND) ; Init MSB stack 1ere instruction du prog
out SPH,R16
ldi R16, LOW(RAMEND) ; Init LSB stack
out SPL,R16;prog princ
 
ldi r24,$2b
sts $0069,r2 ; 6ieme Instruction
ldi r26,$70
st x,r24
ldi r28,10
ldi r24,$9c
st -x,r24
dec r28
brne pc-3
Une fois ceci fait on va compiler le programme c.a.d le
traduire en cliquant sur Build ensuite Build
 On obtient alors la fenêtre suivante

Fenetre du Build
Si la fenêtre Build ne contient pas d’erreurs, vous pouvez
allez à l’étape suivante sinon corriger la ligne de code qui
est source d’erreur et répéter l’opération 4 et 5.

 5 Traduire le programme écrit en assembleur vers le langage


machine Héxadécimal de facon manuelle.
 c.a.d a la main avec un stylo et une feuille pour cela utiliser le
menu du Help sur la Fenetre principal du logiciel
AVRStudio.
 Ensuite cliquer sur AVRToolsUserguide et ensuite AVR
Assembler et q lq fin sur Instructions du logiciel Avr studio
pour avoir le détail du code machine de chaque instruction du
programme.
 Comme le montre la page suivante 
  
Fenetre du menu Help
Exemple du détails de l’instruction LDI Rn,Valeur
 avec la rubrique Help
6 Vérifier la véracité de la traduction en consultant la
fenêtre Mémoire2 chapitre programme

Code machine
7 Maintenant on va passer à la simulation du programme
introduit, pour cela introduire la commande
Debug -- startdebuging

 Appuyer sur la touche F11 pour utiliser le mode pas à pas


 A chaque instruction executée tester son action sur les registres
et la mémoire de données SRAM
 Donner vos commentaires à chaque fois.
 Donner votre conclusion sur le travail realise