TP 3 : Signal PWM

Il s'agit de mettre en pratique l'étude du module Comparaison/Capture/PWM vue au TD 3.

1. Luminosité variable dans la LED1 connectée sur RC1

Nom du projet : PWM1

La configuration du Timer 2 est celle vue au TP précédent sur les timers avec une période de TMR2IF fixée à 5ms, consécutive à l'établissement de PR2 à 249, un prescaler du Timer 2 fixé à 16 alors que le postscaler se voit imposé la valeur 15.

  1. Copier le projet TIMER3 du TP précédent et nommer le nouveau PWM1.
  2. Configurer le registre CCP1CON avant la boucle infinie de la fonction main.
  3. Attribuer une valeur à CCPR1L pour fixer le rapport cyclique du signal PWM à 10%.
  4. Penser à configurer RC1 en sortie pour pouvoir piloter la LED1.
  5. Tester le programme obtenu.

2. Application de synthèse 1 : Allumage progressif de la LED1

Nom du projet : PWM2

Il s'agit ici d'utiliser l'interruption mise en place pour le Timer 2 afin de réaliser un allumage progressif de la LED1.

Au moment de la mise sous tension, la LED1 est éteinte et commence dès lors à s'illuminer avec pour objectif d'être totalement allumée en 5s. Elle s'éteint alors et le cycle recommence.

  1. Réaliser une copie du projet PWM1 et la nommer PWM2.
  2. Ecrire le programme répondant à ce cahier des charges.

3. Application de synthèse 2 : Télérupteur avec Allumage progressif et extinction progressive de la LED1

Nom du projet : PWM3

On reprend l'exercice de l'interrupteur bistable qui pour rappel impliquait le fonctionnement suivant : un appui sur BP0 allumait la LED4 ; un nouvel appui sur BP0 éteignait la LED4 ...

Cette fois, on agit sur la LED1.

La LED1 s'allume progressivement en 5s (Eteinte au moment de l'appui, elle s'allume totalement après 5s de progression constante de la luminosité) après un appui sur BP0.

Un nouvel appui sur BP0 provoque l'extinction progressive de la LED1 en 5s.

  1. Copier le projet PWM2 et appeler la copie PWM3.
  2. Programmer cette nouvelle application et tester le programme.