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

מדגם אודיו מבוסס DFPlayer עם חיישנים קיבוליים: 9 שלבים
מדגם אודיו מבוסס DFPlayer עם חיישנים קיבוליים: 9 שלבים

וִידֵאוֹ: מדגם אודיו מבוסס DFPlayer עם חיישנים קיבוליים: 9 שלבים

וִידֵאוֹ: מדגם אודיו מבוסס DFPlayer עם חיישנים קיבוליים: 9 שלבים
וִידֵאוֹ: מולטימדיה לרכב מבוסס אנדרואיד דגם tomson cruz 01 - לשברולט קרוז 2009-2011 לדגמים נוספים 03-9415502 2024, נוֹבֶמבֶּר
Anonim
מדגם אודיו מבוסס DFPlayer עם חיישנים קיבוליים
מדגם אודיו מבוסס DFPlayer עם חיישנים קיבוליים

מבוא

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

כדי לקבל איכות שמע טובה (44.1 קילוהרץ) ויכולת אחסון מספקת, נעשה שימוש במודול DFPlayer, המשתמש בכרטיסי זיכרון מיקרו SD לאחסון מידע של עד 32 ג'יגה -בייט. מודול זה מסוגל להשמיע צליל אחד בכל פעם, לכן נשתמש בשניים.

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

ניתן להפעיל חיישנים קיבוליים רק במגע יד עם כל משטח מתכת המחובר לחיישן.

לקריאת החיישנים נשתמש בננו ארדואינו, בשל יכולותיו וגודלו הקטן.

מאפיינים

6 צלילים שונים

מופעל על ידי חיישנים קיבוליים.

פוליפוניה של 2 צלילים בבת אחת.

שלב 1: חומרים וכלים

חומרים וכלים
חומרים וכלים
חומרים וכלים
חומרים וכלים

חומרים

Arduino Nano

2x DFPlayer

2x מיקרו SD

3.5 שקע שמע

2.1 שקע DC

לוח נחושת 10x10

Ferric Chloride

חוט הלחמה

נייר העברת PCB

כלים

ברזל הלחמה

חותך עופרת רכיב

מַחשֵׁב

בַּרזֶל

תוֹכנָה

Arduino Ide

קיקאד

ADTouch Librarie

ספריה מהירה של DFPlayer

שלב 2: איך זה עובד

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

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

תוכל לקרוא עוד על הספרייה ועל חיישנים קיבוליים בקישור הבא

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

כל מודול DFPlayer יכול להשמיע צליל אחד בלבד בכל פעם, כך שהאפשרות לבצע 2 צלילים בו זמנית המכשיר משתמש בשני מודולים.

שלב 3: סכמטי

סכמטי
סכמטי

בתרשים אנו יכולים לראות כיצד מחוברים הארדואינו ושני המודולים של DFPlayer

R1 ו- R2 (1 k) נועדו לחבר את המודולים ל- DFPplayers.

R 3 4 5 ו- 6 (10k) מיועדים לערבוב הפלט של ערוצים l ו- r של המודולים.

R 7 (330) הוא עמידות ההגנה של LED אשר ישמש כאינדיקטור לכך שהארדואינו מופעל.

שלב 4: בנה את ה- PCB

בנה את ה- PCB
בנה את ה- PCB
בנה את ה- PCB
בנה את ה- PCB
בנה את ה- PCB
בנה את ה- PCB

בשלב הבא נייצר את הצלחת בשיטת העברת החום, המוסברת במדריך זה:

על הלוח הונחו 6 רפידות המאפשרות שימוש בדגימה ללא צורך בחיישנים חיצוניים.

שלב 5: הלחמת הרכיבים

הלחמת הרכיבים
הלחמת הרכיבים
הלחמת הרכיבים
הלחמת הרכיבים
הלחמת הרכיבים
הלחמת הרכיבים

לאחר מכן נלחם את הרכיבים.

ראשית הנגדים.

מומלץ להשתמש בכותרות כדי להרכיב את הארדואינו ואת המודולים מבלי להלחם אותם ישירות.

כדי להלחם את הכותרות התחל בסיכה, בדוק אם היא ממוקמת היטב ולאחר מכן הלחם את שאר הסיכות.

לבסוף נלחם את המחברים

שלב 6: התקן את הספריות

התקן את הספריות
התקן את הספריות
התקן את הספריות
התקן את הספריות

בפרויקט זה נשתמש בשלוש ספריות שעלינו להתקין:

SoftwareSerial.h

DFPlayerMini_Fast.h

ADCTouch.h

בקישור הבא תוכל לראות בפירוט כיצד להתקין ספריות בארדואינו

www.arduino.cc/en/guide/libraries

שלב 7: קוד

כעת נוכל להעלות את הקוד ללוח Arduino.

לשם כך עלינו לבחור את לוח ה- Arduino Nano.

#include #include #include

int ref0, ref1, ref2, ref3, ref4, ref5; int th;

SoftwareSerial mySerial (8, 9); // RX, TX DFPlayerMini_Fast myMP3;

SoftwareSerial mySerial2 (10, 11); // RX, TX DFPlayerMini_Fast myMP32;

הגדרת void () {int th = 550; // Serial.begin (9600); mySerial.begin (9600); mySerial2.begin (9600); myMP3.begin (mySerial); myMP32.begin (mySerial2); myMP3.volume (18); ref0 = ADCTouch.read (A0, 500); ref1 = ADCTouch.read (A1, 500); ref2 = ADCTouch.read (A2, 500); ref3 = ADCTouch.read (A3, 500); ref4 = ADCTouch.read (A4, 500); ref5 = ADCTouch.read (A5, 500);

}

לולאת חלל () {

int total1 = ADCTouch.read (A0, 20); int total2 = ADCTouch.read (A1, 20); int total3 = ADCTouch.read (A2, 20); int total4 = ADCTouch.read (A3, 20); int total5 = ADCTouch.read (A4, 20); int total6 = ADCTouch.read (A5, 20);

סה"כ 1 -= ref0; סה"כ 2 -= ref1; סה"כ 3 -= ref2; סה"כ 4 -= ref3; סה"כ 5 -= ref4; סה"כ 6 -= ref5; // // Serial.print (total1> th); // Serial.print (total2> th); // Serial.print (total3> th); // Serial.print (total4> th); // Serial.print (total5> th); // Serial.println (total6> th);

// Serial.print (סה"כ 1); // Serial.print ("\ t"); // Serial.print (סה"כ 2); // Serial.print ("\ t"); // Serial.print (total3); // Serial.print ("\ t"); // Serial.print (total4); // Serial.print ("\ t"); // Serial.print (סה"כ 5); // Serial.print ("\ t"); // Serial.println (סה"כ 6); if (total1> 100 && total1> th) {myMP32.play (1); // Serial.println ("o1"); }

if (total2> 100 && total2> th) {myMP32.play (2); //Serial.println("o2 "); }

if (total3> 100 && total3> th) {

myMP32.play (3); //Serial.println("o3 ");

}

if (total4> 100 && total4> th) {

myMP3.play (1); //Serial.println("o4 ");

}

if (total5> 100 && total5> th) {

myMP3.play (2); //Serial.println("o5 ");

}

if (total6> 100 && total6> th) {

myMP3.play (3); //Serial.println("o6 ");

} // אל תשהה (1); }

שלב 8: טען את הצלילים בכרטיסי הזיכרון

עכשיו אתה יכול לטעון את הצלילים שלך בכרטיסי המיקרו SD

הפורמט חייב להיות 44.1 קילוהרץ ו- 16 סיביות wav

עליך להעלות 3 צלילים על כל כרטיס SD.

שלב 9: הממשק

Image
Image

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

במקרה זה השתמשתי ב -3 ראשי פרק כף היד שאליהם הנחתי ברגי מתכת כצליל מגע מתכת.

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

אתה יכול להשתמש בכל אובייקט מתכתי, סרט מוליך או להתנסות בדיו מוליך.

מוּמלָץ: