Isi kandungan:

Cara Menggunakan Modul DFMini Player MP3 Dengan Arduino: 4 Langkah
Cara Menggunakan Modul DFMini Player MP3 Dengan Arduino: 4 Langkah

Video: Cara Menggunakan Modul DFMini Player MP3 Dengan Arduino: 4 Langkah

Video: Cara Menggunakan Modul DFMini Player MP3 Dengan Arduino: 4 Langkah
Video: Cara Program DFPlayer MP3 Dengan Arduino 2024, November
Anonim
Cara Menggunakan Modul MP3 DFMini Player Dengan Arduino
Cara Menggunakan Modul MP3 DFMini Player Dengan Arduino

Beberapa projek memerlukan pengeluaran semula bunyi untuk menambahkan beberapa jenis fungsi. Di antara projek-projek ini, kami menyoroti: kebolehcapaian untuk penglihatan, pemain muzik MP3 dan pelaksanaan suara suara oleh robot, misalnya.

Dalam semua sistem ini, kita memerlukan alat pembiakan suara MP3 untuk menyambung ke Arduino. Oleh itu, dalam artikel ini kita akan mempelajari perkara-perkara berikut: Litar operasi asas DFMini Player MP3; Organisasi dan konfigurasi fail suara pada kad memori; Kawalan muzik dengan Arduino.

Bekalan

PCB Custom PCBWay;

Modul MP3 DFPlayer Mini - UTSOURCE;

Perintang 10kR - UTSOURCE;

Butang Tukar - UTSOURCE;

Papan Roti - UTSOURCE;

Arduino UNO - UTSOURCE;

Pin Tajuk - UTSOURCE;

Langkah 1: Apakah Modul MP3 DF Mini Player

Apakah Modul MP3 DF Mini Player
Apakah Modul MP3 DF Mini Player
Apa itu Modul MP3 DF Mini Player
Apa itu Modul MP3 DF Mini Player

Modul DFMini Player adalah pemutar muzik kecil, kos rendah dan rendah yang mempunyai tujuan untuk menghasilkan semula suara yang tersimpan pada kad memori.

Berdasarkan ini, modul dapat dikendalikan melalui mod mandiri, iaitu, dalam mod ini, hanya akan ada modul DFMini, bateri untuk berkuasa, pembesar suara, butang untuk mengendalikannya dan Kad SD dengan lagu-lagu. Cara lain untuk mengawalnya adalah dengan menggunakan Arduino atau alat kawalan lain.

Arduino, misalnya, akan menghantar arahan melalui komunikasi bersiri dengan Modul Pemain DFMini. Modul Pemain DFMini ditunjukkan dalam Rajah 1.

Untuk mengawalnya, penting untuk menggunakan litar mandiri asas. Litar ini ditunjukkan dalam Rajah 2.

Dua butang yang ditunjukkan dalam litar di atas digunakan untuk mengubah trek muzik dan mengawal volume suara. Butang yang disambungkan ke pin IO1 digunakan untuk pergi ke trek sebelumnya dan mengurangkan kelantangan. Dengan sentuhan cepat sistem akan kembali ke lagu sebelumnya, namun, jika anda menekan butang lebih dari 1 saat, sistem akan mengurangkan volume lagu.

Butang yang disambungkan ke pin IO2 digunakan untuk menuju ke trek seterusnya dan menambah kelantangan. Dengan sentuhan cepat sistem akan maju ke lagu berikutnya, namun, jika anda menekan butang lebih dari 1 saat, sistem akan meningkatkan volume lagu.

Langkah 2:

Imej
Imej

Dalam kaedah mandiri ini, lagu mesti disimpan di kad memori, seperti yang ditunjukkan pada Gambar 3.

Dengan cara ini, setiap kali butang ditekan, sistem akan memainkan setiap lagu dalam urutan menaik atau menurun. Namun, apabila menggunakan Arduino atau alat kawalan lain, kita mesti mengubah cara mengatur fail muzik pada Kad SD.

Sekarang, saya akan menerangkan cara mengawal Pemain DFMini menggunakan Arduino melalui komunikasi bersiri.

Langkah 3: Mengawal Pemain DFMini Dengan Arduino

Mengendalikan Pemain DFMini Dengan Arduino
Mengendalikan Pemain DFMini Dengan Arduino
Mengendalikan Pemain DFMini Dengan Arduino
Mengendalikan Pemain DFMini Dengan Arduino

Dalam langkah ini, kawalan kelantangan, kawalan julat, perintah penyamaan dan ciri lain akan dihantar oleh Arduino.

Arduino mesti berkomunikasi melalui siri dengan Pemain DFMini dan menghantar arahan kawalan.

Skema elektronik litar kawalan ditunjukkan dalam Rajah 4.

Pertama, kita mesti memasang litar yang ditunjukkan dalam Rajah di bawah. Selepas memasang litar ini, anda mesti menambahkan lagu pada kad memori anda. Dalam langkah ini, lagu-lagu harus diganti namanya sebagai 01, 02, 03, misalnya.

Anda tidak boleh meninggalkan lagu dengan namanya, karena akan ada masalah ketika Arduino mengirimkan perintah untuk menjalankan trek tertentu. Oleh itu, anda mesti mengkonfigurasi seperti gambar di bawah.

Langkah 4:

Setelah menamakan fail, tulis kod berikut di Arduino anda.

// Menunggu kemasukan data melalui siri sementara (Serial.available ()> 0) {command = Serial.read (); if ((command> = '1') && (command <= '9')) {Serial.print ("Pengeluaran semula muzik"); Serial.println (arahan); perintah = perintah - 48; myDFPlayer.play (arahan); menu_opcoes (); } // Pengeluaran semula // Berhenti jika (command == 's') {myDFPlayer.stop (); Serial.println ("Muzik Dihentikan!"); menu_opcoes (); } // Pausa / Continua a musica if (perintah == 'p') {pausa =! Pausa; jika (pausa == 0) {Serial.println ("Teruskan …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Muzik Dijeda!"); myDFPlayer.pause (); } menu_opcoes (); }

// Menambah kelantangan

