Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
En raison de l'épidémie, j'ai passé plus de temps à la maison que d'habitude au cours des six derniers mois. Il est inévitable qu'une personne s'ennuie à la maison, j'ai donc fabriqué un lecteur audio avec ESP32 pour passer le temps. ESP32 peut être utilisé comme un système indépendant pour exécuter des applications, il suffit de brancher le câble, d'alimenter l'appareil et de le programmer. En téléchargeant différents programmes, le lecteur peut réaliser une fonction de lecture de musique sur carte SD, une fonction de radio Internet et une fonction de réveil musical.
Maintenant, je veux montrer mes résultats et vous dire comment le faire.
Fournitures
Matériel:
- MakePython ESP32 (WROVER, vous pouvez l'obtenir à partir de ce lien:
- MakePython Audio (vous pouvez l'obtenir à partir de ce lien:
- Carte Micro SD
- cable USB
- Audio/casque avec connecteur audio 3,5 mm
Logiciel:
- IDE Arduino
- Téléchargez de la musique (.mp3 ou.wav) sur la carte SD.
Étape 1: Connexion
Connectez deux cartes en fonction des broches. Le VCC est connecté en 3v3
Étape 2: Environnement de programmation
Prise en charge ESP32
Suivez les instructions d'installation pour ajouter le support ESP32 si vous ne le faites pas encore:
github.com/espressif/arduino-esp32
Installer la bibliothèque
- Adafruit SSD1306 et bibliothèques dépendantes.
- ESP32-audioI2S.
Vous pouvez obtenir le fichier zip depuis le Github:
github.com/Makerfabs/Project_MakePython_Audio_Music
Décompressez ce fichier. Ouvrez votre IDE Arduino et accédez à Sketch > Inclure la bibliothèque > Gérer les bibliothèques > Ajouter une bibliothèque. ZIP.
Ouvrez ensuite le dossier: "\Project_MakePython_Audio_Music\old-src\esp32_mp3\ESP32-audioI2S". Et vous verrez une invite indiquant que la bibliothèque a été installée avec succès.
Étape 3: À propos du code
Lecture audio
- Ouvrez le fichier "/Project_MakePython_Audio_Music/music_player.ino". Vous pouvez obtenir le code sur Github:
-
Remarque: MicroPython Audio peut être téléchargé sans débrancher. Lors du téléchargement du programme, veuillez faire pivoter le commutateur à côté de l'interface audio 3,5 mm vers la prise audio pour un téléchargement réussi.
- Modifier ou ajouter du texte dans l'affichage.
void lcd_text (chaîne de texte)
Modifiez le volume initial:
audio.setPinout(I2S_BCLK, I2S_LRC, I2S_DOUT);
audio.setVolume(14); // 0…21
Changer de chanson:
if (digitalRead(Pin_next) == 0)
{ Serial.println("Pin_next"); if (file_index 0) file_index--; sinon index_fichier = num_fichier - 1; open_new_song(file_list[file_index]); print_song_time(); button_time = millis(); }
Téléchargez le code
Webradio
- Vous pouvez obtenir le code à partir du lien:
- La radio Web doit se connecter à Internet, vous devez modifier les informations WIFI.
const char *ssid = "Makerfabs";
const char *mot de passe = "20160704";
Ajoutez, supprimez ou modifiez l'adresse radio dans le code suivant:
Chaîne stations = {
"0n-80s.radionetz.de:8000/0n-70s.mp3", "mediaserv30.live-streams.nl:8000/stream", "www.surfmusic.de/m3u/100-5-das-hitradio, 4529.m3u", "stream.1a-webradio.de/deutsch/mp3-128/vtuner-1a", "mp3.ffh.de/radioffh/hqlivestream.aac", // 128k aac "www.antenne.de/webradio /antenne.m3u", "listen.rusongs.ru/ru-mp3-128", "edge.audio.3qsdn.com/senderkw-mp3", "macslons-irish-pub-radio.com/media.asx"};
Connectez-vous à la webradio:
void open_new_radio(String station)
{ audio.connecttohost(station);
Alarme
- Vous pouvez obtenir le code ici:
- modifier l'heure de l'alarme dans le code suivant:
const char *ntpServer = "120.25.108.11";
const long gmtOffset_sec = 8 * 60 * 60; //Chine+8 const int daylightOffset_sec = 0; Chaîne clock_time = "17:39:00"; Chaîne clock_time2 = "17:42:00";
Init et obtenez l'heure et le "gmtOffset" est utilisé pour définir le fuseau horaire
//init et obtient l'heure
configTime(gmtOffset_sec, daylightOffset_sec, ntpServer); Serial.println(F("Alread get npt time."));
Modifier la musique du réveil:
boucle vide()
{ printLocalTime(); audio.loop(); if (millis() - button_time > 600) { if (alarm_flag == 0) { if (showtime() != 0) { open_new_song("clock.wav"); drapeau_alarme = 1; display.setCursor(0, 24); display.println("ALARME!!!!!"); display.display(); retard(1000); button_time = millis(); } }
Étape 4: Cas
Le dossier peut être obtenu auprès de:
www.makerfabs.com/esp32-audio-fixture-kit.html
Conception 3D
concevez le cas comme vous le souhaitez. Si vous ne souhaitez pas le concevoir temporairement, vous pouvez obtenir le fichier de conception à partir d'ici:
github.com/Makerfabs/Project_MakePython_Audio_Music
impression en 3D
Transférez vos fichiers d'impression vers l'imprimante à l'aide d'une carte SD. L'impression 3D peut terminer la production du boîtier rapidement.
Assemblée
Assembler le boîtier et les deux cartes, et vous pouvez obtenir un nouveau lecteur audio.
Étape 5: Opération
- Alimentez l'ESP32 via Micro USB et l'écran LCD affiche les informations de base de la chanson.
- Le commutateur inférieur gauche peut changer de chanson ou de canal radio et appuyez vers l'intérieur pour mettre la lecture en pause.
- L'interrupteur sur la gauche peut augmenter ou diminuer le volume, appuyez vers l'intérieur pour couper ou arrêter l'alarme.