start:arduino:pwm
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
start:arduino:pwm [2022/12/20 14:43] – [Bibliothèques pour travailler avec PWM] gerardadmin | start:arduino:pwm [2023/01/27 16:08] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | =====Comment changer la fréquence PWM d' | + | ========Comment changer la fréquence PWM d' |
: Guide épique | : Guide épique | ||
+ | |||
+ | [[https:// | ||
Le microcontrôleur possède plusieurs temporisateurs qui peuvent exécuter différentes fonctions, telles que la génération d'un signal PWM . Pour que le temporisateur génère un signal PWM, il doit être préconfiguré en éditant le registre du temporisateur. Lorsque nous travaillons dans l'IDE Arduino, les minuteries sont configurées à notre insu dans la bibliothèque Arduino.h et obtiennent en fait les paramètres souhaités par les développeurs. Et ces paramètres ne sont pas très bons : la fréquence PWM par défaut est faible et les minuteries ne sont pas utilisées à leur plein potentiel. Regardons le PWM standard de l' | Le microcontrôleur possède plusieurs temporisateurs qui peuvent exécuter différentes fonctions, telles que la génération d'un signal PWM . Pour que le temporisateur génère un signal PWM, il doit être préconfiguré en éditant le registre du temporisateur. Lorsque nous travaillons dans l'IDE Arduino, les minuteries sont configurées à notre insu dans la bibliothèque Arduino.h et obtiennent en fait les paramètres souhaités par les développeurs. Et ces paramètres ne sont pas très bons : la fréquence PWM par défaut est faible et les minuteries ne sont pas utilisées à leur plein potentiel. Regardons le PWM standard de l' | ||
^Minuteur^ Épingles^ Fréquence^ Résolution^ | ^Minuteur^ Épingles^ Fréquence^ Résolution^ | ||
- | |Minuterie 0| D5 et D6| 976Hz| 8 bits (0-255)| | + | |Minuterie 0| D5 et D6| **976Hz**| 8 bits (0-255)| |
- | |Minuterie 1| D9 et D10| 488Hz| 8 bits (0-255)| | + | |Minuterie 1| D9 et D10| **488Hz**| 8 bits (0-255)| |
- | |Minuterie 2| D3 et D11| 488Hz| 8 bits (0-255)| | + | |Minuterie 2| D3 et D11| **488Hz**| 8 bits (0-255)| |
En fait, tous les temporisateurs peuvent facilement émettre un signal PWM de 64 kHz , et le temporisateur 1 – c'est même 16 bits, et à la fréquence qui lui a été donnée Arduino, pourrait fonctionner avec une résolution de 15 bits au lieu de 8, et cela, soit dit en passant, 32768 gradations de remplissage au lieu de 256 ! Alors pourquoi cette injustice ? La minuterie 0 est en charge de la synchronisation et est réglée de manière à ce que les millisecondes s' | En fait, tous les temporisateurs peuvent facilement émettre un signal PWM de 64 kHz , et le temporisateur 1 – c'est même 16 bits, et à la fréquence qui lui a été donnée Arduino, pourrait fonctionner avec une résolution de 15 bits au lieu de 8, et cela, soit dit en passant, 32768 gradations de remplissage au lieu de 256 ! Alors pourquoi cette injustice ? La minuterie 0 est en charge de la synchronisation et est réglée de manière à ce que les millisecondes s' | ||
Ligne 244: | Ligne 246: | ||
*Voir exemples dans le dossier avec la bibliothèque ! | *Voir exemples dans le dossier avec la bibliothèque ! | ||
- | Bibliothèque | + | **GyverPWM |
+ | |||
+ | |||
+ | *Vous permet de définir n' | ||
+ | *Sélection de bits : 4-8 bits pour les temporisateurs 8 bits, 4-16 bits pour les temporisateurs 16 bits (à 4 bits, la fréquence PWM est de 1 MHz) | ||
+ | *Sélection du mode PWM : Fast PWM ou Phase-correct PWM (favorable aux moteurs) | ||
+ | *Génération de fréquences de méandres de 2 Hz à 8 MHz sur la broche D9 avec une précision maximale | ||
+ | *Un seul canal est disponible lorsque vous travaillez avec des minuteries 8 bits (par exemple, sur un ATmega328, uniquement D3, D5, D9 et D10) | ||
+ | *Il existe des fonctions pour reconfigurer les sorties PWM standard sans perdre le PWM | ||
+ | *La bibliothèque est écrite de manière très simple, et vous pouvez en prendre des morceaux de code | ||
+ | *Voir exemples dans le dossier avec la bibliothèque ! | ||
/home/chanteri/www/fablab37110/data/attic/start/arduino/pwm.1671543817.txt.gz · Dernière modification : 2023/01/27 16:08 (modification externe)