Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Epidemiya tufayli, men oxirgi olti oyda odatdagidan ko'ra uyda ko'proq vaqt o'tkazdim. Uyda odam zerikishi muqarrar, shuning uchun men vaqtni o'tkazish uchun ESP32 bilan audio pleer yasadim. ESP32 mustaqil tizim sifatida dasturlarni ishga tushirish uchun ishlatilishi mumkin, faqat kabelni ulang, qurilmani quvvatlantiring va dasturlang. Turli xil dasturlarni yuklab olish orqali, pleer SD -kartani ijro etish, Internet -radio va musiqali budilnik funksiyasini bajarishi mumkin.
Endi men o'z natijalarimni ko'rsatmoqchiman va buni qanday qilishni aytmoqchiman.
Ta'minotlar
Uskuna:
- MakePython ESP32 (WROVER, siz uni quyidagi havoladan olishingiz mumkin:
- MakePython Audio (uni quyidagi havoladan olishingiz mumkin:
- Micro SD karta
- USB kabeli
- 3,5 mm audio ulagichli audio/minigarnituralar
Dasturiy ta'minot:
- Arduino IDE
- Musiqani (.mp3 yoki.wav) SD -kartaga yuklab oling.
1 -qadam: ulanish
Pimlarga muvofiq ikkita taxtani ulang. VCC 3v3 ga ulangan
2 -qadam: Dasturlash muhiti
ESP32 qo'llab -quvvatlash
Agar siz hali ESP32 -ni qo'llab -quvvatlamasangiz, o'rnatish ko'rsatmalariga amal qiling.
github.com/espressif/arduino-esp32
Kutubxonani o'rnatish
- Adafruit SSD1306 va qaram kutubxonalar.
- ESP32-audioI2S.
Zip faylini Github -dan olishingiz mumkin:
github.com/Makerfabs/Project_MakePython_Audio_Music
Bu faylni oching. Arduino IDE -ni oching va Sketch> Kutubxonani qo'shish> Kutubxonalarni boshqarish> ZIP kutubxonasini qo'shish -ga o'ting.
Keyin papkani oching: "\ Project_MakePython_Audio_Music / old-src / esp32_mp3 / ESP32-audioI2S". Va siz kutubxona muvaffaqiyatli o'rnatilishi haqida ko'rsatma olasiz.
3 -qadam: Kod haqida
Audio ijro
- "/Project_MakePython_Audio_Music/music_player.ino" faylini oching. Siz kodni Github -dan olishingiz mumkin:
-
E'tibor bering: MicroPython Audio -ni ajratmasdan yuklab olish mumkin. Dasturni yuklashda, muvaffaqiyatli yuklab olish uchun 3,5 mm audio interfeysi yonidagi kalitni audio rozetkaga aylantiring.
- Matnni o'zgartirish yoki displeyga qo'shish.
void lcd_text (String matn)
Dastlabki ovoz balandligini o'zgartirish:
audio.setPinout (I2S_BCLK, I2S_LRC, I2S_DOUT);
audio.setVolume (14); // 0… 21
Qo'shiqlarni almashtirish:
agar (digitalRead (Pin_next) == 0)
{Serial.println ("Pin_next"); if (file_index 0) file_index--; boshqa file_index = file_num - 1; open_new_song (fayllar ro'yxati [file_index]); print_song_time (); tugma_ vaqti = millis (); }
Kodni yuklang
Veb radio
- Siz kodni havoladan olishingiz mumkin:
- Veb -radio Internetga ulanishi kerak, siz WIFI ma'lumotlarini o'zgartirishingiz kerak.
const char *ssid = "Makerfabs";
const char *parol = "20160704";
Quyidagi kodga radio manzilini qo'shing, o'chiring yoki o'zgartiring:
String stantsiyalari = {
"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 "};
Veb -radiostansiyaga ulanish:
void open_new_radio (String stantsiyasi)
{audio.connecttohost (stansiya);
Signal
- Kodni bu erdan olishingiz mumkin:
- signal vaqtini quyidagi kodda o'zgartiring:
const char *ntpServer = "120.25.108.11";
const long gmtOffset_sec = 8 * 60 * 60; // Xitoy+8 const int daylightOffset_sec = 0; String clock_time = "17:39:00"; String clock_time2 = "17:42:00";
Boshlang va vaqtni oling , va "gmtOffset" vaqt zonasini o'rnatish uchun ishlatiladi
// init va vaqtni oling
configTime (gmtOffset_sec, daylightOffset_sec, ntpServer); Serial.println (F ("Alread get npt time."));
Budilnik musiqasini o'zgartiring:
bo'sh halqa ()
{printLocalTime (); audio.loop (); if (millis () - button_time> 600) {if (alarm_flag == 0) {if (showtime ()! = 0) {open_new_song ("clock.wav"); signal_flag = 1; display.setCursor (0, 24); display.println ("ALARM !!!!!"); display.display (); kechikish (1000); tugma_ vaqti = millis (); }}
4 -qadam: ish
Ishni quyidagidan olish mumkin:
www.makerfabs.com/esp32-audio-fixture-kit.html
3D dizayn
sumkani xohlaganingizcha yarating. Agar siz uni vaqtincha loyihalashni xohlamasangiz, dizayn faylini bu erdan olishingiz mumkin:
github.com/Makerfabs/Project_MakePython_Audio_Music
3D bosib chiqarish
SD -karta yordamida bosma fayllarni printerga o'tkazing. 3D bosib chiqarish korpus ishlab chiqarishni tezda tugatishi mumkin.
O'rnatish
Kosonni va ikkita taxtani yig'ib, siz yangi audio pleer olishingiz mumkin.
5 -qadam: operatsiya
- ESP32 -ni Micro USB orqali quvvatlang va LCD displey qo'shiqning asosiy ma'lumotlarini ko'rsatadi.
- Pastki chap tugma qo'shiqlarni yoki radiokanalni o'zgartirishi va ijro etishni to'xtatib qo'yish uchun ichkariga bosishi mumkin.
- Chapdagi kalit ovoz balandligini oshirishi yoki kamaytirishi mumkin, signalni o'chirish yoki to'xtatish uchun ichkariga bosing.