Projet | Mini projet - Arduino | Lecteur MP3
Présentation
Le shield MP3 met en oeuvre le circuit VS1053B, décodeur MP3.
Muni également d'une carte mémoire µSD, ce shield confère à nos projets, musiques ou sons divers.
Le circuit exploite également les fichiers de formats : Ogg Vorbis, MP3, AAC, WMA et MIDI.
Nous devrons tout d'abord installer les librairies SFEMP3Shield.h et SdFat.h disponibles dans ce ZIP, vers le répertoire arduino / libraries avant de démarrer l'éditeur Arduino.
Du à la bibliothèque SdFat.h, les noms des fichier-sons devront se soumettre au format 8.3 c'est à dire 8 lettres maximum pour le nom et 3 pour l'extension.
Nous trouverons sur cette page, d'autres ressources concernant le shield, afin de l'exploiter plus avant.
Mise en oeuvre du shield
Il s'agit seulement de jouer un son dans les écouteurs selon les consignes saisies dans le terminal. Voir ci-contre.
- Enregistrer sur la carte mémoire µSD un fichier son trouvé sur le web et de format MP3. S'assurer qu'il s'accorde au format 8.3.
- Adapter le programme proposé au nom du fichier enregistré et tester.
Ajout d'items au menu du terminal
Nous ajoutons d'autres sons et d'autres fonctions . Consulter le paragraphe suivant pour cela.
- Ajouter un morceau sur la carte µSD et compléter le programme afin qu'il soit possible de choisir le morceau à jouer.
- Compléter encore le programme pour ajouter le réglage du volume depuis le menu. Faire constater le fonctionnement.
Bibliothèque SFEMP3Shield.h
Le liste des méthodes suivantes n'est pas exhaustive mais tire un parti suffisant pour bon nombre d'applications. La plupart ne nécessitent d'aucun paramètre.
- SFEMP3Shield MP3player; instanciation de classe, création de l'objet MP3player
- MP3player.playMP3("TRACK003.MP3"); joue la piste sonore TRACK003.MP3 sur µSD
- MP3player.stopTrack(); arrête la piste
- MP3player.pauseMusic(); place la piste en pause
- MP3player.resumeMusic(); reprend la piste mise en pause
- MP3player.setVolume(40, 40); ajuste les volumes des canaux gauche et droit. Les paramètres sont de type Byte et compris entre 100 à 0
- MP3player.vs_init(); initialise le circuit VS1053B (arrêter la piste auparavant)