jika (perintah == '+') {myDFPlayer.volumeUp (); Serial.print ("Volume semasa:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (perintah == '') {myDFPlayer.next (); Serial.println ("seterusnya:"); Serial.print ("Trek semasa:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menu_opcoes (); } // Mengurangkan kelantangan jika (perintah == '-') {myDFPlayer.volumeDown (); Serial.print ("Volume Semasa:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}} batal menu_opcoes () {Serial.println (); Serial.println (F ("=========================================== ================================================== ===================================== ")); Serial.println (F ("Perintah:")); Serial.println (F ("[1-3] Untuk memilih fail MP3")); Serial.println (F ("[s] menghentikan pembiakan")); Serial.println (F ("[p] jeda / teruskan muzik")); Serial.println (F ("[+ atau -] menambah atau menurunkan kelantangan")); Serial.println (F (" ke hadapan atau ke belakang trek")); Bersiri.println (); Serial.println (F ("=========================================== ================================================== ==================================== ")); }

Kod yang ditunjukkan di atas agak mudah dan akan membantu anda memilih lagu mengikut nombornya, berhenti, berhenti sebentar, mengawal kelantangan dan lulus trek.

Alat kawalan muzik terdiri daripada menghantar data dari siri Arduino IDE ke papan Arduino kami. Pada mulanya, sistem membuat konfigurasi dalam penyediaan dan memeriksa apakah Kad SD dimasukkan ke dalam modul.

Sekiranya tidak dimasukkan, sistem akan menyampaikan mesej untuk memberi amaran kepada pengguna.

Di samping itu, sistem memaparkan mesej dengan pilihan konfigurasi sistem.

batal persediaan () {// Comunicacao serial com o modulo mySoftwareSerial.begin (9600); // Inicializa sebuah siri do Arduino Serial.begin (115200); // Verifica se o modulo esta respondendo e se o // cartao SD foi encontrado Serial.println (); Serial.println (F ("DFRobot DFPlayer Mini")); Serial.println (F ("Memulakan modul DFPlayer … Tunggu!")); jika (! myDFPlayer.begin (mySoftwareSerial)) {Serial.println (F ("Tidak dimulakan:")); Serial.println (F ("1. Periksa sambungan DFPlayer Mini")); Serial.println (F ("2. Masukkan kad SD")); sementara (benar); } Bersiri.println (); Serial.println (F ("Modul DFPlayer Mini diinisialisasi!")); // Definicoes iniciais myDFPlayer.setTimeOut (500); // Timeout bersiri 500ms myDFPlayer.volume (5); // Jilid 5 myDFPlayer. EQ (0); // Equalizacao menu_opcoes normal (); }

Sekiranya kad memori dimasukkan, aliran kod akan memasuki fungsi gelung.

gelung void () {// Menunggu kemasukan data melalui siri sementara (Serial.available ()> 0) {command = Serial.read (); if ((command> = '1') && (command <= '3')) {Serial.print ("Pengeluaran semula muzik"); Serial.println (arahan); perintah = perintah - 48; myDFPlayer.play (arahan); menu_opcoes (); } // Pengeluaran semula // Berhenti jika (command == 's') {myDFPlayer.stop (); Serial.println ("Muzik Berhenti!"); menu_opcoes (); } // Pausa / Continua a musica if (perintah == 'p') {pausa =! Pausa; jika (pausa == 0) {Serial.println ("Teruskan …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Muzik Dijeda!"); myDFPlayer.pause (); } menu_opcoes (); }

// Menambah kelantangan

jika (perintah == '+') {myDFPlayer.volumeUp (); Serial.print ("Volume semasa:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (perintah == '') {myDFPlayer.next (); Serial.println ("seterusnya:"); Serial.print ("Trek semasa:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menu_opcoes (); } // Mengurangkan kelantangan jika (perintah == '-') {myDFPlayer.volumeDown (); Serial.print ("Volume Semasa:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}}

Pengguna boleh menghantar watak kawalan berikut:

Nombor 1 hingga 3: Pilih lagu yang akan dimainkan;

  • Huruf s: Hentikan lagu; Huruf p: Jeda lagu;
  • Hantar tanda +: Tingkatkan kelantangan lagu;
  • Hantarkan - isyarat: Kurangkan kelantangan lagu;
  • Hantar isyarat <: Pilih lagu sebelumnya;
  • Hantar isyarat>: Pilih lagu seterusnya;

Dari isyarat, huruf, dan angka ini, Arduino akan menerimanya melalui siri dan akan mengawal muzik yang akan dimainkan.

Setiap syarat ditunjukkan di bawah dan dalaman, dengan perintah masing-masing.

if ((command> = '1') && (command <= '3')) {Serial.print ("Pengeluaran semula muzik"); Serial.println (arahan); perintah = perintah - 48; myDFPlayer.play (arahan); menu_opcoes (); } // Pengeluaran semula // Berhenti jika (command == 's') {myDFPlayer.stop (); Serial.println ("Muzik Dihentikan!"); menu_opcoes (); } // Pausa / Continua a musica if (perintah == 'p') {pausa =! Pausa; jika (pausa == 0) {Serial.println ("Teruskan …"); myDFPlayer.start (); } if (pausa == 1) {Serial.println ("Muzik Dijeda!"); myDFPlayer.pause (); } menu_opcoes (); }

// Menambah kelantangan

jika (perintah == '+') {myDFPlayer.volumeUp (); Serial.print ("Volume semasa:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); } if (perintah == '') {myDFPlayer.next (); Serial.println ("seterusnya:"); Serial.print ("Trek semasa:"); Serial.println (myDFPlayer.readCurrentFileNumber () + 1); menu_opcoes (); } // Mengurangkan kelantangan jika (perintah == '-') {myDFPlayer.volumeDown (); Serial.print ("Volume Semasa:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}

Oleh itu, jika anda menggunakan semua langkah yang ditunjukkan, anda dapat belajar:

  • Litar operasi asas DFMini Player MP3;
  • Organisasi dan konfigurasi fail suara pada kad memori;
  • Kawalan muzik dengan Arduino. Dari kod ini, anda dapat mengembangkan projek lain yang perlu menggunakan suara sebagai fungsi sistem.

Ucapan terima kasih

Selesai, kami mengucapkan terima kasih atas bacaan anda dan sokongan PCBWAY. COM kerana menyokong Silício Lab dalam penghasilan artikel ini untuk anda.

Makmal Silícios mengucapkan terima kasih kepada pihak UTSOURCE untuk menawarkan komponen elektronik untuk membina projek ini.

Disyorkan: