جدول المحتويات:

مشغل الموسيقى AdaBox004: 4 خطوات
مشغل الموسيقى AdaBox004: 4 خطوات

فيديو: مشغل الموسيقى AdaBox004: 4 خطوات

فيديو: مشغل الموسيقى AdaBox004: 4 خطوات
فيديو: افضل تطبيقات الاندرويد 2021 | أقوى مشغل موسيقى هتقابله حرفيًا | اتحداك مش هتحذفه 2024, يوليو
Anonim
مشغل موسيقى AdaBox004
مشغل موسيقى AdaBox004

لقد استخدمت الأجزاء الموجودة في AdaBox004 لإنشاء مشغل موسيقى بسيط. يتم توصيله بمنفذ USB ويبدأ تشغيل الأغاني بشكل عشوائي من بطاقة micro SD. إنها لورشة العمل الخاصة بي للحصول على مصدر لا ضجيج للأغاني المتفائلة.

الخطوة 1: الأجزاء

AdaBox004 (https://www.adafruit.com/product/3370)

الخطوة 2: اصنع صندوق الموسيقى

اصنع صندوق الموسيقى
اصنع صندوق الموسيقى
اصنع صندوق الموسيقى
اصنع صندوق الموسيقى

التعليمات العامة موجودة على موقع AdaFruit على

من المهم الانتباه إلى:

عند قراءة تعليمات AdaBox004 ، من السهل التغاضي عن روابط مواقع التعليمات الخاصة بالمكونات. تأكد من الانتباه إلى المربعات الخضراء التي تحتوي على روابط لـ: Adafruit Feather HUZZAH ESP8266 (https://learn.adafruit.com/adafruit-feather-huzzah-esp8266). ضمن قسم "استخدام Arduino IDE" للوحة ، يحتوي على روابط إلى برامج التشغيل التي ستحتاج إليها لتوصيل اللوحة وتنزيل الكود من Arduino IDE ، بالإضافة إلى إرشادات لإضافة اللوحة كخيار إلى Arduino IDE.

وبالمثل ، انتبه إلى الرابط الخاص بـ Music Maker FeatherWing (https://learn.adafruit.com/adafruit-music-maker-featherwing/). يحتوي ذلك على إرشادات لتثبيت المكتبات اللازمة على Arduino.

لقد قمت بتوصيل مقياس الجهد تمامًا كما هو موضح (https://learn.adafruit.com/adabox004/adding-a-volume-knob) - لكن لاحظ أنني قمت بنقل الريشة مرة أخرى على اللوح للحصول على كابل USB مناسبًا.

يأتي الصندوق الأبيض مع المجموعة. لقد استخدمت ببساطة ثقبًا لعمل ثقوب كبيرة بما يكفي لتناسب كابل USB المرفق. لقد صنعت شقًا صغيرًا بسكين جيب في الصندوق المطوي ، لذلك عرفت مكان القطع على كل لوحة.

بالنسبة لفتح السماعة ، قمت بتقدير المركز ووضعته بعملة أجنبية كبيرة (كوستاريكا 100 كولون على وجه الدقة) ، ثم قطعت الدائرة بسكين هواية في المتجر. كان مكبر الصوت في صف ووضعت علامة على المكان الذي يجب أن تذهب إليه البراغي الصغيرة بكمة حادة.

الخطوة 3: كود مشغل الموسيقى

لقد قمت بتعديل رمز المثال لمشغل الريش ، وإزالة الكود الذي لا ينطبق. يمكنك قصها ولصقها في Arduino IDE ثم تحميلها على الريش الخاص بك.

لاحظ أنني واجهت صعوبة في محاولة التعرف على الملفات. ما لدي هنا يعمل ، لكن عليك تعديل الكود لتغيير عدد الأغاني المتاحة. ولاحظ أن الطريقة التي قمت بها ستجعل من الصعب أداء أكثر من 100 أغنية (000 - 099) لأنها لا تحدد سوى رقمين فرديين. كان بإمكاني اختيار رقم المسار الفعلي ، ولكن بعد ذلك كان عليّ تحليله لإنشاء اسم الملف الصحيح. ربما في بعض التكرار في المستقبل.

الملف متاح أيضًا على GitHub على https://github.com/KFW/AdaBox004. إذا قمت بإجراء أي تغييرات ، فهذا هو المكان الذي سيكونون فيه.

// AdaBox004_random_songs

// خصيصًا للاستخدام مع Adafruit Feather ، تم تعيين الدبابيس مسبقًا هنا! // مثال feather_player المعدل لمشروع AdaBox 004 // مشغل مستقل يقوم بتشغيل أغانٍ عشوائية من قائمة التشغيل // تم تجريده من الكود غير المستخدم // واجه مشكلة في الحصول على اسم الملف string to working String type // منذ استدعاء الوظيفة للتشغيل يستخدم char array // بعد تجربة طرق مختلفة ، هذا هو kludge الذي أتيت به // المسارات تسمى TRACK ##. mp3 // لدي 60 أغنية على بطاقة SD I m باستخدام (000 - 059) // سيكون أكثر ذكاءً لحساب عدد الملفات أو إيجاد طريقة أخرى للحصول على اسم الملف عشوائيًا // حسنًا في المرة القادمة

// تشمل مكتبات SPI و MP3 و SD

# تضمين # تضمين # تضمين

// هذه هي الدبابيس المستخدمة

#define VS1053_RESET -1 // VS1053 reset pin (not used!) // Feather ESP8266 - باستخدام HUZZAH featther #define VS1053_CS 16 // VS1053 chip select pin (output) #define VS1053_DCS 15 // VS1053 Data / command select pin (الإخراج) #define CARDCS 2 // Card chip select pin #define VS1053_DREQ 0 // VS1053 طلب البيانات ، من الناحية المثالية دبوس المقاطعة #define VOLUME_KNOB A0

int lastvol = 10 ؛

int loopcounter = 0 ؛ مسار طويل سلسلة المسار أغنية char [13] = {'T'، 'R'، 'A'، 'C'، 'K'، '0'، '2'، '0'، '.'، 'm'، 'p' ، '3'، '\ 0'}؛

Adafruit_VS1053_FilePlayer musicPlayer =

Adafruit_VS1053_FilePlayer (VS1053_RESET ، VS1053_CS ، VS1053_DCS ، VS1053_DREQ ، CARDCS) ؛

الإعداد باطل() {

// Serial.begin (115200) ؛ // مطلوب فقط لحل المشاكل // while (! Serial) {delay (1)؛ } // انتظر حتى يتم فتح المنفذ التسلسلي ، // Serial.println ("\ n / n Adafruit VS1053 Feather Test")؛ randomSeed (ESP.getCycleCount ()) ، // HUZZAH يحتوي على دبوس واحد فقط تم استخدامه بالفعل // مطلوب بذرة عشوائية مختلفة // هذه الفكرة من https://github.com/esp8266/Arduino/issues/728 musicPlayer.begin () ؛ musicPlayer.sineTest (0x44، 500) ؛ // قم بعمل نغمة للإشارة إلى أن VS1053 يعمل SD.begin (CARDCS) ؛

// ضبط مستوى الصوت للقنوات اليسرى واليمنى. أرقام أقل == حجم أعلى!

musicPlayer.setVolume (lastvol ، lastvol) ؛ musicPlayer.useInterrupt (VS1053_FILEPLAYER_PIN_INT) ، // DREQ int}

حلقة فارغة() {

// تحقق دوريًا لضبط مستوى الصوت!

loopcounter ++ ؛ إذا (loopcounter> = 1000) {loopcounter = 0 ؛ كثافة العمليات المجلد = 0 ؛ المجلد = analogRead (VOLUME_KNOB) ؛ المجلد / = 10 ؛ if (abs (vol - lastvol)> 3) {// Serial.println (vol) ؛ lastvol = المجلد ؛ musicPlayer.setVolume (lastvol ، lastvol) ؛ }}

// تشغيل ملف في الخلفية ، يتطلب المقاطعات!

if (! musicPlayer.playingMusic) {trackNumber = random (6)؛ // يجب أن تفعل هذا رقمًا واحدًا في كل مرة ؛ الرقم الأول 0-5 char c = char (trackNumber + 48) ؛ // ASCII 48 هي "0" ؛ بحاجة إلى تحويل القيمة للحصول على أغنية شخصية صحيحة [6] = ج ؛ // استبدال قيمة العشرات في مصفوفة char trackNumber = random (10) ؛ // الرقم الثاني 0-9 c = char (trackNumber + 48) ؛ أغنية [7] = ج ؛ // Serial.println (أغنية) ؛ musicPlayer.startPlayingFile (أغنية) ؛ تأخير (10) ؛ }}

الخطوة 4: استمتع

ما عليك سوى توصيل مصدر طاقة USB والاستمتاع بأغانيك المفضلة.

يمكن ضبط الحجم باستخدام مقياس الجهد داخل الصندوق. خلاف ذلك لا توجد ضوابط.

موصى به: