پروژه های آردوینو مدارهای الکترونیک

آموزش ساخت MP3 player با آردوینو بخش اول

آموزش راه اندازی ماژول mp3
نوشته شده توسط علیرضا قربانی

به نام خدا. در این پست آموزشی قصد راه‌اندازی ماژول   DFPlayer Mini:SKU DFR0299 را با استفاده از آردوینو داریم.با مرجع تخصصی Arduino ، دیحی اسپارک همراه باشید.

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

مشخصات ماژول DFPlayer Mini

  • ولتاژ کاری ۳٫۲ تا ۵ ولت DC
  • پشتبانی از فایل‌های سیستمی FAT16 و FAt32
  • پشتیبانی از ۳۲ گیگ Micro SD
  • پشتیبانی از ۳۲ گیگ USB
  • پشتیبانی از ۶۴ مگابایت حافظه NORFLASH
  • دارای مد کنترلی سریال ، AD , I/O
  • قابلیت تنظیم ولوم در ۳۰ سطح مختلف
  • دارای قابلیت تنظیم اکولایزر تا ۶ سطح
  • پشتیبانی از ۱۰۰ فولدر و ۲۵۵ اهنگ از هر فولدر

 

 

پین‌های ماژول MP3 DFPlayer Mini

آموزش راه اندازی ماژول mp3 با آردوینو

پین‌های ماژول MP3 DFplayer Mini

 

 شماره پین  نام پین  توضیجات  تذکرات
 ۱  VCC ولتاژ تتغذیه  ۳٫۳ تا ۵ ولت DC
۲ RX  گیرنده پروتکل سریال
۳ TX فرستنده پروتکل سریال
۴ DAC_R کانال خروجی راست صدا برای درایو کردن هندزفری و آمپلی فایر
۵ DAC_l کانال خروجی چپ صدا برای درایو کردن هندزفری و آپلی فایر
 ۶  SPk_1 اسپیکر پین +
۷  GND Ground   به تغذیه منفی مدار متصل می‌شود
 ۸  SPK_2  اسپیکر پین –
 ۹  IO1  پایه تحریک۱  نگه داشتن در زمان کوتاه آهنگ قبلی را اجرا می‌کند و در صورت نگه داشتن در زمان بیشتر ولوم کاهش پیدا می‌کند
۱۰ GND Ground به تغذیه منفی مدار متصل می‌شود
۱۱ IO2 پایه تحریک۲ نگه داشتن در زمان کوتاه آهنگ بغدی را اجرا می‌کند و نگه داشتن در زنام بیشتر،ولوم  را افزاریش می‌دهد
۱۲ ADKEY1 AD port 1 به منظور راه اندازی در مد AD
۱۳ ADKEY2 AD port 2 به منظور راه اندازی در مد AD
۱۴ USB USB+ DP USB Port
۱۵ USB- USB- DM USB Port
۱۶ Busy وضعیت اجرای آهنگ LOW به معنی اجرای آهنگ و HIGH به معنی عدم اجرای موسیقی

 

 

سخت افزار مورد نیاز

آردوینو  mega2560

ماژول DFPlayer Mini SKU:DFR0299

LCD2*16

۷  عدد میکروسوئیچ بزرگ 

پتانسیومتر ۱۰ کیلو اهم

 

توضیحات پروژه

در این پروژه یک Micro SD را به ماژول Mp3 متصل میکنیم و با استفاده از پورت سریال آردوینو آن را کنترل می‌کنیم. با استفاده از ۷ عدد میکروسوئیچ عملیات play , stop , pause ,  افزایش ولوم و کاهش ولم را انجام می‌دهیم و همچنین وضعیت اجرای آهنگ و عملیات  را بر روی یک عدد LCD 2*16 نمایش می‌دهیم.میتوانید آموش جامع کار با LCD کاراکتری را در لینک زیر مشاهده کنید:

آموزش جامع کار با LCD کاراکتری در آردوینو
آموزش دیبانس کلید در آردوینو

 

اتصالات

پین VCC مازول را به ۵ ولت DC متصل می‌کنیم

پین RX ماژول را به TX آردوینو متصل می‌کنیم

همچنین پین TX ماژول را به پین RX آردوینو متصل می‌کنیم

SPk_1 و SPk_2 ماژول را به اسپیکر متصل می‌کنیم.

همپنین ۸ عدد تاچ سوئیچ به پین‌های شماره ۴۶ تا ۵۳ متصل می‌کنیم  آن‌ها را در وضعیت پول آپ داخلی قرار می‌دهیم

برنامه نویسی

ابتدا کتابخانه‌ی مرتبط با این ماژول را از لیک زیر دانلود کنید و سپس آن را به نرم‌افزار آردوینو اضافه کنید.

دانلود کتابخانه ماژول MP3

در این برنامه برای درست عمل کردن کلید‌ها (جلوگیری از نویزگیری ) در کتابخانه دیبانسینگ استفاده شده است که می‌توانید آموزش آن را در لینک زیر مشاهده کنید:

