Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Z powodu epidemii w ciągu ostatnich sześciu miesięcy spędziłem w domu więcej czasu niż zwykle. Nie da się uniknąć nudy w domu, dlatego dla zabicia czasu zrobiłem odtwarzacz audio z ESP32. ESP32 może być używany jako niezależny system do uruchamiania aplikacji, wystarczy podłączyć kabel, zasilić urządzenie i zaprogramować je. Pobierając różne programy, odtwarzacz może realizować funkcję odtwarzania muzyki z karty SD, funkcję radia internetowego i funkcję budzika muzycznego.
Teraz chcę pokazać moje wyniki i powiedzieć, jak to zrobić.
Kieszonkowe dzieci
Sprzęt komputerowy:
- MakePython ESP32 (WROVER, można go pobrać z tego linku:
- MakePython Audio (możesz go pobrać z tego linku:
- Karta micro sd
- Kabel USB
- Audio/słuchawki ze złączem audio 3,5 mm
Oprogramowanie:
- IDE Arduino
- Pobierz muzykę (.mp3 lub.wav) na kartę SD.
Krok 1: Połączenie
Połącz dwie deski zgodnie z kołkami. VCC jest podłączony do 3v3
Krok 2: Środowisko programistyczne
Obsługa ESP32
Postępuj zgodnie z instrukcjami instalacji, aby dodać obsługę ESP32, jeśli jeszcze tego nie robisz:
github.com/espressif/arduino-esp32
Zainstaluj bibliotekę
- Adafruit SSD1306 i biblioteki zależne.
- ESP32-audioI2S.
Możesz pobrać plik zip z Github:
github.com/Makerfabs/Project_MakePython_Audio_Music
Rozpakuj ten plik. Otwórz swoje Arduino IDE i przejdź do Szkic> Dołącz bibliotekę> Zarządzaj bibliotekami> Dodaj bibliotekę. ZIP.
Następnie otwórz folder: „\Project_MakePython_Audio_Music\old-src\esp32_mp3\ESP32-audioI2S”. I zobaczysz monit, że biblioteka została pomyślnie zainstalowana.
Krok 3: O kodzie
Odtwarzanie dźwięku
- Otwórz plik "/Project_MakePython_Audio_Music/music_player.ino". Możesz pobrać kod z Github:
- Uwaga: MicroPython Audio można pobrać bez odłączania. Podczas wgrywania programu obróć przełącznik obok interfejsu audio 3,5 mm do gniazda audio, aby pomyślnie pobrać.
- Zmodyfikuj lub dodaj tekst na wyświetlaczu.
void lcd_text (tekst ciągu)
Zmień początkową głośność:
audio.setPinout(I2S_BCLK, I2S_LRC, I2S_DOUT);
audio.setVolume(14); // 0…21
Przełącz utwory:
if (digitalRead(Pin_next) == 0)
{ Serial.println("Przypnij_następny"); if (indeks_pliku 0) indeks_pliku--; w przeciwnym razie indeks_pliku = numer_pliku - 1; open_new_song(file_list[file_index]); print_song_time(); czas_przycisku = mili(); }
Prześlij kod
Radio internetowe
- Możesz uzyskać kod z linku:
- Radio internetowe musi łączyć się z Internetem, musisz zmienić informacje WIFI.
const char *ssid = "Twórcy";
const char *hasło = "20160704";
Dodaj, usuń lub zmodyfikuj adres radiowy w następującym kodzie:
Stacje ciągów = {
„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"};
Połącz się z internetową stacją radiową:
void open_new_radio (stacja String)
{ audio.connecttohost(stacja);
Alarm
- Kod można pobrać stąd:
- zmodyfikuj czas alarmu w następującym kodzie:
const char *ntpServer = "120.25.108.11";
const long gmtOffset_sec = 8 * 60 * 60; //Chiny+8 const int daylightOffset_sec = 0; String clock_time = "17:39:00"; Ciąg clock_time2 = "17:42:00";
Init i pobierz czas, a „gmtOffset” służy do ustawienia strefy czasowej
//zainicjuj i zdobądź czas
configTime(gmtOffset_sec, daylightOffset_sec, ntpServer); Serial.println(F("Już pobierz czas npt."));
Zmodyfikuj muzykę budzika:
pusta pętla()
{ printCzasLokalny(); audio.pętla(); if (millis() - button_time > 600) { if (alarm_flag == 0) { if (showtime() != 0) { open_new_song("clock.wav"); flaga_alarmu = 1; display.setCursor(0, 24); display.println("ALARM!!!!!"); display.display(); opóźnienie (1000); czas_przycisku = mili(); } }
Krok 4: Sprawa
Sprawę można otrzymać od:
www.makerfabs.com/esp32-audio-fixture-kit.html
Projektowanie 3D
zaprojektuj obudowę tak, jak chcesz. Jeśli nie chcesz projektować go tymczasowo, możesz pobrać plik projektu stąd:
github.com/Makerfabs/Project_MakePython_Audio_Music
drukowanie 3d
Przenieś pliki wydruku do drukarki za pomocą karty SD. Druk 3D może szybko zakończyć produkcję obudowy.
montaż
Po złożeniu obudowy i dwóch płyt możesz otrzymać nowy odtwarzacz audio.
Krok 5: Operacja
- Zasil ESP32 przez Micro USB, a ekran LCD wyświetla podstawowe informacje o piosence.
- Dolny lewy przełącznik może przełączać utwory lub kanał radiowy i nacisnąć do środka, aby wstrzymać odtwarzanie.
- Przełącznik po lewej stronie może zwiększyć lub zmniejszyć głośność, naciśnij do środka, aby wyciszyć lub zatrzymać alarm.