Tutorial ESP32 41/55 - Lettore MP3 utilizzando scheda Micro SD | Kit di apprendimento IoT ESP32 di SunFounder

Tutorial ESP32 41/55 - Lettore MP3 utilizzando scheda Micro SD | Kit di apprendimento IoT ESP32 di SunFounder

In questo tutorial, creeremo un lettore MP3 utilizzando il microcontrollore ESP32 e una scheda micro SD. L'ESP32 leggerà i file audio memorizzati sulla scheda micro SD e riprodurrà il suono tramite un amplificatore audio e un altoparlante. Questo progetto combina vari componenti, tra cui l'ESP32, un amplificatore audio e una scheda micro SD, per consentirti di riprodurre musica in modo semplice.

Durante il processo, discuteremo dell'impianto elettrico necessario, della programmazione e di come risolvere i problemi comuni. Per ulteriori indicazioni visive, assicurati di controllare il video associato (nel video a :00).

Hardware Spiegato

I componenti principali utilizzati in questo progetto includono il microcontrollore ESP32, una scheda micro SD, un amplificatore audio e un altoparlante. L'ESP32 è un potente microcontrollore con funzionalità Wi-Fi e Bluetooth integrate, rendendolo ideale per progetti IoT. Si occuperà dell'elaborazione e del controllo della riproduzione audio.

La scheda micro SD viene utilizzata per memorizzare file audio in formato MP3. Si collega all'ESP32 e consente al programma di leggere i file e inviare dati audio all'amplificatore. L'amplificatore audio prende il segnale digitale dall'ESP32 e lo amplifica per pilotare l'altoparlante, consentendo di ascoltare il suono.

Dettagli della scheda tecnica

ProduttoreSunFounder
Numero di parteESP32
Tensione logica/IO3,3 V
Tensione di alimentazione5 V
Corrente di uscita (per canale)2 A max
Corrente di picco (per canale)3 A max
Indicazioni sulla frequenza PWMfino a 40 kHz
soglie logiche di ingresso0,3 x VCC (basso), 0,7 x VCC (alto)
Caduta di tensione / RDS(on)/ saturazione0,15 V
Limiti termici85 °C
PacchettoWROOM-32
Note / variantiCompatibile con varie librerie audio

  • Assicurati che la scheda micro SD sia formattata come FAT32.
  • Usa una resistenza per collegare l'amplificatore audio per prevenire la distorsione.
  • Mantieni stabili le connessioni di alimentazione per evitare interruzioni.
  • Controlla i cablaggi per connessioni allentate prima di accendere il sistema.
  • Monitora l'uscita seriale per informazioni di debug.
  • Usa altoparlanti a bassa impedenza per una migliore qualità del suono.
  • Per le migliori prestazioni, assicurati che l'ESP32 non sia sovraccarico di compiti durante la riproduzione audio.

SD_MMCviene utilizzato per l'accesso a micro SD, eAudioOutputI2Sviene utilizzato per l'uscita audio.

Istruzioni di cablaggio

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

Per collegare i componenti tra loro, inizia collegando l'alimentatore. Collega i 5 V dall'ESP32 al pin VCC dell'amplificatore audio. Successivamente, collega il pin di massa dall'ESP32 al pin di massa dell'amplificatore. Il pin di uscita audio dall'ESP32, di solitoGPIO25, dovrebbe essere collegato al pin di ingresso dell'amplificatore tramite un resistore da 10 kΩ.

Per l'altoparlante, collegalo ai pin di uscita dell'amplificatore audio. Nota che l'altoparlante non ha polarità, quindi puoi collegarlo in entrambi i modi. Inserisci la scheda micro SD nell'apposito slot sull'ESP32. Assicurati di controllare nuovamente tutte le connessioni prima di accendere il sistema.

Esempi di Codice e Guida Passo Passo

Nel codice fornito, iniziamo includendo le librerie necessarie per la riproduzione audio e l'accesso alla scheda SD. I principali identificatori sonomp3,file, eout, che rappresentano rispettivamente il generatore MP3, la sorgente del file audio e l'uscita audio.

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

Qui dichiariamo puntatori per il generatore MP3 e la sorgente del file audio. Nelsetup()funzione, inizializziamo la comunicazione seriale e la scheda 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);
}

In questo estratto, verifichiamo se la scheda SD è montata con successo. Se fallisce, viene stampato un messaggio di errore. Poi configuriamo il file MP3 e la modalità di output audio.

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

Questo ciclo verifica se il file MP3 sta ancora suonando. Se non lo è, stampa un messaggio che indica che la riproduzione è completata. Il codice completo verrà caricato sotto l'articolo per ulteriori riferimenti.

Dimostrazione / Cosa Aspettarsi

Una volta che tutto è cablato e il codice è caricato, dovresti sentire l'audio riprodotto attraverso l'altoparlante quando la scheda micro SD è inserita. Assicurati di resettare l'ESP32 dopo aver inserito la scheda. Se l'audio non viene riprodotto, controlla il cablaggio e assicurati che il file audio sia nominato correttamente nel codice (nel video a 05:00).

Le insidie comuni includono la mancata formattazione corretta della scheda micro SD o l'uso di formati di file audio non supportati. Assicurati sempre che i file siano in formato MP3 e posizionati nella directory principale o nella cartella specificata secondo necessità.

Timestamp video

  • 00:00 Inizio
  • 2:19 Introduzione al progetto
  • 4:27 Pagina documenti
  • 5:32 Cablaggio per amplificatore audio
  • 8:00 formattazione della scheda microSD per ESP32
  • 10:16 Biblioteca e Codice
  • 15:16 Selezionare la scheda ESP32 e la porta COM in Arduino IDE
  • 16:58 Riproduzione di una canzone utilizzando ESP32 da scheda Micro SD
  • 19:14 Secondo demo con batteria 18650

Immagini

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
Lingua: C++
Copia!

File📁

Nessun file disponibile.