ESP32/ESP32S2 AnalogWrite : Guide de configuration du canal PWM
AnalogWrite. La bibliothèque
simplifie la configuration des canaux PWM sur ces plateformes. Cet article explore les aspects clés de la bibliothèque ESP32-ESP32S2 AnalogWrite, y compris les configurations de canaux PWM, pour aider les développeurs à optimiser leurs projets et à améliorer le classement des moteurs de recherche grâce à ce guide pratique. .Qu'est-ce que la bibliothèque AnalogWrite ?
AnalogWrite
étend les fonctionnalités des cartes ESP32 et ESP32S2 en permettant un contrôle précis sur PWM broches. Bien que l'ESP32 dispose de capacités PWM intégrées, leur configuration directe peut être complexe. Cette bibliothèque rationalise la configuration et l'utilisation des canaux PWM, permettant aux développeurs d'ajuster plus facilement les sorties des broches, telles que la gradation des LED, le contrôle des moteurs ou la génération de signaux audio.Quelles sont les caractéristiques clés ?
- Configuration PWM facile : La bibliothèque simplifie la configuration PWM canaux et permet aux développeurs de contrôler facilement les cycles de service.
- Prend en charge plusieurs canaux : ESP32 et ESP32S2 peuvent utiliser plusieurs canaux PWM simultanément, améliorant ainsi leur capacité à contrôler plusieurs composants tels que des moteurs et des LED.
- Fréquences réglables : Les utilisateurs peuvent ajuster le PWM fréquence pour s'adapter à diverses applications, telles que les signaux audio ou le contrôle moteur de précision.
- Intégration transparente : La bibliothèque s'intègre facilement à Arduino IDE, facilitant le développement rapide des projets IoT.
Aperçu de la configuration des canaux PWM
Paramètre MLI Canaux
-
PWM Canal Portée : Jusqu'à 16 canaux sont disponibles, ce qui signifie que vous pouvez contrôler 16 appareils différents simultanément.
MLI Configuration de la fréquence
-
Plage de fréquences : Entre 1 Hz et 40MHz.
-
Choisissez une fréquence appropriée en fonction de votre application spécifique. Par exemple:
-
Basse fréquence (500 Hz) : convient aux LED gradation.
-
Haute fréquence (au-dessus de 20 kHz) : utilisé pour pilotes de moteur pour éviter les bruits audibles.
-
Cycle de service Ajustement
-
Cycle d'utilisation plage : 0 % à 100 %.
-
Modifiez le rapport cyclique pour contrôler la durée pendant laquelle le signal reste « activé » dans un cycle donné. Ceci est crucial pour gérer la luminosité, la vitesse ou la tension.
Exemple de code de base
// Initialize M5StickC Plus2 #include Servo myservo; void setup() { myservo.attach(2); // Attach the servo motor to GPIO2 } void loop() { myservo.write(90); // Rotate the servo to 90 degrees delay(1000); // Wait for 1 second myservo.write(180); // Rotate the servo to 180 degrees delay(1000); // Wait for 1 second }
Fonctions clés
-
write() : définit le cycle de service du servomoteur ou de la sortie PWM.
-
writeMicroseconds() : définit la largeur d'impulsion (en microsecondes) du servomoteur.
-
read() : Récupère l'angle actuel du servomoteur.
-
readMicroseconds() : récupère la largeur d'impulsion actuelle (en microsecondes) du servomoteur.
-
attach() : attache un servomoteur ou une sortie PWM à une broche GPIO spécifiée.
-
attachPWM() : attache une sortie PWM à une broche GPIO spécifiée.
-
attad() : vérifie si un servomoteur ou une sortie PWM est déjà attaché à la broche GPIO spécifiée.
-
attachInvert() : attache un signal PWM inversé à une broche GPIO spécifiée.
-
attachPin() : attache un servomoteur ou une sortie PWM à la broche GPIO spécifiée.
-
writePwm() : définit le rapport cyclique de la sortie PWM.
-
detach() : détache le servomoteur ou la sortie PWM de la broche GPIO.
-
pause() : arrête temporairement le signal PWM.
-
resume() : reprend le signal mis en pause.
-
setFrequency() : définit la fréquence de la sortie PWM.
-
setResolution() : définit la résolution de la sortie PWM.
-
tone() : génère un son sur un buzzer à une fréquence spécifiée.
-
noTone() : arrête le son généré sur le buzzer.
-
printDebug() : imprime les informations de débogage.