İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Salgın nedeniyle son altı ayda evde normalden daha fazla zaman geçirdim. Evde insanın canının sıkılması kaçınılmaz o yüzden vakit geçirmek için ESP32 ile bir müzik çalar yaptım. ESP32, uygulamaları çalıştırmak için bağımsız bir sistem olarak kullanılabilir, sadece kabloyu takın, cihaza güç verin ve programlayın. Farklı programlar indirerek, oynatıcı SD kart çalan müzik işlevini, İnternet radyo işlevini ve müzik çalar saat işlevini gerçekleştirebilir.
Şimdi sonuçlarımı göstermek ve nasıl yapacağınızı anlatmak istiyorum.
Gereçler
Donanım:
- MakePython ESP32 (WROVER, şu bağlantıdan edinebilirsiniz:
- MakePython Audio (bu bağlantıdan edinebilirsiniz:https://www.makerfabs.com/makepython-audio.html)
- Mikro SD kart
- USB kablosu
- 3,5 mm ses konektörlü ses/kulaklıklar
Yazılım:
- Arduino IDE'si
- SD karta müzik (.mp3 veya.wav) indirin.
Adım 1: Bağlantı
Pinlere göre iki kartı bağlayın. VCC, 3v3'e bağlıdır
Adım 2: Programlama Ortamı
ESP32 Desteği
Henüz yapmıyorsanız, ESP32 desteği eklemek için Kurulum Talimatlarını izleyin:
github.com/espressif/arduino-esp32
Kitaplığı Yükle
- Adafruit SSD1306 ve bağımlı kütüphaneler.
- ESP32-audioI2S.
Zip dosyasını Github'dan alabilirsiniz:
github.com/Makerfabs/Project_MakePython_Audio_Music
Bu dosyayı açın. Arduino IDE'nizi açın ve Sketch > Kitaplığı Dahil Et > Kitaplıkları Yönet >. ZIP Kitaplığı Ekle'ye gidin.
Ardından "\Project_MakePython_Audio_Music\old-src\esp32_mp3\ESP32-audioI2S" klasörünü açın. Ve kitaplığın başarıyla kurulduğuna dair bir bilgi istemi göreceksiniz.
Adım 3: Kod Hakkında
Ses Çalma
- "/Project_MakePython_Audio_Music/music_player.ino" dosyasını açın. Kodu Github'dan alabilirsiniz:
- Uyarı: MicroPython Audio, fişten çekmeden indirilebilir. Programı yüklerken, başarılı bir şekilde indirmek için lütfen 3,5 mm Ses arabiriminin yanındaki anahtarı Ses soketine çevirin.
- Ekrandaki metni değiştirin veya ekleyin.
void lcd_text(Dize metni)
İlk ses seviyesini değiştirin:
audio.setPinout(I2S_BCLK, I2S_LRC, I2S_DOUT);
audio.setVolume(14); // 0…21
Şarkıları değiştir:
if (digitalRead(Pin_next) == 0)
{ Serial.println("Pin_next"); if (file_index 0) file_index--; başka dosya_index = dosya_sayısı - 1; open_new_song(file_list[file_index]); print_song_time(); button_time = millis(); }
Kodu yükleyin
İnternet Radyosu
- Kodu linkten alabilirsiniz:https://github.com/Makerfabs/Project_ESP32-Web-Radio
- Web radyosunun internete bağlanması gerekiyor, WIFI bilgilerini değiştirmeniz gerekiyor.
const char *ssid = "Makerfabs";
const char *şifre = "20160704";
Aşağıdaki koddaki radyo adresini ekleyin, silin veya değiştirin:
Dizi istasyonları = {
"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"};
Web radyo istasyonuna bağlanın:
void open_new_radio(Dize istasyonu)
{ audio.connecttohost(istasyon);
Alarm
- Kodu buradan alabilirsiniz:https://github.com/Makerfabs/Project_Wakemaster-Alarm-Clock
- alarm saatini aşağıdaki kodda değiştirin:
const char *ntpServer = "120.25.108.11";
const uzun gmtOffset_sec = 8 * 60 * 60; //Çin+8 const int daylightOffset_sec = 0; String clock_time = "17:39:00"; String clock_time2 = "17:42:00";
Başlat ve saati al, ve saat dilimini ayarlamak için “gmtOffset” kullanılır
//init ve zamanı al
configTime(gmtOffset_sec, daylightOffset_sec, ntpServer); Serial.println(F("npt zamanı zaten alındı."));
Çalar saat müziğini değiştirin:
boşluk döngüsü()
{ printLocalTime(); audio.loop(); if (millis() - button_time > 600) { if (alarm_flag == 0) { if (showtime() != 0) { open_new_song("clock.wav"); alarm_flag = 1; display.setCursor(0, 24); display.println("ALARM!!!!!"); display.display(); gecikme(1000); button_time = millis(); } }
Adım 4: Vaka
Dava şuradan alınabilir:
www.makerfabs.com/esp32-audio-fixture-kit.html
3D tasarım
davayı istediğiniz gibi tasarlayın. Geçici olarak tasarlamak istemiyorsanız, tasarım dosyasını buradan alabilirsiniz:
github.com/Makerfabs/Project_MakePython_Audio_Music
3D baskı
Yazdırma dosyalarınızı bir SD kart kullanarak yazıcıya aktarın. 3D baskı, kasanın üretimini hızlı bir şekilde tamamlayabilir.
toplantı
Kasayı ve iki kartı bir araya getirerek yeni bir müzik çalar alabilirsiniz.
Adım 5: Çalıştırma
- ESP32'ye Mikro USB üzerinden güç verin ve LCD ekran şarkının temel bilgilerini görüntüler.
- Sol alt düğme, şarkıları veya radyo kanalını değiştirebilir ve oynatmayı duraklatmak için içe doğru basabilir.
- Soldaki düğme sesi artırabilir veya azaltabilir, alarmı susturmak veya durdurmak için içeriye doğru basın.