Informatique Industrielle : TP 2 – Microcontrôleur Manipulation des Leds et des Bouton
Télécharger PDFObtenir le pack complet des cours, TDs, TPs et projets sur Informatique Industrielle : Microprocesseur & Microcontrôleur!
Vous souhaitez maîtriser les microprocesseurs et Microcontrôleurs ? Ne cherchez plus, nous avons le pack parfait pour vous.

Accédez à une collection complète des supports de cours, des travaux dirigés (TD) corrigés, des travaux pratiques (TP) et des projets.
Obtenir le pack maintenantTP2 Microcontrôleurs Page 1 TP 2 – Microcontrôleur Manipulation des Leds et des Boutons poussoirs
TAYARI LASSAAD MAITRE TECHNOLOGUE ISET GABESe-mail :
site web :
LE31 Année 2014/2015 TP2 Microcontrôleurs Page 2 1. Objectifs Manipuler les Leds et les boutons poussoirs de la platine EasyPic7. Le schéma des fonctions attachées aux Ports du μC est rappelé ci-dessous : Etant donné que vous allez vous servir des leds (broches en sortie) et des boutons poussoirs (broches en entrée), vous devrez configurer correctement les registres de direction TRISx, le switch SW3 (fonction Leds), le cavalier J17 (fonction boutons poussoirs) et le switch pull-down (fonction boutons poussoirs). Attention, en raison du câblage, il n’est pas possible d’utiliser en même temps les Leds et les boutons poussoirs sur un même port. 2.
Exercice 1
: Clignotement alternatif des leds du port C et utilisation d'une temporisation L’objectif est ici d’allumer tour à tour la moitié des leds du port B selon le principe suivant : 1. Configurer le switch SW3 pour autoriser l’utilisation des Leds du PortC 2. Créer sous MikroC un nouveau projet LedPortC (répertoire TP2/Exercice1). 3. L’horloge système sera de 32 MHz (utilisation de la PLL) 4. Ecrire le programme (projet Exercice1 sous /TP2/Exercice1) permettant de basculer automatiquement les leds du portC. Pour cela, vous fixerez le port C en sortie (TRISC = 0x00) et initialiserez le registre LATC à la valeur 0xAA. Par inversion des bits de ce registre dans une boucle «do-while », vous basculer l’état des leds (LATC = ~LATC). Utilisez une temporisation de 1000 ms. 5. Compilez et charger le code .hex dans le μC. 6. Vérifier le bon fonctionnement de votre code. En cas de problème, passer en mode debug. 7. Avant de passer à l’exercice suivant, faites vérifier la bonne marche de votre programme avec le simulateur ISIS8. 3.
Exercice 2
:Clignotement alternatif des leds du port C et utilisation du bouton poussoir RB0. RB0. Après avoir éteint votre platine, mettre le cavalier J17 sur la position Vcc et le switch du port B en pull-down. 1. Selon vous, si on appuie sur le bouton poussoir RB0, que devient le niveau logique sur la broche RB0 du μC ? TP2 Microcontrôleurs Page 3 Le basculement devra avoir lieu sur le front descendant de l’impulsion. Pour cela, vous utiliserez la fonction Button de la librairie mikroE (pour voir la liste des bibliothèques : View > Librairy Manager). Cette fonction reçoit en entrée l’adresse du port (&PORTB ici), la broche du port (0 ici), une durée en ms (évite les rebonds, 1 ms ici), le niveau actif (haut 1 ou bas 0) et renvoie une valeur (0 ou 255) selon l'état actif du bouton. Button(&PORTB, 0, 1, 1) : niveau actif haut sur la broche RB0 Button(&PORTB, 0, 1, 0) : niveau actif bas sur la broche RB0 On parle ici de niveau et non de front. Pour détecter un front, il vous faudra utiliser une variable de test (drapeau) qui sera mise à 1 lors de l'appui sur le bouton puis à 0 lorsqu'il sera relâché. 2. Démarrer un projet Exercice2 sous /TP2/Exercice2 3. Dans le code C, configurer le PORTC en sortie, initialiser le registre LATC à la valeur 0xAA et configurer la broche RB0 en entrée (TRISB0_bit = 1;) 4. Dans une boucle «do-while », tester la valeur renvoyée par la fonction button (cf. procédure) 5. Compiler, programmer la puce et tester le fonctionnement de votre programme Procédure :
Configuration des registres Mettre drapeau à 0 Faire
si Bouton à l'état haut, drapeau = 1 si drapeau == 1 et Bouton à l'état bas, inverser PORTC et drapeau = 0; Tant que (1) BON COURAGE