Arduino Nano ESP32 - Player de MP3
Neste guia, vamos descobrir como criar um player de MP3 usando um ESP32, um módulo player de MP3, um cartão Micro SD e um alto-falante. Os arquivos MP3, que podem ser músicas ou áudio gravado, ficam guardados no cartão micro SD. O Arduino Nano ESP32 será programado para enviar comandos que controlam o módulo player de MP3: qual música escolher no cartão SD, converter em som e depois enviar esse som para o alto-falante. Vamos mergulhar nos seguintes aspectos:
- Como o player de MP3 funciona
- Conectar o alto-falante e o módulo player de MP3 ao Arduino Nano ESP32
- Programar o Arduino Nano ESP32 para tocar uma música guardada no cartão micro SD
- Adicionar botões de tocar, pausar, avançar e voltar.
Depois, você pode levar o código mais longe incorporando um potenciômetro ou encoder rotativo para ajustar o volume.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Módulo Player de MP3 Serial e o Alto-falante
Pinagem do Módulo Player de MP3 Serial
Um módulo player de MP3 serial tem três interfaces:
- A interface com o Arduino Nano ESP32 inclui 4 pinos:
- Pino RX: pino de dados, precisa ser conectado a um pino TX do Arduino Nano ESP32
- Pino TX: pino de dados, precisa ser conectado a um pino RX do Arduino Nano ESP32
- Pino VCC: pino de alimentação, precisa ser conectado ao VCC (5V)
- Pino GND: pino de alimentação, precisa ser conectado ao GND (0V)
- A interface com o alto-falante é um conector fêmea de saída Aux de 3.5mm.
- A interface com o cartão Micro SD é um soquete para cartão Micro SD na parte de trás do módulo.

Pinagem do Alto-falante
Um alto-falante normalmente tem duas interfaces:
- Interface de sinal de áudio: é um conector Aux macho de 3.5mm que se conecta ao módulo player de MP3
- Interface de alimentação: pode ser USB, adaptador de energia de 5V ou qualquer outra interface de alimentação
Como Funciona
Para começar, certifique-se de ter o seguinte:
- Reúna uma coleção de músicas ou áudio gravado que você quer tocar e guarde-os em um cartão micro SD.
- Insira o cartão micro SD no módulo player de MP3.
- Conecte o módulo player de MP3 ao Arduino Nano ESP32 e conecte o alto-falante ao módulo player de MP3. Além disso, garanta que o alto-falante esteja ligado a uma fonte de energia.
Cada arquivo MP3 no cartão micro SD recebe um ID, começando em 0. Então, você pode dizer ao Arduino Nano ESP32 para fazer várias coisas com o módulo player de MP3, como:
- Tocar: Começar a tocar a música selecionada.
- Pausar: Pausar a música.
- Próxima: Ir para a próxima música.
- Anterior: Voltar para a música anterior.
- Alterar Volume: Ajustar o quanto a música fica alta.
Quando o módulo player de MP3 recebe um comando, ele lê o arquivo MP3 do cartão micro SD, transforma em um sinal de áudio e envia esse sinal para o alto-falante usando uma conexão Aux de 3.5mm.
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Código do Arduino Nano ESP32 - Tocar Música
O código abaixo toca a primeira música guardada no cartão Micro SD.
Passos Rápidos
- Se esta é a primeira vez que você usa o Arduino Nano ESP32, veja como configurar o ambiente para o Arduino Nano ESP32 no Arduino IDE.
- Siga as instruções em Como Funciona
- Copie o código acima e abra no Arduino IDE
- Clique no botão Upload do Arduino IDE para fazer o upload do código para o Arduino Nano ESP32
- Aproveite a música
Código do Arduino Nano ESP32 - Tocar Música com botões de controle
O código abaixo é uma evolução do código anterior. Ele adiciona quatro botões para você interagir com o player de MP3.
O diagrama de ligação para o código acima:

This image is created using Fritzing. Click to enlarge image
Agora, você pode modificar os projetos para adicionar mais funções, por exemplo:
- Adicionar um potenciômetro para controlar o volume, veja o tutorial Arduino Nano ESP32 Potenciômetro
- Adicionar um controle remoto IR, veja o tutorial Arduino Nano ESP32 Controle Remoto IR
- Adicionar um leitor e cartão RFID para fazer um player de MP3 com RFID, veja o tutorial Arduino Nano ESP32 RFID