Vous êtes sur la page 1sur 5

[Date] Compte rendu

[Sous-titre du document]

Assonken Atanken Ben


[NOM DE LA SOCIETE]
Intro

Lors de ces séances de TP qui portait sur les timers, nous avons pour but de réaliser plusieurs
programmes afin de réaliser plusieurs exercices.

Afin de pouvoir correctement lancer ATmel studio nous devons tout d’abord l’ouvrir puis nous
allons créer un projet, et pour cela nous allons Sélectionner "New" puis "Project" et nous allons
choisir le projet C exécutable «GCC C Exécutable Project » et bien sûr il ne faut pas oublier de choisir
un nom pour le projet et pour la solution. Puis nous allons ensuite choisir le type de processeur ciblé,
ici dans notre cas ce sera un ATmega32u4, mais cela peut différer selon processeur.

Programme 2
Afin de pouvoir réaliser le premier programme, nous allons nous rendre sur Celene afin de récupérer
un code nous permettant de faire clignoté la LED2 au rythme de 500ms.

Mais ce programme ne correspond pas à l’ATmega32U4 mais a un autre processeur, ce qui signifie
que nous devons adapter les registres à celle de l’ATmega32u4 et pour cela nous devons ouvrir la doc
technique de l’ATmega32u4 afin de pouvoir les changer et de les faire correspondre.
Une fois que nous avons correctement changé les registres nous pouvons alors maintenant tester
notre programme et vérifier s’il fonctionne correctement.

Programme 4
Nous allons maintenant lors de cet exercice 3 réaliser un programme qui permet de compter le
nombre d’appui sur un bouton afin de pouvoir allumer une LED. Sur ce programme nous allons le
réaliser en CodeWizard et pour cela nous allons ouvrir ATmel studio puis sélectionner « file » ensuite
« New » et « Project CodeWizard ». Une fois cela de fais nous devons arriver sur cette fenêtre.

La également il faut faire très attention à ce que ce soit bien le processeur ATmega32u4 qui soit bien
sélectionné et pas un autre.

Pour pouvoir mettre les différents ports en entrées en entrés ou en sortie nous allons ouvrir l’onglet
« port ».
Pour ce programme nous allons devoirs configurer la LED 1 ainsi que les boutons poussoir 1,2 et 3 en
sortie. Nous allons par la suite régler les interruptions afin de pouvoir faire clignoter la Led+ ou – vite
ainsi que le temps des interruptions et pour cela nous allons sélectionner dans l’onglet « external
interrupts » le port INT6 et étant donné que ce port a plusieurs entrées allant de PCINT0 à PCINT7,
et celle qui nous intéresse et PCINT6 donc nous allons alors sélectionner PCINT6. Comme nous
voulons que la LED s’allume lors de 5 appuis, c’est-à-dire lors de 5 fronts montants et pour cela nous
allons choisir le mode « falling edge ».

Une fois cela de fait nous allons configurer le timer, pour cela nous allons aller dans l’onglet
« Timers/conters ». Pour ce timer nous allons utiliser le timer 1 car comparer au Timer 0 il est sur 16
bits et le timer 0 lui est sur 8 bits. Comme source pour notre horloge nous allons prendre le
« système clock » avec une valeur de 15,625kHz. Et comme mode nous allons prendre le mode « CTC
top=OCR1A ». Afin de pouvoir déterminer la valeur de notre interruption nous allons choisir le mode
d’interruption « compare A Match » et étant donné que nous voulons une valeur d’interruption de
50ms nous allons dans la case « comp A » rentré la valeur de 1EE0. Nous allons ensuite vérifié que la
période de notre timer et bien de 50ms, ici elle est légèrement élevée mais ce n’est pas dérangeant.
Une fois la configuration des entrées sortie et du timer est terminé nous allons pouvoir générer notre
code et pour cela nous allons faire « programme » >> « générate, save and exit » une fois cela de
fais il faut bien faire attention à mettre son projet ainsi que son code ans le même dossier. Puis nous
allons voir notre code de générer mais il n’est pas encore complet.

Vous aimerez peut-être aussi