آموزش دی بانسینگ کلید در آردوینو بخش دوم

تمام کلید ها در وضعیت پول آپ داخلی قرار دارند و با تابع fell موجود در کتابخانه دیبانس ، فشرده شدن آن‌ها را تشخیص می‌دهیم.

 

 

کدهای برنامه :

 

 

در قسمت‌های بعدی به آموزش ارتباط آپلی‌فایر و ماژول MP3 خواهیم پرداخت.

 

 

درباره نویسنده

علیرضا قربانی

علیرضا قربانی هستم دانشجوی مهندسی پزشکی. چیزهای خیلی زیادی رو در دنیا دوست دارم. یک گیک هستم و یشه گفت یک هکر. نه به معنی دزدی پسورد و ایمیل مردم. به معنی عشق به دونستن و عشق به تحقیق درباره خیلی از چیزهایی که می بینم و می‌شنوم. اگر بخوام علاقه‌مندی‌ درجه یکم رو نام ببرم میتونم بگم برنامه نویسی و بعد از اون امبدد سیستم ها.

۱۲ دیدگاه

  • سلام دوست عزیز…بسیار کارت عالی بود..چند روزه دنبال همچین چیزی بودم ولی مثه این گیر نمیاوردم…حالا چند تا سوال…
    چجوری میتونیم به جای playing اسم اهنگ رو بنویسیم؟؟
    از ماژولی که فلش بخوره استفاده کنیم؟؟؟
    و در صورت امکان از طریق بلوتوث نیز کنترل بشه
    ممنون میشم واضح برام توضیح بدی..چون سر رشته ای از کار با برد ها و ای سی های پروگرام ندارم

  • یه آمپلی فایر هم دارم که میخوام توسط اردوینو کنترل بشه..یعنی Aux اگر بود رو ال سی دی نمایش بده Aux اگر هم اس دی بود که نام اهنگ رو بنویسه…همچنین صدای آمپلی فایر از طریق همین بورد کنترل بشه با همون دکمه vol up و vol down ی که الان هستش…درضمن امپلی فایرم ۱۰۰ وات rms هستش نمیخوام افت کیفیت داشته باشه…اگر امکانش هست راهنماییم بفرمایید خیلی ممنون

  • سلام
    نحوه اتصال امپلی فایر به این پروژه را توضیح دهید
    منظور اینکه خروجی این ماژول رو به اردوینو متصل و خروجی از برد اردوینو رو به یک امپلی فایر پرقدرت متصل کنیم که صدای امپلی فایر از طریق کلید های ولوم up و down کنترل بشه
    همچنین اگه بشه باس و تریبل و بالانس اون رو از طریق اردوینو کنترل کرد خیلی خوب میشه
    و اینکه چگونه نام اهنگ رو بر روی ال سی دی نمایش بدیم؟
    ببخشید سوالام زیاد شد.
    جا داره اینم بگم دیجی اسپارک بهترینه

  • به این خاطر میگم خروجی ماژول به برد متصل بشه که بتونیم Aux نیز بهش بدهیم…یعنی زمانی که ما فیش Aux رو زدیم روی ال سی دی نمایش بده که Aux هست و رم پخش نشه…امیدوارم منظورم رو متوجه شده باشید

  • سلام خسته نباشید. ممنونم از سایت خوبی که دارید.من همین کدی رو که قرار دادید رو کامپایل میکنم ولی ارور زیر رو میده.میشه کمک کنید که مشکل از چی میتونه باشه.

    Arduino: 1.8.0 (Windows 7), Board: “Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)”

    mp3_Mega:1: error: #include expects “FILENAME” or

    #include <SoftwareSerial.h>

    ^

    mp3_Mega:2: error: #include expects “FILENAME” or

    #include <DFPlayer_Mini_Mp3.h>

    ^

    mp3_Mega:3: error: #include expects “FILENAME” or

    #include <Bounce2.h>

    ^

    mp3_Mega:4: error: #include expects “FILENAME” or

    #include <LiquidCrystal.h>

    ^

    exit status 1
    #include expects “FILENAME” or

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

  • سلام
    من به ،mp3 player با امکان نمایش اطلاعات فایل مانند اسم آهنگ و فولدرها میخوام مانند پخش هایش خودرو. امکانش هست اونو برامون بزارید؟ البته روی همین ال سی دی ماه تو این آموزش استفاده کردید

  • سلام خسته نباشید این ماژول امکان این رو داره که بتونیم نام فایل رو دریافت کنیم و در lcd نمایش بدیم؟ منظورم دریافت اطلاعات فایل از پورت سریال هست

  • سلام با تشکر از مطلب خوبتون.
    فقط فکر میکنم چینش کدها درست نیست یعنی اول خط رفته آخر خط .شاید برای همینه که بعضی دوستان جواب نگرفتن .البته خودم هنوز تست نکردم .ایشالا اگر تست کردم اینجا نتیجه رو میگم . ممنون

دیدگاهتان را بنویسید