Tutoriel ESP32 41/55 - Lecteur MP3 utilisant une carte Micro SD | Kit d'apprentissage IoT ESP32 de SunFounder

Tutoriel ESP32 41/55 - Lecteur MP3 utilisant une carte Micro SD | Kit d'apprentissage IoT ESP32 de SunFounder

Dans ce tutoriel, nous allons créer un lecteur MP3 en utilisant le microcontrôleur ESP32 et une carte micro SD. L'ESP32 lira des fichiers audio stockés sur la carte micro SD et transmettra le son via un amplificateur audio et un haut-parleur. Ce projet combine divers composants, y compris l'ESP32, un amplificateur audio et une carte micro SD, pour vous permettre de jouer de la musique de manière simple.

Tout au long du processus, nous discuterons du câblage nécessaire, de la programmation et de la manière de résoudre les problèmes courants. Pour un accompagnement visuel, n'oubliez pas de consulter la vidéo associée (dans la vidéo à 00:00).

Matériel expliqué

Les principaux composants utilisés dans ce projet incluent le microcontrôleur ESP32, une carte micro SD, un amplificateur audio et un haut-parleur. L'ESP32 est un microcontrôleur puissant avec des capacités Wi-Fi et Bluetooth intégrées, ce qui le rend idéal pour les projets IoT. Il gérera le traitement et le contrôle de la lecture audio.

La carte micro SD est utilisée pour stocker des fichiers audio au format MP3. Elle se connecte à l'ESP32 et permet au programme de lire les fichiers et d'envoyer des données audio à l'amplificateur. L'amplificateur audio prend le signal numérique de l'ESP32 et l'amplifie pour alimenter le haut-parleur, permettant ainsi d'entendre le son.

Détails de la fiche technique

FabricantSunFounder
Numéro de pièceESP32
Tension logique/entrée-sortie3,3 V
Tension d'alimentation5 V
Courant de sortie (par canal)2 A max
Courant de pointe (par canal)3 A max
Directives sur la fréquence PWMjusqu'à 40 kHz
Seuils logiques d'entrée0,3 x VCC (bas), 0,7 x VCC (haut)
Chute de tension / RDS(on)/ saturation0,15 V
Limites thermiques85 °C
ColisWROOM-32
Notes / variantesCompatible avec diverses bibliothèques audio

  • Assurez-vous que la carte micro SD est formatée en FAT32.
  • Utilisez une résistance pour connecter l'amplificateur audio afin d'éviter la distorsion.
  • Maintenez les connexions d'alimentation stables pour éviter les interruptions.
  • Vérifiez le câblage pour des connexions lâches avant d'alimenter le système.
  • Surveillez la sortie série pour des informations de débogage.
  • Utilisez des haut-parleurs à faible impédance pour une meilleure qualité sonore.
  • Pour des performances optimales, assurez-vous que l'ESP32 n'est pas surchargé de tâches pendant la lecture audio.

SD_MMCest utilisé pour l'accès à la micro SD, etAudioOutputI2Sest utilisé pour la sortie audio.

Instructions de câblage

ESP32-40-micro-sd-card-1
esp32-41-play-music-wriing

Pour câbler les composants ensemble, commencez par connecter l'alimentation. Connectez le 5 V de l'ESP32 au pin VCC de l'amplificateur audio. Ensuite, connectez la broche de masse de l'ESP32 à la broche de masse de l'amplificateur. La broche de sortie audio de l'ESP32, généralementGPIO25, doit être connecté à la broche d'entrée de l'amplificateur par l'intermédiaire d'une résistance de 10 kΩ.

Pour le haut-parleur, connectez-le aux bornes de sortie de l'amplificateur audio. Notez que le haut-parleur n'a pas de polarité, vous pouvez donc le connecter dans n'importe quel sens. Insérez la carte micro SD dans le slot désigné sur l'ESP32. Assurez-vous de vérifier toutes les connexions avant d'alimenter le système.

Exemples de code et guide pas à pas

Dans le code fourni, nous commençons par inclure les bibliothèques nécessaires pour la lecture audio et l'accès à la carte SD. Les identifiants principaux sontmp3,file, etout, qui représentent respectivement le générateur MP3, la source de fichiers audio et la sortie audio.

AudioGeneratorMP3 *mp3;
AudioFileSourceSD_MMC *file;
AudioOutputI2S *out;

Ici, nous déclarons des pointeurs pour le générateur MP3 et la source de fichier audio. Dans lesetup()fonction, nous initialisons la communication série et la carte SD.

void setup() {
  Serial.begin(115200);
  if (!SD_MMC.begin()) {
    Serial.println("SD card mount failed!");
  }
  file = new AudioFileSourceSD_MMC("/To Alice.mp3");
  out = new AudioOutputI2S(0, 1);
}

Dans cet extrait, nous vérifions si la carte SD est montée avec succès. Si cela échoue, un message d'erreur est imprimé. Nous configurons ensuite le fichier MP3 et le mode de sortie audio.

void loop() {
  if (mp3->isRunning()) {
    if (!mp3->loop()) mp3->stop();
  } else {
    Serial.println("MP3 done");
    delay(1000);
  }
}

Cette boucle vérifie si le fichier MP3 est toujours en cours de lecture. S'il ne l'est pas, elle imprime un message indiquant que la lecture est terminée. Le code complet sera chargé en dessous de l'article pour plus de références.

Démonstration / À quoi s'attendre

Une fois que tout est câblé et que le code est téléchargé, vous devriez entendre le son passer par le haut-parleur lorsque la carte micro SD est insérée. Assurez-vous de réinitialiser l'ESP32 après avoir inséré la carte. Si le son ne joue pas, vérifiez le câblage et assurez-vous que le fichier audio est correctement nommé dans le code (dans la vidéo à 05:00).

Les pièges courants incluent le fait de ne pas formater correctement la carte micro SD ou d'utiliser des formats de fichiers audio non pris en charge. Assurez-vous toujours que les fichiers sont au format MP3 et placés dans le répertoire racine ou le dossier spécifié selon les besoins.

Horodatages vidéo

  • 00:00 Début
  • 2:19 Introduction au projet
  • 4:27 Page des docs
  • 5:32 Câblage pour amplificateur audio
  • 8:00 formatage de la carte microSD pour ESP32
  • 10:16 Bibliothèque et code
  • 15:16 Sélectionner la carte ESP32 et le port COM dans l'IDE Arduino
  • 16:58 Lecture de la chanson utilisant l'ESP32 depuis la carte Micro SD
  • 19:14 Deuxième démonstration utilisant une batterie 18650

Images

speaker_pic
speaker_pic
audio_module
audio_module
ESP32-40-micro-sd-card-1
ESP32-40-micro-sd-card-1
esp32-41-play-music-wriing
esp32-41-play-music-wriing
842-ESP32 Tutorial 41/55- Arduino code for playing music from microSD card
Langue: C++
Copié !

Fichiers📁

Aucun fichier disponible.