فهرست مطالب:

نحوه استفاده از ماژول MP3 DFMini Player با آردوینو: 4 مرحله
نحوه استفاده از ماژول MP3 DFMini Player با آردوینو: 4 مرحله

تصویری: نحوه استفاده از ماژول MP3 DFMini Player با آردوینو: 4 مرحله

تصویری: نحوه استفاده از ماژول MP3 DFMini Player با آردوینو: 4 مرحله
تصویری: ماژول DF player چیه | نکات مهم راه اندازی 2024, نوامبر
Anonim
نحوه استفاده از ماژول MP3 DFMini Player با آردوینو
نحوه استفاده از ماژول MP3 DFMini Player با آردوینو

چندین پروژه نیاز به بازتولید صدا برای افزودن نوعی عملکرد دارند. در میان این پروژه ها ، ما دسترسی به افراد کم بینا ، پخش کننده های موسیقی MP3 و اجرای صداهای صوتی توسط روبات ها را مشخص می کنیم.

در همه این سیستم ها ، ما برای اتصال به آردوینو به یک دستگاه بازتولید صدا MP3 نیاز داریم. بنابراین ، در این مقاله نکات زیر را یاد می گیریم: مدار اصلی عملکرد DFMini Player MP3 ؛ سازماندهی و پیکربندی فایل های صوتی روی کارت حافظه ؛ کنترل موسیقی با آردوینو.

تدارکات

PCBWay PCB سفارشی ؛

ماژول MP3 DFPlayer Mini - UTSOURCE؛

مقاومت 10kR - UTSOURCE؛

دکمه تغییر - UTSOURCE؛

تخته نان - UTSOURCE؛

Arduino UNO - UTSOURCE؛

پین سرصفحه - UTSOURCE؛

مرحله 1: ماژول MP3 DF Mini Player چیست؟

ماژول MP3 DF Mini Player چیست؟
ماژول MP3 DF Mini Player چیست؟
ماژول MP3 DF Mini Player چیست؟
ماژول MP3 DF Mini Player چیست؟

ماژول DFMini Player یک پخش کننده موسیقی کوچک ، کم هزینه و کم مصرف است که هدف آن بازتولید صداهای ذخیره شده روی کارت حافظه است.

بر این اساس ، ماژول را می توان از طریق حالت مستقل کنترل کرد ، یعنی در این حالت فقط ماژول DFMini ، باتری برای تغذیه ، بلندگو ، دکمه های کنترل آن و کارت SD با آهنگ ها وجود خواهد داشت. راه دیگر کنترل آن استفاده از آردوینو یا دستگاه کنترل دیگر است.

به عنوان مثال ، آردوینو دستوراتی را از طریق ارتباط سریال با ماژول DFMini Player ارسال می کند. ماژول DFMini Player در شکل 1 نشان داده شده است.

برای کنترل آن ، مهم است که از مدار اصلی مستقل استفاده کنید. این مدار در شکل 2 نشان داده شده است.

دو دکمه نشان داده شده در مدار بالا برای تغییر آهنگ های موسیقی و کنترل میزان صدا استفاده می شود. دکمه متصل به پین IO1 برای رفتن به آهنگ قبلی و کاهش صدا استفاده می شود. با یک لمس سریع ، سیستم به آهنگ قبلی باز می گردد ، اما اگر دکمه را برای بیش از 1 ثانیه فشار دهید ، سیستم صدای آهنگ را کاهش می دهد.

دکمه متصل به پین IO2 برای رفتن به آهنگ بعدی و افزایش صدا استفاده می شود. با یک لمس سریع ، سیستم به آهنگ بعدی پیش می رود ، اما اگر دکمه را برای بیش از 1 ثانیه فشار دهید ، سیستم صدای آهنگ را افزایش می دهد.

گام 2:

تصویر
تصویر

در این روش مستقل ، همانطور که در شکل 3 نشان داده شده است ، آهنگها باید روی کارت حافظه ذخیره شوند.

به این ترتیب ، هر بار که دکمه ها فشار داده می شوند ، سیستم هر آهنگ را به ترتیب صعودی یا نزولی پخش می کند. با این حال ، هنگام استفاده از آردوینو یا دستگاه کنترل دیگر ، باید نحوه سازماندهی فایل های موسیقی روی کارت SD را تغییر دهیم.

اکنون نحوه کنترل DFMini Player با استفاده از آردوینو از طریق ارتباط سریال را توضیح خواهم داد.

مرحله 3: کنترل پخش کننده DFMini با آردوینو

کنترل پخش کننده DFMini با آردوینو
کنترل پخش کننده DFMini با آردوینو
کنترل پخش کننده DFMini با آردوینو
کنترل پخش کننده DFMini با آردوینو

در این مرحله ، کنترل صدا ، کنترل محدوده ، دستورات یکسان سازی و سایر ویژگی ها توسط آردوینو ارسال می شود.

آردوینو باید از طریق سریال با DFMini Player ارتباط برقرار کرده و دستورات کنترل را ارسال کند.

طرح الکترونیکی مدار کنترل در شکل 4 نشان داده شده است.

ابتدا باید مدار نشان داده شده در شکل زیر را جمع آوری کنیم. پس از مونتاژ این مدار ، باید آهنگ ها را روی کارت حافظه خود اضافه کنید. در این مرحله ، آهنگها باید به عنوان مثال 01 ، 02 ، 03 تغییر نام دهند.

شما نمی توانید آهنگها را با نام آنها بگذارید ، زیرا هنگام ارسال دستور اجرای آهنگ خاص توسط Arduino مشکلی ایجاد می شود. بنابراین ، باید مطابق شکل زیر پیکربندی کنید.

مرحله 4:

پس از نامگذاری پرونده ها ، کد زیر را روی آردوینو خود بنویسید.

// منتظر ورود اطلاعات از طریق serial while (Serial.available ()> 0) {command = Serial.read ()؛ if ((command> = '1') && (فرمان <= '9')) {Serial.print ("بازتولید موسیقی") ؛ Serial.println (فرمان) ؛ فرمان = فرمان - 48 ؛ myDFPlayer.play (فرمان) ؛ menu_opcoes ()؛ } // بازتولید // توقف if (دستور == 's') {myDFPlayer.stop ()؛ Serial.println ("موسیقی متوقف شد!")؛ menu_opcoes ()؛ } // Pausa/Continua a musica if (command == 'p') {pausa =! pausa؛ if (pausa == 0) {Serial.println ("ادامه …") ؛ myDFPlayer.start ()؛ } if (pausa == 1) {Serial.println ("موسیقی متوقف شد!")؛ myDFPlayer.pause ()؛ } menu_opcoes ()؛ }

// حجم را افزایش می دهد

if (فرمان == '+') {myDFPlayer.volumeUp ()؛ Serial.print ("حجم فعلی:") ؛ Serial.println (myDFPlayer.readVolume ()) ؛ menu_opcoes ()؛ } if (command == '') {myDFPlayer.next ()؛ Serial.println ("بعدی:") ؛ Serial.print ("آهنگ جاری:")؛ Serial.println (myDFPlayer.readCurrentFileNumber ()+1) ؛ menu_opcoes ()؛ } // حجم را کاهش می دهد اگر (دستور == '-') {myDFPlayer.volumeDown ()؛ Serial.print ("حجم فعلی:") ؛ Serial.println (myDFPlayer.readVolume ()) ؛ menu_opcoes ()؛ }}} void menu_opcoes () {Serial.println ()؛ Serial.println (F ("======================================== ================================================ ===================================== "))) ؛ Serial.println (F ("دستورات:")) ؛ Serial.println (F ("[1-3] برای انتخاب فایل MP3")) ؛ Serial.println (F ("[s] توقف تولید مثل")) ؛ Serial.println (F ("[p] مکث/ادامه موسیقی")) ؛ Serial.println (F ("[+ یا -] حجم را افزایش یا کاهش می دهد")) ؛ Serial.println (F (" به جلو یا عقب مسیر")) ؛ Serial.println ()؛ Serial.println (F ("========================================= ================================================ ==================================== ")))؛ }

کد ارائه شده در بالا بسیار ساده است و به شما کمک می کند آهنگ را بر اساس شماره آن انتخاب کنید ، متوقف کنید ، مکث کنید ، میزان صدا را کنترل کرده و آهنگ ها را رد کنید.

کنترل موسیقی شامل ارسال داده ها از سریال Arduino IDE به برد Arduino ما است. در ابتدا ، سیستم تنظیمات را انجام می دهد و بررسی می کند که آیا کارت SD در ماژول وارد شده است.

اگر درج نشده باشد ، سیستم پیامی برای هشدار به کاربر ارائه می دهد.

علاوه بر این ، سیستم پیام ها را با گزینه های پیکربندی سیستم نمایش می دهد.

void setup () {// Comunicacao serial com o modulo mySoftwareSerial.begin (9600) ؛ // Inicializa a serial 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 ("راه اندازی ماژول DFPlayer … صبر کنید!")) ؛ if (! myDFPlayer.begin (mySoftwareSerial)) {Serial.println (F ("مقداردهی نشده:")) ؛ Serial.println (F ("1. اتصالات DFPlayer Mini را بررسی کنید")) ؛ Serial.println (F ("2. قرار دادن کارت SD")) ؛ در حالی که (درست) ؛ } Serial.println ()؛ Serial.println (F ("ماژول DFPlayer Mini مقداردهی شده است!")) ؛ // Definicoes iniciais myDFPlayer.setTimeOut (500) ؛ // سریال زمان پایان 500ms myDFPlayer.volume (5)؛ // دوره 5 myDFPlayer. EQ (0) ؛ // Equalizacao normal menu_opcoes ()؛ }

در صورت قرار دادن کارت حافظه ، جریان کد وارد عملکرد حلقه می شود.

void loop () {// منتظر ورود اطلاعات از طریق سریال while (Serial.available ()> 0) {command = Serial.read ()؛ if ((command> = '1') && (فرمان <= '3')) {Serial.print ("بازتولید موسیقی") ؛ Serial.println (فرمان) ؛ فرمان = فرمان - 48 ؛ myDFPlayer.play (فرمان) ؛ menu_opcoes ()؛ } // بازتولید // توقف if (دستور == 's') {myDFPlayer.stop ()؛ Serial.println ("موسیقی متوقف شد!")؛ menu_opcoes ()؛ } // Pausa/Continua a musica if (command == 'p') {pausa =! pausa؛ if (pausa == 0) {Serial.println ("ادامه …")؛ myDFPlayer.start ()؛ } if (pausa == 1) {Serial.println ("موسیقی متوقف شد!")؛ myDFPlayer.pause ()؛ } menu_opcoes ()؛ }

// حجم را افزایش می دهد

if (فرمان == '+') {myDFPlayer.volumeUp ()؛ Serial.print ("حجم فعلی:") ؛ Serial.println (myDFPlayer.readVolume ()) ؛ menu_opcoes ()؛ } if (command == '') {myDFPlayer.next ()؛ Serial.println ("بعدی:") ؛ Serial.print ("آهنگ فعلی:")؛ Serial.println (myDFPlayer.readCurrentFileNumber ()+1) ؛ menu_opcoes ()؛ } // حجم را کاهش می دهد اگر (دستور == '-') {myDFPlayer.volumeDown ()؛ Serial.print ("حجم فعلی:") ؛ Serial.println (myDFPlayer.readVolume ()) ؛ menu_opcoes ()؛ }}}

کاربر می تواند کاراکترهای کنترل زیر را ارسال کند:

شماره های 1 تا 3: آهنگ مورد نظر را انتخاب کنید.

  • حرف s: آهنگ را متوقف کنید ؛ نامه p: آهنگ را متوقف کنید ؛
  • ارسال علامت +: افزایش حجم آهنگ ؛
  • ارسال سیگنال - کاهش حجم آهنگ ؛
  • ارسال سیگنال <: آهنگ قبلی را انتخاب کنید.
  • ارسال سیگنال>: آهنگ بعدی را انتخاب کنید.

از طریق این سیگنال ها ، حروف و اعداد ، آردوینو آنها را از طریق سریال دریافت می کند و موسیقی پخش شده را کنترل می کند.

هر شرط در زیر و داخلی ، با دستورات مربوطه ارائه شده است.

if ((command> = '1') && (فرمان <= '3')) {Serial.print ("بازتولید موسیقی") ؛ Serial.println (فرمان) ؛ فرمان = فرمان - 48 ؛ myDFPlayer.play (فرمان) ؛ menu_opcoes ()؛ } // بازتولید // توقف if (دستور == 's') {myDFPlayer.stop ()؛ Serial.println ("موسیقی متوقف شد!")؛ menu_opcoes ()؛ } // Pausa/Continua a musica if (command == 'p') {pausa =! pausa؛ if (pausa == 0) {Serial.println ("ادامه …") ؛ myDFPlayer.start ()؛ } if (pausa == 1) {Serial.println ("موسیقی متوقف شد!")؛ myDFPlayer.pause ()؛ } menu_opcoes ()؛ }

// حجم را افزایش می دهد

if (command == '+') {myDFPlayer.volumeUp ()؛ Serial.print ("حجم فعلی:") ؛ Serial.println (myDFPlayer.readVolume ()) ؛ menu_opcoes ()؛ } if (command == '') {myDFPlayer.next ()؛ Serial.println ("بعدی:") ؛ Serial.print ("آهنگ جاری:")؛ Serial.println (myDFPlayer.readCurrentFileNumber ()+1) ؛ menu_opcoes ()؛ } // حجم را کاهش می دهد اگر (دستور == '-') {myDFPlayer.volumeDown ()؛ Serial.print ("حجم فعلی:") ؛ Serial.println (myDFPlayer.readVolume ()) ؛ menu_opcoes ()؛ }}

بنابراین ، اگر تمام مراحل ارائه شده را به کار بگیرید ، می توانید یاد بگیرید:

  • مدار اصلی عملکرد MP3 DFMini Player ؛
  • سازماندهی و پیکربندی فایل های صوتی روی کارت حافظه ؛
  • کنترل موسیقی با آردوینو. از این کد ، می توانید پروژه های دیگری را توسعه دهید که نیاز به استفاده از صدا به عنوان عملکرد سیستم دارند.

تقدیر و تشکر

در پایان ، ما از خواندن شما و حمایت PCBWAY. COM از پشتیبانی آزمایشگاه Silício در تولید این مقاله برای شما سپاسگزاریم.

آزمایشگاه Silícios از UTSOURCE برای ارائه قطعات الکترونیکی برای ساخت این پروژه تشکر می کند.

توصیه شده: