תוכן עניינים:

כיצד להשתמש במודול MP3 של נגן DFMini עם Arduino: 4 שלבים
כיצד להשתמש במודול MP3 של נגן DFMini עם Arduino: 4 שלבים

וִידֵאוֹ: כיצד להשתמש במודול MP3 של נגן DFMini עם Arduino: 4 שלבים

וִידֵאוֹ: כיצד להשתמש במודול MP3 של נגן DFMini עם Arduino: 4 שלבים
וִידֵאוֹ: Start Using Wemos D1 Mini NodeMCU WiFi ESP8266 module with Arduino 2024, נוֹבֶמבֶּר
Anonim
כיצד להשתמש במודול MP3 של נגן DFMini עם Arduino
כיצד להשתמש במודול MP3 של נגן DFMini עם Arduino

כמה פרויקטים דורשים שחזור קול כדי להוסיף פונקציונליות כלשהי. בין הפרויקטים הללו, אנו מדגישים: נגישות ללקויי ראייה, נגני מוסיקה MP3 וביצוע צלילי קול על ידי רובוטים, למשל.

בכל המערכות הללו, אנו זקוקים להתקן שחזור צלילים MP3 כדי להתחבר ל- Arduino. לכן, במאמר זה נלמד את הנקודות הבאות: מעגל הפעלה בסיסי של נגן ה- DFMini MP3; ארגון ותצורה של קבצי קול בכרטיס הזיכרון; שליטה מוזיקלית עם Arduino.

אספקה

PCBWay PCB מותאם אישית;

מודול MP3 של DFPlayer מיני - UTSOURCE;

נגד 10kR - UTSOURCE;

לחצן מתג - UTSOURCE;

לוח לחם - UTSOURCE;

Arduino UNO - UTSOURCE;

סיכת כותרת - UTSOURCE;

שלב 1: מהו מודול MP3 של נגן DF מיני

מהו מודול MP3 נגן DF מיני
מהו מודול MP3 נגן DF מיני
מהו מודול MP3 נגן DF מיני
מהו מודול MP3 נגן DF מיני

מודול DFMini Player הוא נגן מוזיקה קטן בעל עלות נמוכה ועוצמה נמוכה שמטרתו לשחזר צלילים המאוחסנים בכרטיס זיכרון.

על סמך זה, ניתן לשלוט במודול באמצעות המצב העצמאי, כלומר במצב זה יהיה רק מודול DFMini, סוללה להפעלה, הרמקול, כפתורים לשליטה בו וכרטיס ה- SD עם השירים. דרך נוספת לשלוט בו היא שימוש בארדואינו או בהתקן בקרה אחר.

ה- Arduino, למשל, ישלח פקודות באמצעות תקשורת טורית עם מודול הנגן DFMini. מודול DFMini Player מוצג באיור 1.

כדי לשלוט בו, חשוב להשתמש במעגל העצמאי הבסיסי. מעגל זה מוצג באיור 2.

שני הכפתורים המוצגים במעגל לעיל משמשים לשינוי רצועות המוסיקה ושליטה בעוצמת הצליל. הכפתור המחובר לסיכה IO1 משמש למעבר לרצועה הקודמת ולהפחתת עוצמת הקול. עם נגיעה מהירה המערכת חוזרת לשיר הקודם, אולם אם תלחץ על הכפתור למשך יותר משנייה אחת, המערכת תפחית את עוצמת השיר.

הכפתור המחובר לסיכה IO2 משמש למעבר לשיר הבא ולהגברת עוצמת הקול. עם נגיעה מהירה המערכת מתקדמת לשיר הבא, אולם אם תלחץ על הכפתור למשך יותר משנייה אחת, המערכת תגדיל את עוצמת השיר.

שלב 2:

תמונה
תמונה

בשיטה עצמאית זו, יש לשמור את השירים בכרטיס הזיכרון, כפי שמוצג באיור 3.

בדרך זו, בכל לחיצה על הכפתורים, המערכת תשמיע כל שיר בסדר עולה או יורד. עם זאת, בעת שימוש בארדואינו או במכשיר שליטה אחר, עלינו לשנות את אופן ארגון הקבצים המוסיקליים בכרטיס ה- SD.

כעת, אסביר כיצד לשלוט בנגן DFMini באמצעות Arduino באמצעות תקשורת טורית.

שלב 3: שליטה בנגן DFMini באמצעות Arduino

שליטה בנגן DFMini עם Arduino
שליטה בנגן DFMini עם Arduino
שליטה בנגן DFMini עם Arduino
שליטה בנגן DFMini עם Arduino

