5.4.7 Projet 4.1 Jouer Joyeux Anniversaire

1. Description
Il y a un élément amplificateur audio sur la carte d’extension pour voiture, qui sert d’équipement d’amplification externe pour jouer de la musique.
Dans ce projet, nous allons l’utiliser pour jouer un morceau de musique.
2. Connaissances sur le composant
Buzzer passif : L’amplificateur audio (comme le buzzer passif) n’a pas d’oscillation interne. Pour le contrôler, il faut appliquer des signaux carrés de différentes fréquences sur la broche positive du composant et relier la broche négative à la masse afin de faire produire des sons de fréquences différentes par l’amplificateur.
3. Broche de contrôle
Buzzer passif |
25 |
|---|---|
\ |
4. Code de test
#include <BuzzerESP32.h>
BuzzerESP32 buzzer(25); // Initialize buzzer on GPIO25
void setup()
{
buzzer.setTimbre(30); // Set timbre (sound quality)
birthday(); // Play birthday melody
}
void loop()
{
// Empty loop as melody plays only once at startup
}
void birthday()
{
// Play birthday melody - parameters are (frequency, duration)
buzzer.playTone(294, 250); // D4
buzzer.playTone(440, 250); // A4
buzzer.playTone(392, 250); // G4
buzzer.playTone(532, 250); // C5 (slightly sharp)
buzzer.playTone(494, 250); // B4
buzzer.playTone(392, 250); // G4
buzzer.playTone(440, 250); // A4
buzzer.playTone(392, 250); // G4
buzzer.playTone(587, 250); // D5
buzzer.playTone(532, 250); // C5 (slightly sharp)
buzzer.playTone(392, 250); // G4
buzzer.playTone(784, 250); // G5
buzzer.playTone(659, 250); // E5
buzzer.playTone(532, 250); // C5 (slightly sharp)
buzzer.playTone(494, 250); // B4
buzzer.playTone(440, 250); // A4
buzzer.playTone(698, 250); // F5
buzzer.playTone(659, 250); // E5
buzzer.playTone(532, 250); // C5 (slightly sharp)
buzzer.playTone(587, 250); // D5
buzzer.playTone(532, 500); // C5 (slightly sharp) - longer duration
buzzer.playTone(0, 0); // Turn off buzzer
}
5. Résultat du test
Le buzzer passif jouera “Joyeux Anniversaire”.