Outils pour utilisateurs

Outils du site


tpir

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
tpir [2017/03/20 17:08]
bvandepo
tpir [2018/02/24 00:59] (Version actuelle)
bvandepo
Ligne 55: Ligne 55:
   - Dessiner l'​allure des chronogrammes pour l'​envoi d'une trame de répétition depuis la télécommande 0x1234 pour la touche 0x56.   - Dessiner l'​allure des chronogrammes pour l'​envoi d'une trame de répétition depuis la télécommande 0x1234 pour la touche 0x56.
  
- + 
 +{{http://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_pic/​validation.png}}
  
  
  
 ===Configuration du timer 2 pour la génération du signal modulé à 38Khz=== ===Configuration du timer 2 pour la génération du signal modulé à 38Khz===
-[[http://​homepages.laas.fr/​bvandepo/​files/​iut/​Atmega328p_timer2.pdf]]+Consulter la documentation du timer 2 de l'​ATMEGA328P: ​[[http://​homepages.laas.fr/​bvandepo/​files/​iut/​Atmega328p_timer2.pdf]]
  
 L'​Atmega328 dispose de 4 timers : L'​Atmega328 dispose de 4 timers :
Ligne 96: Ligne 97:
  
  
-Proposer l'​algorithme pour la fonction **void setup(void)** qui permet de configurer le timer en réglant les registres TCCR2A, TCCR2B, OCR2A et OCR2B pour qu'il soit prêt à générer le signal à 38Khz. Vous penserez également à configurer la broche en sortie et à lui imposer un état bas. +Proposer l'​algorithme pour la fonction **void setup(void)** qui permet de configurer le timer en réglant les registres TCCR2A, TCCR2B, OCR2A et OCR2B pour qu'il soit prêt à générer le signal à 38Khz. Vous penserez également à configurer la broche en sortie et à lui imposer un état bas.  
- +
-Proposer l'​algorithme pour la fonction **void loop(void)** qui permet de piloter le timer pour activer la sortie à 38Khz pendant 200us puis la désactiver pendant 400us. ​+
  
 Les fonctions **void mark(int time)** et **void space(int time)** sont fournies. Elles permettent respectivement d'​activer (ou inhiber) le signal à 38 kHz pendant time us. Les fonctions **void mark(int time)** et **void space(int time)** sont fournies. Elles permettent respectivement d'​activer (ou inhiber) le signal à 38 kHz pendant time us.
Ligne 121: Ligne 120:
 ////////////////////////////////////////////////////////////////////////​ ////////////////////////////////////////////////////////////////////////​
 </​file>​ </​file>​
 +
 +
 +Proposer l'​algorithme pour la fonction **void loop(void)** qui permet de piloter le timer pour activer la sortie à 38Khz pendant 200us puis la désactiver pendant 400us.
  
  
Ligne 129: Ligne 131:
  
 Proposer l'​algorithme pour la fonction **void ​ sendNECFrameRepeat()** qui permet d'​envoyer la trame NEC de répétition. Proposer l'​algorithme pour la fonction **void ​ sendNECFrameRepeat()** qui permet d'​envoyer la trame NEC de répétition.
 +
 +
 +{{http://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_pic/​validation.png}}
  
  
Ligne 134: Ligne 139:
 ==== Codage et tests ==== ==== Codage et tests ====
  
-Implémenter les fonctions **void setup(void)** et **void loop(void) pour configurer la sortie PWM à 38Khz pendant 200us puis inactive pendant 400us. <color #​FF0000>​** Programmer la maquette et vérifier à l'aide d'un oscilloscope ​le signal généré. Faire valider.**</​color>​+Implémenter les fonctions **void setup(void)** et **void loop(void)** pour configurer la sortie PWM à 38Khz. <color #​FF0000>​** Programmer la maquette et vérifier ​la fréquence du signal obtenu sur la broche 3 à l'aide d'un oscilloscope.**</​color>​
  
-Implémenter les fonctions **void sendNECBYTE(unsigned char data)**, **void sendNECFrame(unsigned int adr, unsigned char cmd)** et **void ​ sendNECFrameRepeat()** et proposer un programme principal de test qui permette de balayer plusieurs adresses et numéros de commandes. Vous veillerez à assurer un temps d'​attente entre l'​émission de 2 trames consécutives pour obtenir au minimum une durée de 115ms entre chaque début de trame. ​+ 
 +{{http://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_pic/​validation.png}} 
 + 
 + 
 +Implémenter les fonctions **void sendNECBYTE(unsigned char data)**, **void sendNECFrame(unsigned int adr, unsigned char cmd)** et **void ​ sendNECFrameRepeat()** et proposer un programme principal de test qui permette de balayer plusieurs adresses et numéros de commandes. Vous veillerez à assurer un temps d'​attente entre l'​émission de 2 trames consécutives pour obtenir au minimum une durée de 110ms entre chaque début de trame. ​ 
 + 
 + 
 +{{http://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_pic/​validation.png}}
  
  
 Programmer la carte Arduino et fermer le cavalier permettant de relier les Leds à la broche 3 de l'​Arduino. Utiliser une caméra de téléphone portable pour visualiser l'​activité de la Led infrarouge et demander à l'​enseignant de valider avec le récepteur/​démodulateur infrarouge. Programmer la carte Arduino et fermer le cavalier permettant de relier les Leds à la broche 3 de l'​Arduino. Utiliser une caméra de téléphone portable pour visualiser l'​activité de la Led infrarouge et demander à l'​enseignant de valider avec le récepteur/​démodulateur infrarouge.
 +  ​
 +
 +{{http://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_pic/​validation.png}}
  
  
tpir.txt · Dernière modification: 2018/02/24 00:59 par bvandepo