בשלב זה, שליטת עוצמת הקול, בקרת הטווח, פקודות ההשוואה ותכונות אחרות יישלחו על ידי Arduino.

על הארדואינו לתקשר באמצעות הסידרה עם נגן DFMini ולשלוח את פקודות הבקרה.

התוכנית האלקטרונית של מעגל הבקרה מוצגת באיור 4.

ראשית, עלינו להרכיב את המעגל המוצג באיור שלהלן. לאחר הרכבת מעגל זה, עליך להוסיף את השירים בכרטיס הזיכרון שלך. בשלב זה יש לשנות את שם השירים ל 01, 02, 03, למשל.

אינך יכול להשאיר את השירים עם שמותיהם, מכיוון שתהיה בעיה כאשר הארדואינו ישלח את הפקודה לביצוע הרצועה הספציפית. לכן עליך להגדיר כפי שמוצג להלן.

שלב 4:

לאחר שמות הקבצים, כתוב את הקוד הבא ב- Arduino שלך.

// ממתין להזנת נתונים באמצעות סידורי (Serial.available ()> 0) {command = Serial.read (); if ((command> = '1') && (command <= '9')) {Serial.print ("שחזור מוזיקה"); Serial.println (פקודה); פקודה = פקודה - 48; myDFPlayer.play (פקודה); menu_opcoes (); } // רבייה // עצור אם (command == '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 (); } // מקטין את עוצמת הקול אם (command == '-') {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 () {// Comunicacao serial com או 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 מיני מאתחל!")); // Deficoes iniciais myDFPlayer.setTimeOut (500); // פסק זמן סידורי של 500ms myDFPlayer.volume (5); // כרך 5 myDFPlayer. EQ (0); // Equalizacao menu_opcoes רגיל (); }

אם כרטיס הזיכרון מוכנס, זרימת הקוד תיכנס לפונקציית הלולאה.

לולאת void () {// מחכה להזנת נתונים באמצעות סידורי בעוד (Serial.available ()> 0) {command = Serial.read (); if ((command> = '1') && (command <= '3')) {Serial.print ("שכפול מוזיקה"); Serial.println (פקודה); פקודה = פקודה - 48; myDFPlayer.play (פקודה); menu_opcoes (); } // רבייה // עצור אם (command == '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 (); } // מקטין את עוצמת הקול אם (command == '-') {myDFPlayer.volumeDown (); Serial.print ("כרך נוכחי:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}}

המשתמש יכול לשלוח את תווי הבקרה הבאים:

מספר 1 עד 3: בחר את השיר שיש לנגן;

  • אותיות s: עצור את השיר; אות p: השהה את השיר;
  • שלח את סימן +: הגדל את עוצמת השיר;
  • שלח את האות - הפחת את עוצמת השיר;
  • שלח את האות <: בחר את השיר הקודם;
  • שלח את האות>: בחר את השיר הבא;

מתוך האותות, האותיות והמספרים הללו, הארדואינו יקבל אותם באמצעות הסדרה וישלוט על המוסיקה שיש לנגן.

כל תנאי מוצג להלן ובפנים, עם הפקודות המתאימות לו.

if ((command> = '1') && (command <= '3')) {Serial.print ("שחזור מוזיקה"); Serial.println (פקודה); פקודה = פקודה - 48; myDFPlayer.play (פקודה); menu_opcoes (); } // רבייה // עצור אם (command == '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 (); } // מקטין את עוצמת הקול אם (command == '-') {myDFPlayer.volumeDown (); Serial.print ("כרך נוכחי:"); Serial.println (myDFPlayer.readVolume ()); menu_opcoes (); }}

לכן, אם יישמת את כל השלבים המוצגים, הצלחת ללמוד:

  • מעגל הפעלה בסיסי של נגן ה- DFMini MP3;
  • ארגון ותצורה של קבצי קול בכרטיס הזיכרון;
  • שליטה מוזיקלית עם Arduino. מתוך קוד זה תוכל לפתח פרויקטים אחרים שצריכים להשתמש בסאונד כפונקציונליות מערכת.

הכרות

לסיום, אנו מודים לך על קריאתך ועל התמיכה של PCBWAY. COM על תמיכת מעבדת Silício בייצור מאמר זה עבורך.

מעבדת Silícios מודה ל- UTSOURCE שהציעה את הרכיבים האלקטרוניים לבניית פרויקט זה.

מוּמלָץ: