Vous êtes sur la page 1sur 6

Compte-rendu de TP
UE ELECTRONIQUE S5 : SLEEL602 -
ECUE Microprocesseur

Verdier Francois

Courtois Jonathan

PAR :
MEBARKIA Sana
SERI PAUL jaurel
Compte rendu TP1 - Microprocesseur

Exercice 1 :

A partir de ce programme, vous devez faire un programme qui


permet de faire clignoter la LED (à un rythme visible). Pour les
appels de sous-programmes vous devrez utiliser les
instructions call ou rcall et les instructions ret pour les retours
de sous-programmes.

MAIN
Mettre le bit PORTB5 en sortie

PORTE PIN 4 <- 1


LED ON

CALL TEMPO
TEMPO

PORTE PIN 4 <- 0


LED OFF

TEMPO CALL TEMPO


cbi

Pour définir si le portE4 est une entrée ou une sortie, on met le bit DDRE4 (DDRE le registre
de direction) à 1 pour une sortie. On utilisera par la suite les instructions sbi et cbi (mettre le
bit à 1 et à 0 respectivement) pour allumer ou éteindre la LED connecté au port D2.

Le clignotement doit être perceptible à l’œil, on choisit donc une temporisation de 1 seconde.
On met la valeur 82 dans R16 comme vue en TD.

L’instruction rjmp permet de revenir à Ledon et ainsi avoir une boucle pour le clignotement
de la LED
Exercice 2 :
Vous devez maintenant brancher un bouton-poussoir sur la broche
D12-D13 de la carte Grove-Megan Shield. A partir de ce bouton-
poussoir, vous devez contrôler le clignotement de la LED (en
l’occurrence, vous devez éteindre la LED si le bouton est enfoncé et
la faire clignoter si le bouton n’est pas enfoncé).

MAIN
Mettre le bit PORTB5 en sortie

LED OFF

OUI

BOUTON

ENFONCER

NON

TEMPO

LED ON

TEMPO

On commence par mettre le bit portE4 à 0 pour éteindre


la LED.
On cherche ensuite à lire la valeur du portB, pour ce faire on utilise IN pour envoyer cette
valeur dans R19.Grâce à l’instruction andi R19,0x40 on isole le bit qui nous intéresse
(opération logique) et qui vaut 64 (sur 8 bits : 01000000).
La comparaison donne 0 si le bouton est enfoncé et 64 s’il est relâché. Le test breq est réussi
si la comparaison vaut 0 (Z=1) et le programme retourne à ledoff (ligne 10) ( LED éteinte),
sinon le programme passe à l’instruction suivante et la LED clignote tant que le test n’est pas
réussi.

Conclusion :

Vous aimerez peut-être aussi