İçindekiler:
- Gereçler
- Adım 1: DF Mini Player MP3 Modülü Nedir?
- Adım 2:
- Adım 3: Arduino ile DFMini Oynatıcıyı Kontrol Etme
- 4. Adım:
Video: Arduino ile DFMini Player MP3 Modülü Nasıl Kullanılır: 4 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Birkaç proje, bir tür işlevsellik eklemek için ses üretimi gerektirir. Bu projeler arasında, örneğin görme engelliler için erişilebilirlik, MP3 müzik çalarlar ve ses seslerinin robotlar tarafından yürütülmesini vurguluyoruz.
Tüm bu sistemlerde Arduino'ya bağlanmak için bir MP3 ses çoğaltma cihazına ihtiyacımız var. Bu nedenle, bu yazımızda aşağıdaki noktaları öğreneceğiz: DFMini Player MP3'ün temel çalışma devresi; Hafıza kartındaki ses dosyalarının organizasyonu ve konfigürasyonu; Arduino ile müzik kontrolü.
Gereçler
PCBWay Özel PCB;
DFPlayer Mini MP3 Modülü - UTSOURCE;
10kR Direnç - UTSOURCE;
Anahtar Düğmesi - UTSOURCE;
Breadboard - UTSOURCE;
Arduino UNO - KAYNAK;
Başlık Pimi - UTSOURCE;
Adım 1: DF Mini Player MP3 Modülü Nedir?
DFMini Player modülü, bellek kartında depolanan sesleri yeniden üretme amacına sahip, düşük maliyetli ve düşük güçlü küçük bir müzik çalardır.
Buna dayanarak, modül bağımsız mod aracılığıyla kontrol edilebilir, yani bu modda sadece DFMini modülü, güç sağlamak için bir pil, hoparlör, kontrol etmek için düğmeler ve şarkılarla birlikte SD Kart olacaktır. Bunu kontrol etmenin başka bir yolu da bir Arduino veya başka bir kontrol cihazı kullanmaktır.
Örneğin Arduino, DFMini Player Module ile seri iletişim yoluyla komutlar gönderecektir. DFMini Player modülü Şekil 1'de gösterilmiştir.
Bunu kontrol etmek için temel bağımsız devreyi kullanmak önemlidir. Bu devre Şekil 2'de gösterilmiştir.
Yukarıdaki devrede gösterilen iki buton müzik parçalarını değiştirmek ve sesin seviyesini kontrol etmek için kullanılmaktadır. Pin IO1'e bağlı olan buton bir önceki parçaya gitmek ve sesi azaltmak için kullanılır. Hızlı bir dokunuşla sistem önceki şarkıya döner, ancak düğmeye 1 saniyeden fazla basarsanız sistem şarkının sesini azaltır.
Pin IO2'ye bağlanan buton bir sonraki parçaya geçmek ve sesi artırmak için kullanılır. Hızlı bir dokunuşla sistem bir sonraki şarkıya geçer, ancak düğmeye 1 saniyeden fazla basarsanız sistem şarkının sesini artıracaktır.
Adım 2:
Bu bağımsız yöntemde şarkılar Şekil 3'te gösterildiği gibi hafıza kartına kaydedilmelidir.
Bu şekilde, düğmelere her basıldığında, sistem her şarkıyı artan veya azalan sırayla çalacaktır. Ancak, Arduino veya başka bir kontrol cihazı kullanırken, SD Kart üzerindeki müzik dosyalarını düzenleme şeklini değiştirmeliyiz.
Şimdi seri iletişim yoluyla Arduino kullanarak DFMini Player'ın nasıl kontrol edileceğini anlatacağım.
Adım 3: Arduino ile DFMini Oynatıcıyı Kontrol Etme
Bu adımda ses kontrolü, menzil kontrolü, eşitleme komutları ve diğer özellikler Arduino tarafından gönderilecektir.
Arduino, DFMini Player ile seri üzerinden iletişim kurmalı ve kontrol komutlarını göndermelidir.
Kontrol devresinin elektronik şeması Şekil 4'te gösterilmektedir.
Öncelikle aşağıdaki şekildeki devreyi kurmalıyız. Bu devreyi kurduktan sonra hafıza kartınızdaki şarkıları eklemelisiniz. Bu adımda şarkılar örneğin 01, 02, 03 olarak yeniden adlandırılmalıdır.
Arduino belirli bir parçayı yürütmek için komut gönderdiğinde bir sorun olacağından, şarkıları isimleriyle bırakamazsınız. Bu nedenle, aşağıda gösterildiği gibi yapılandırmanız gerekir.
4. Adım:
Dosyaları isimlendirdikten sonra Arduino'nuza aşağıdaki kodu yazın.
// serialwhile ile veri girişi için bekler (Serial.available() > 0) { command = Serial.read(); if ((komut >= '1') && (komut <= '9')) { Serial.print("Müzik çoğaltma"); Serial.println(komut); komut = komut - 48; myDFPlayer.play(komut); menu_opcoes(); } //Reprodüksiyon //Stop if (komut == 's') { myDFPlayer.stop(); Serial.println("Müzik Durdu!"); menu_opcoes(); } //Pausa/Continua a musica if (komut == 'p') { duraklama = !pausa; if (duraklatma == 0) { Serial.println("Devam…"); myDFPlayer.start(); } if (duraklat == 1) { Serial.println("Müzik Duraklatıldı!"); myDFPlayer.pause(); } menu_opcoes(); }
//Sesi artırır
if (komut == '+') { myDFPlayer.volumeUp(); Serial.print("Mevcut hacim:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } if (komut == '') { myDFPlayer.next(); Serial.println("sonraki:"); Serial.print("Mevcut parça:"); Serial.println(myDFPlayer.readCurrentFileNumber()+1); menu_opcoes(); } //Sesi azaltır if (command == '-') { myDFPlayer.volumeDown(); Serial.print("Mevcut Hacim:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } } } void menu_opcoes() { Serial.println(); Serial.println(F("========================================== ================================================= ====================================")); Serial.println(F("Komutlar:")); Serial.println(F(" [1-3] MP3 dosyasını seçmek için")); Serial.println(F(" [s] çoğaltmayı durduruyor")); Serial.println(F(" [p] müziği duraklat/devam et")); Serial.println(F(" [+ veya -] sesi artırır veya azaltır")); Serial.println(F(" parçayı ileri veya geri alır")); Seri.println(); Serial.println(F("========================================== ================================================= ====================================")); }
Yukarıda sunulan kod oldukça basittir ve şarkıyı numarasına göre seçmenize, durdurmanıza, duraklatmanıza, ses seviyesini kontrol etmenize ve parçaları geçmenize yardımcı olacaktır.
Müzik kontrolü, Arduino IDE serisinden Arduino kartımıza veri göndermekten oluşur. İlk olarak sistem kurulumda konfigürasyonu yapar ve SD Kartın modüle takılı olup olmadığını kontrol eder.
Takılı değilse, sistem kullanıcıyı uyarmak için bir mesaj sunar.
Ayrıca sistem, sistem yapılandırma seçenekleriyle birlikte mesajlar görüntüler.
void setup(){ //Comunicacao seri iletişim modulo mySoftwareSerial.begin(9600); //Arduino Serial.begin(115200); //Verifica se o modulo esta yanıtlayan e se o //cartao SD foi encontrado Serial.println(); Serial.println(F("DFRobot DFPlayer Mini")); Serial.println(F("DFPlayer modülü başlatılıyor… Bekleyin!")); if (!myDFPlayer.begin(mySoftwareSerial)) { Serial.println(F("Başlatılmamış:")); Serial.println(F("1. DFPlayer Mini bağlantılarını kontrol edin")); Serial.println(F("2. Bir SD kart takın")); while (doğru); } Seri.println(); Serial.println(F("DFPlayer Mini modülü başlatıldı!")); //Tanımlar başlangıç myDFPlayer.setTimeOut(500); //Zaman aşımı seri 500ms myDFPlayer.volume(5); //Cilt 5 myDFPlayer. EQ(0); //Equalizacao normal menu_opcoes(); }
Hafıza kartı takılırsa, kod akışı döngü fonksiyonuna girer.
void loop(){ //Seri olarak veri girişi için bekler while (Serial.available() > 0) { command = Serial.read(); if ((komut >= '1') && (komut <= '3')) { Serial.print("Müzik çoğaltma"); Serial.println(komut); komut = komut - 48; myDFPlayer.play(komut); menu_opcoes(); } //Reprodüksiyon //Stop if (komut == 's') { myDFPlayer.stop(); Serial.println("Müzik Durdu!"); menu_opcoes(); } //Pausa/Continua a musica if (komut == 'p') { duraklama = !pausa; if (duraklatma == 0) { Serial.println("Devam…"); myDFPlayer.start(); } if (duraklatma == 1) { Serial.println("Müzik Duraklatıldı!"); myDFPlayer.pause(); } menu_opcoes(); }
//Sesi artırır
if (komut == '+') { myDFPlayer.volumeUp(); Serial.print("Mevcut hacim:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } if (komut == '') { myDFPlayer.next(); Serial.println("sonraki:"); Serial.print("Mevcut parça:"); Serial.println(myDFPlayer.readCurrentFileNumber()+1); menu_opcoes(); } //Sesi azaltır if (command == '-') { myDFPlayer.volumeDown(); Serial.print("Mevcut Hacim:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } } }
Kullanıcı aşağıdaki kontrol karakterlerini gönderebilir:
1'den 3'e kadar numaralar: Çalınacak şarkıyı seçin;
- Harf s: Şarkıyı durdur; Harf p: Şarkıyı duraklat;
- + işaretini gönderin: Şarkı sesini artırın;
- - sinyalini gönder: Şarkı sesini azaltın;
- Sinyali gönder <: Önceki şarkıyı seçin;
- Sinyali gönder >: Sonraki şarkıyı seçin;
Bu sinyaller, harfler ve rakamlardan Arduino bunları seri olarak alacak ve çalınacak müziği kontrol edecektir.
Her koşul, kendi komutlarıyla birlikte aşağıda ve dahili olarak sunulmuştur.
if ((komut >= '1') && (komut <= '3')){ Serial.print("Müzik çoğaltma"); Serial.println(komut); komut = komut - 48; myDFPlayer.play(komut); menu_opcoes(); } //Reprodüksiyon //Stop if (komut == 's') { myDFPlayer.stop(); Serial.println("Müzik Durdu!"); menu_opcoes(); } //Pausa/Continua a musica if (komut == 'p') { duraklama = !pausa; if (duraklatma == 0) { Serial.println("Devam…"); myDFPlayer.start(); } if (duraklatma == 1) { Serial.println("Müzik Duraklatıldı!"); myDFPlayer.pause(); } menu_opcoes(); }
//Sesi artırır
if (komut == '+') { myDFPlayer.volumeUp(); Serial.print("Mevcut hacim:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } if (komut == '') { myDFPlayer.next(); Serial.println("sonraki:"); Serial.print("Mevcut parça:"); Serial.println(myDFPlayer.readCurrentFileNumber()+1); menu_opcoes(); } //Sesi azaltır if (command == '-') { myDFPlayer.volumeDown(); Serial.print("Mevcut Hacim:"); Serial.println(myDFPlayer.readVolume()); menu_opcoes(); } }
Dolayısıyla, sunulan tüm adımları uyguladıysanız şunları öğrenebildiniz:
- DFMini Player MP3'ün temel çalışma devresi;
- Hafıza kartındaki ses dosyalarının organizasyonu ve konfigürasyonu;
- Arduino ile müzik kontrolü. Bu koddan, sistem işlevselliği olarak sesi kullanması gereken başka projeler geliştirebilirsiniz.
Teşekkür
Bitirirken, okuduğunuz ve Silício Lab'ı sizin için bu makalenin hazırlanmasında desteklediği için PCBWAY. COM'un desteği için teşekkür ederiz.
Silícios Laboratuvarı, bu projeyi inşa etmek için elektronik bileşenleri sunduğu için UTSOURCE'a teşekkür eder.
Önerilen:
Arduino ile RFID-RC522 Modülü Nasıl Kullanılır: 5 Adım
Arduino ile RFID-RC522 Modülü Nasıl Kullanılır: Bu Eğitilebilir Kitapta, RFID modülünün etiketleri ve yongaları ile birlikte temel çalışma prensibi hakkında bir adım atacağım. Ayrıca RGB LED'li bu RFID modülünü kullanarak yaptığım bir projeden kısa bir örnek vereceğim. Ins'imle her zamanki gibi
SkiiiD ile Düğme Modülü Nasıl Kullanılır: 9 Adım
SkiiiD ile Düğme Modülü Nasıl Kullanılır: Bu proje, "Buzzer HW-508'in (KY-006 için geçerlidir) Arduino ile skiiiD ile nasıl kullanılacağına dair bir talimattır. www.instructables.com/id/Getting-Start-With-SkiiiiD-Editor
GY511 Modülü Arduino İle Nasıl Kullanılır [Dijital Pusula Yapın]: 11 Adım
GY511 Modülü Arduino İle Nasıl Kullanılır [Dijital Pusula Yap]: Genel Bakış Bazı elektronik projelerinde her an coğrafi konumu bilmemiz ve buna göre belirli bir işlem yapmamız gerekir. Bu eğitimde, dijital bir pusula yapmak için LSM303DLHC GY-511 pusula modülünü Arduino ile nasıl kullanacağınızı öğreneceksiniz
Mac Terminal Nasıl Kullanılır ve Temel İşlevler Nasıl Kullanılır: 4 Adım
Mac Terminali Nasıl Kullanılır ve Temel Fonksiyonlar Nasıl Kullanılır: Size MAC Terminalini nasıl açacağınızı göstereceğiz. Ayrıca size Terminal içinde ifconfig, dizinleri değiştirme, dosyalara erişim ve arp gibi birkaç özelliği göstereceğiz. Ifconfig, IP adresinizi ve MAC reklamınızı kontrol etmenizi sağlar
Arduino UNO ile TCRT5000 IR Sensör Modülü Nasıl Kullanılır: 7 Adım (Resimli)
Arduino UNO ile TCRT5000 IR Sensör Modülü Nasıl Kullanılır: Bu eğitimde size TCRT5000 IR Sensör Modülünün kullanımıyla ilgili bazı temel bilgileri öğreteceğiz. Bu temel bilgiler size seri monitördeki analog ve dijital değerleri gösterir. Açıklama: Bu IR yansıtıcı sensör, renk ve bozulmayı algılamak için bir TCRT5000 kullanır