Arduino Mega - Mini lecteur MP3
L'Arduino Mega 2560 dispose de quatre ports série matériels, ce qui en fait un excellent choix pour travailler avec des périphériques UART comme le module DIYables Mini Mp3 Player. Ce tutoriel montre comment connecter et programmer le Mini Mp3 Player avec le Mega, en profitant de son port Serial1 dédié pour ne jamais avoir à utiliser SoftwareSerial.
Ce que couvre ce tutoriel :
- Câblage du Mini Mp3 Player au port Serial1 du Mega.
- Formatage et chargement de la carte SD.
- Code pour : lecture, pause, reprise, arrêt, suivant, précédent.
- Volume haut/bas avec des boutons.
- Répétition de piste, lecture aléatoire et lecture par dossier.
- Contrôle via le Moniteur Série pour les tests rapides.
- Requêtes de statut pour lire le volume, le numéro de piste, et plus.

Liste des pièces
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À propos du module Mini Mp3 Player
Le DIYables Mini Mp3 Player utilise le chip décodeur YX5200-24SS pour lire et jouer des fichiers mp3 depuis une carte micro SD. Il a un amplificateur intégré qui peut piloter directement un petit haut-parleur (jusqu'à 3W), plus des broches de sortie DAC si vous souhaitez router l'audio vers un ampli externe.
Le Mega communique avec le module via UART à 9600 bauds. Les fonctionnalités disponibles sont :
- Contrôles de transport complets : lecture, pause, reprise, arrêt, suivant, précédent
- Plage de volume : 0 (muet) à 30 (max)
- Préréglages EQ : Normal, Pop, Rock, Jazz, Classique, Basse
- Options de répétition : répéter une piste, répéter un dossier, répéter tout, lecture aléatoire
- Lecture de dossiers : organiser les pistes dans des répertoires numérotés
- Mode annonce : interrompre puis reprendre la piste précédente
- Requêtes de statut : quelle piste joue, volume actuel, nombre total de pistes
Référence des broches
| Pin | Role | |
|---|---|---|
| VCC | Alimentation (3.2V–5.0V) | |
| GND | Masse | |
| RX | Réception série — connectez au TX1 du Mega via une résistance de 1K | |
| TX | Transmission série — connectez au RX1 du Mega | |
| SPK_1 | Haut-parleur positif (amplificateur embarqué, 3W max) | |
| SPK_2 | Haut-parleur négatif | |
| DAC_R | Sortie audio canal droit (niveau ligne) | |
| DAC_L | Sortie audio canal gauche (niveau ligne) | |
| BUSY | BAS pendant la lecture audio, HAUT à l'arrêt | |
| IO_1 | Déclencheur physique | court=précédent, long=vol bas |
| IO_2 | Déclencheur physique | court=suivant, long=vol haut |

Câblage
Le Mega est une carte 5V, donc une résistance série de 1K sur la ligne RX du module est requise pour protéger son entrée 3,3V.
Nous utilisons Serial1 (TX1 = broche 18, RX1 = broche 19) pour le module mp3, laissant le Serial principal (broches 0 et 1) libre pour le débogage via le Moniteur Série.
| Mini Mp3 Player | Arduino Mega | Notes |
|---|---|---|
| VCC | 5V | |
| GND | GND | |
| RX | Pin 18 (TX1) | Via une résistance de 1K |
| TX | Pin 19 (RX1) | Connexion directe |
| SPK_1 | Speaker + | |
| SPK_2 | Speaker − |
Vous pouvez aussi utiliser Serial2 (broches 16/17) ou Serial3 (broches 14/15) si Serial1 est occupé.

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Préparation de la carte SD
Formatez la carte en FAT16 ou FAT32, puis ajoutez des fichiers mp3 avec des numéros à zéros non significatifs :
Pour la lecture par dossiers, créez des répertoires numérotés :
Détails importants :
- La numérotation commence à 1.
- Le module utilise l'ordre de copie pour attribuer les numéros de piste, pas le nom de fichier. Copiez les fichiers un à la fois après le formatage.
- Noms de dossiers : 2 chiffres (01–99). Noms de fichiers : 3 chiffres (001–255).
Installation de la bibliothèque
- Connectez le Mega à votre PC avec le câble USB.
- Dans l'Arduino IDE, sélectionnez Arduino Mega ou Mega 2560 et le bon port.
- Ouvrez le panneau Bibliothèques.
- Recherchez « DIYables_MiniMp3 » et installez-la.

Aucune dépendance requise.
Structure de code de base (port série matériel)
Le Mega dispose de nombreux ports série matériels, donc oubliez totalement SoftwareSerial :
Code Mega — Jouer une piste
Pour exécuter
- Configurez la carte SD, câblez le module à Serial1 et téléversez. La piste 001.mp3 joue via le haut-parleur.
Fonctions de lecture
| Function | Action | Code |
|---|---|---|
| play(n) | Jouer la piste n | mp3.play(1) |
| playNext() | Piste suivante | mp3.playNext() |
| playPrevious() | Piste précédente | mp3.playPrevious() |
| pause() | Pause | mp3.pause() |
| resume() | Reprendre | mp3.resume() |
| stop() | Arrêter | mp3.stop() |
Code Mega — Plusieurs pistes en séquence
Code Mega — Boutons de volume
Fonctions de volume
| Function | Description | Code |
|---|---|---|
| setVolume(v) | Régler directement (0–30) | mp3.setVolume(20) |
| volumeUp() | +1 | mp3.volumeUp() |
| volumeDown() | −1 | mp3.volumeDown() |
| getVolume() | Lire le niveau actuel | mp3.getVolume() |
Code Mega — Boutons suivant/précédent
Code Mega — Pause/Reprise
Code Mega — Répéter une piste
Fonctions de répétition et lecture aléatoire
| Function | Description | Code |
|---|---|---|
| loopTrack(n) | Répéter une piste | mp3.loopTrack(1) |
| loopFolder(f) | Répéter tout dans un dossier | mp3.loopFolder(1) |
| loopAll() | Répéter tout | mp3.loopAll() |
| stopLoop() | Arrêter la répétition | mp3.stopLoop() |
| shuffle() | Ordre aléatoire | mp3.shuffle() |
Code Mega — Lecture par dossier
Fonctions de dossier
| Function | Description | Code |
|---|---|---|
| playFolder(f, t) | Dossier f, piste t (99 dossiers, 255 pistes) | mp3.playFolder(1, 1) |
| playLargeFolder(f, t) | Mode grand dossier (15 dossiers, 3000 pistes) | mp3.playLargeFolder(1, 500) |
| playFromMP3Folder(t) | Depuis le dossier /mp3 | mp3.playFromMP3Folder(1) |