Auteur Sujet: Fast PWM et phase correct PWM  (Lu 167 fois)

Benoit92

  • Jr. Member
  • **
  • Messages: 88
    • Voir le profil
Fast PWM et phase correct PWM
« le: octobre 27, 2017, 08:40:33 pm »
J'ai vu que l'on pouvait modifier la fréquence de récurrence  du PWM.
Par exemple, le Timer 2 peut modifier  la fréquence de récurrence  du PWM sur les broches 3 et 11.
//TCCR2B = TCCR2B & B11111000 | B00000001;    // set timer 2 divisor to     1 for PWM frequency of 31372.55 Hz
//TCCR2B = TCCR2B & B11111000 | B00000010;    // set timer 2 divisor to     8 for PWM frequency of  3921.16 Hz
//TCCR2B = TCCR2B & B11111000 | B00000011;    // set timer 2 divisor to    32 for PWM frequency of   980.39 Hz
  TCCR2B = TCCR2B & B11111000 | B00000100;    // set timer 2 divisor to    64 for PWM frequency of   490.20 Hz
//TCCR2B = TCCR2B & B11111000 | B00000101;    // set timer 2 divisor to   128 for PWM frequency of   245.10 Hz
//TCCR2B = TCCR2B & B11111000 | B00000110;    // set timer 2 divisor to   256 for PWM frequency of   122.55 Hz
//TCCR2B = TCCR2B & B11111000 | B00000111;    // set timer 2 divisor to  1024 for PWM frequency of    30.64 Hz
Question :
Ces fréquences correspondent t-il à un :
 - mode « Fast PWM Mode »
ou à un
 - mode « Phase Correct PWM Mode »
?????????

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 704
  • 100% Arduino et N
    • Voir le profil
Re : Fast PWM et phase correct PWM
« Réponse #1 le: octobre 28, 2017, 08:54:57 am »
Et la balise code ?

Une petite recherche sur le forum, la question à déjà été traitée.
http://forum.locoduino.org/index.php?topic=279.msg2614#msg2614

Et la fiche produit de l'ATMega328, très détaillée...
« Modifié: octobre 28, 2017, 09:02:49 am par Dominique »
L'art d'obtenir de bonnes réponses, implique de poser de bonnes questions.

Benoit92

  • Jr. Member
  • **
  • Messages: 88
    • Voir le profil
Re : Fast PWM et phase correct PWM
« Réponse #2 le: octobre 28, 2017, 01:28:26 pm »
Merci Dominique,
Première chose : pas touche au Timer 2. pourquoi ??

Merci pour ta réponse rapide.

Bon, donc il y a trois Timers (UNO ou MEGA) :
Le Timer 0 correspond aux broches 5 et 6
Le Timer 1 correspond aux broches 9 et 10
Le Timer 2 correspond aux broches 3 et 11.

Première chose : pas touche au Timer 2.
Cà tombe bien puisque je commande le pont en H avec les broches 5 et 6 donc le Timer 1.

D'après ce que j'ai compris la fréquence PWM "de base" est de 400 Hz.
Si je veux la faire varier, il me suffit de charger la bibliothèque qui va bien.

Par le gestionnaire de bibliothèque, j'ai trouvé une biblio qui s'appelle TimerOne by Jesse Tane et d'autres auteurs.
Est-ce bien cela?
Merci d'avance

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 689
    • Voir le profil
Re : Fast PWM et phase correct PWM
« Réponse #3 le: octobre 28, 2017, 02:31:48 pm »
M’enfin, il y a quelques temps, je te suggère d’aller lire l’article http://www.locoduino.org/spip.php?article202 où il y a toutes les réponses à tes questions. Il y a même la bibliothèque pour changer la fréquence à la fin de l’article.

A quoi ça sert qu’on s’enquiquine à écrire ces trucs ? Sérieusement ? A croire que tu ne l’as pas lu
« Modifié: octobre 28, 2017, 02:34:50 pm par Jean-Luc »

Benoit92

  • Jr. Member
  • **
  • Messages: 88
    • Voir le profil
Re : Fast PWM et phase correct PWM
« Réponse #4 le: octobre 28, 2017, 05:47:36 pm »
1) C'était simplement une remarque que j'ai vu sur le lien :
http://forum.locoduino.org/index.php?topic=279.msg2614#msg2614
Comme j'ai l'intention d'utiliser le Timer2, j'essaie simplement de comprendre le sens de cette remarque
(qui peut éventuellement être pertinente : j'en sais rien !!!).

2) pour la réponse à ma question initiale : c'est bon, j'ai trouvé sur ton lien :
    -  Le timer 0 est configuré avec une division par 64 et la PWM est en Fast PWM Mode ;
    -  Les timers 1 et 2 sont configurés avec une division par 64 et la PWM est en Phase Correct PWM Mode.


3) Sur l'include en en-tête du programme (#include <PWMFreq.h>), contrairement aux autres include (par exemple #include <Servo.h>), le terme PWMFreq ne passe pas en rouge.
Est ce normal ?
« Modifié: octobre 28, 2017, 05:57:04 pm par Benoit92 »

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 704
  • 100% Arduino et N
    • Voir le profil
Re : Fast PWM et phase correct PWM
« Réponse #5 le: octobre 28, 2017, 05:59:34 pm »
Je pense qu'il serait temps de réfléchir de ton côté pour éviter que tous ceux qui suivent ce forum reçoivent un mail à chaque fois que tu penses à quelque chose  :-\
Surtout avec 3 fils ouverts ! Que dis-je : 4  :o

Tu nous feras part de tes résultats avec quelques photos, ça nous fera plaisir.

En ce qui concerne la couleur "pas rouge" regardes la notion de mots-clés sur le site Arduino.cc

Bon courage
« Modifié: octobre 28, 2017, 06:06:08 pm par Dominique »
L'art d'obtenir de bonnes réponses, implique de poser de bonnes questions.

Jean-Luc

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 689
    • Voir le profil
Re : Fast PWM et phase correct PWM
« Réponse #6 le: octobre 28, 2017, 07:29:56 pm »
Oui, j’ai pas du remplir le fichier keywords.txt correctement