DFplayer mini adalah modul mp3 dengan output audio sederhana yang dapat terhubung langsung ke speaker atau jack earphone. Modul dapat berfungsi dalam kombinasi dengan Arduino, yang memungkinkan untuk komunikasi RX / TX (Serial), sehingga melalui perintah serial sederhana kita dapat memutar musik dan menjalankan fungsi lain seperti memutar lagu berikutnya dan juga sebelumnya, mengacak, menghentikan lagu, dll. Modul ini lengkap dengan slot SDcard dan juga mendukung sistem file FAT16, FAT32.
Arduino Uno, papan pengembangan mikrokontroler yang terkenal, menggunakan mikrokontroler ATmega328P dan menawarkan beragam fitur, termasuk 14 pin digital I/O yang dapat dikonfigurasi sebagai output PWM, 6 pin input analog, dan koneksi USB untuk pemrograman dan transfer data. Dengan kecepatan clock 16MHz, Arduino Uno menjadi pilihan populer bagi para penghobi, pembuat, dan pengembang proyek elektronika yang ingin membuat robotika, sistem kendali, atau bahkan proyek DIY lainnya. Sifatnya yang open source juga memungkinkan pengguna untuk memodifikasi perangkat keras dan juga perangkat lunaknya sesuai kebutuhan, menjadikannya alat yang ideal untuk pembelajaran dan prototyping.
MP3 Player Arduino Uno
1. Skema Rangkaian arduino
Gambar rangkaian MP3 Player
Keterangan Sabungan :
Pin pada Arduino :
- Pin 2 – Button Next
- Pin 3 – Button Start/Pause
- Pin 4 – Button Previous
- Pin 10 – Pin TX DFPlayer
- Pin 11 – Res 1k – Pin RX DFPlayer
2. Alat / Bahan
- Arduino       : 1 buah
- Breadboard    : 1 buah
- DFPlayer Mini  : 1 buah
- Speaker       : 1 buah
- Pushbutton     : 3 buah
- Resistor 1kΩ   : 1 buah
Belajar Elektronika, Arduino, dan juga IoT step by step dengan bantuan tangga belajar? Daftar sekarang dan dapatkan PROMO
3. Sketch Program Arduino
/* Program MP3Player dibuat oleh Indobot */ #include "SoftwareSerial.h" //Pendeklarasian Library SoftwareSerial mySerial(10, 11); # define Start_Byte 0x7E //Pendeklarasian variabel # define Version_Byte 0xFF # define Command_Length 0x06 # define End_Byte 0xEF # define Acknowledge 0x00 # define ACTIVATED LOW int buttonNext = 2; // Pemilihan Pin int buttonPause = 3; int buttonPrevious = 4; boolean isPlaying = false; void setup () { //Pengaturan Pin dan Variabel pinMode(buttonPause, INPUT); digitalWrite(buttonPause, HIGH); pinMode(buttonNext, INPUT); digitalWrite(buttonNext, HIGH); pinMode(buttonPrevious, INPUT); digitalWrite(buttonPrevious, HIGH); mySerial.begin (9600); delay(1000); playFirst(); isPlaying = true; } void loop () { //Perulangan Program if (digitalRead(buttonPause) == ACTIVATED) { if (isPlaying) { pause(); isPlaying = false; } else { isPlaying = true; play(); } } if (digitalRead(buttonNext) == ACTIVATED) { if (isPlaying) { playNext(); } } if (digitalRead(buttonPrevious) == ACTIVATED) { if (isPlaying) { playPrevious(); } } } void playFirst() { //Deklarasi Musik Pertama execute_CMD(0x3F, 0, 0); delay(500); setVolume(20); delay(500); execute_CMD(0x11, 0, 1); delay(500); } void pause() { //Deklarasi Pause execute_CMD(0x0E, 0, 0); delay(500); } void play() { //Deklarasi Play execute_CMD(0x0D, 0, 1); delay(500); } void playNext() { //Deklarasi Next execute_CMD(0x01, 0, 1); delay(500); } void playPrevious() { //Deklarasi Previous execute_CMD(0x02, 0, 1); delay(500); } void setVolume(int volume) { //Deklarasi Volume execute_CMD(0x06, 0, volume); // Seting volume antara (0x00~0x30) delay(2000); } void execute_CMD(byte CMD, byte Par1, byte Par2) { word checksum = -(Version_Byte + Command_Length + CMD + Acknowledge + Par1 + Par2); byte Command_line[10] = { Start_Byte, Version_Byte, Command_Length, CMD, Acknowledge, Par1, Par2, highByte(checksum), lowByte(checksum), End_Byte }; for (byte k = 0; k < 10; k++) { mySerial.write( Command_line[k]); } }
Kesimpulan :
Pada project ini DFPlayer difungsikan sebagai modul untuk dijadikan sebuah mp3 player. Button pertama dari kanan digunakan sebagai tombol Next, kemudian button tengah berfungsi sebagai tombol play/pause dan button ketiga digunakan sebagai tombol Previous.
Baca juga :Telah Dibuka! Studi Independen IoT Engineer Camp MSIB 6 Indobot Academy
Mau belajar elektronika dasar? Arduino? atau bahkan Internet of Things? Ikuti kursus online Indobot Academy!
Saya sudah mencoba rangkaian dan program seperti di rangkaian atas tapi dfplayer tidak berkedip atau nyala biru sehingga tidak mengeluarkan suara.
Apakah ada saran untuk kondisi itu?
Coba dicek wiringnya kak. Siapa tau ada yang longgar. 🙂