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

Midi Record/Play/Overdub עם חיבורים של 5 פינים: 3 שלבים
Midi Record/Play/Overdub עם חיבורים של 5 פינים: 3 שלבים

וִידֵאוֹ: Midi Record/Play/Overdub עם חיבורים של 5 פינים: 3 שלבים

וִידֵאוֹ: Midi Record/Play/Overdub עם חיבורים של 5 פינים: 3 שלבים
וִידֵאוֹ: COMO HACER UNA INTERFAZ DE AUDIO 2024, יולי
Anonim
Midi Record/Play/Overdub עם חיבורים של 5 פינים
Midi Record/Play/Overdub עם חיבורים של 5 פינים

* משתמש בשבב ATMega-1284 הפועל במהירות 8 מגה-הרץ, עם 4 kBytes של זיכרון RAM ו -4 kBytes של eeprom

* משתמש במחברי DIN 5 פינים הישנים

* מאפשר הקלטה והפעלה, כמו גם overdub: הקלטה יחד עם משהו שהקלטת קודם.

* תפריט מלא

* יכולת שמות ושמירת קובץ ב- eeprom

* זמני עריכה וחתימות זמן

* כימות רודמנטרית

שימושיות* הוכחת מושג: אתה עשוי למצוא את הפרויקט מאתגר.

מה כולל הדרכה זו:

* רשימת חלקים

* דוח פרויקט (מצורף לפאנל זה)

מכיל הרבה מידע שאתה צריך לדעת על הפרויקט

* קישור לקוד C ב- GitHub

github.com/sugarvillela/ATMega1284

* הוראות שלב אחר שלב לבניית הפרויקט והתאמת הקוד

שלב 1: רשימת חלקים

רשימת חלקים
רשימת חלקים

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

לוח אחד, כל דגם, בערך באותו גודל כמו בתמונת המבוא, 20 $

מעבד אחד, דגם ATMega1284, 5 $

זהו שבב רב תכליתי עם תכונות נהדרות. מצא את גליון הנתונים כאן:

ww1.microchip.com/downloads/en/devicedoc/atmel-42718-atmega1284_datasheet.pdf

ספק כוח 1 וולט

1 ATMEL-ICE

זהו הממשק בין המחשב שלך למעבד המיקרו. אתה גם צריך כמה תוכנות לעריכת קוד (IDE) וקומפיילר שיכול לחבר את C לאדריכלות של שבב ATMega. Atmel מספקת סביבה, Atmel Studio העונה על דרישות אלה. הורד אותו כאן:

מצמד אופטו אחד, דגם 6N138 או שווה ערך, 5 $

זה עבור הקלט; תקן המידי מחייב בידוד התקנים אחד מהשני למניעת לולאות קרקע. השתמשתי בשבב המקביל של NEC עם סידור pin-out זהה. עיין בתמונה למעלה למידע או פשוט גוגל '6n138 pinout'. אם אתה משתמש במודל עם הקצאות סיכות שונות, מצא את הסיכות המתאימות (בזהירות).

2 מסכי LCD, דגם 1602A1, 3 $ כל אחד

השתמשתי בתצוגות 2*16, כלומר יש להן 2 שורות, כל אחת ברוחב 16 תווים. הקוד כתוב במיוחד עבור אלה, לכן נסה להשתמש באותם קודים. חיבורים הם: 8 קווי נתונים ושני קווי בקרה. אתה יכול לשתף את שורות הנתונים בין שני המסכים, אך אתה צריך 2 קווי בקרה לכל אחד, בסך הכל 4 קווי בקרה. הפרויקט שלי משתמש באוטובוס C לקווי נתונים LCD ובנשנש העליונה של אוטובוס D לקווי בקרה. אם אתה מחבר את שלך אחרת, שנה את אוטובוסי הפלט בקוד שלך.

רמקול אחד

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

1 קבלים, לריכוך פלט הגל המרובע לרמקול

2 מחברי DIN עם 5 פינים, זכר או נקבה

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

נגדים, 180-330 אוהם, 1k-10kOhm

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

נוריות

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

חוטים, הרבה חוטים

מד 20-22, חוטים מוצקים, ארוכים, קצרים וזעירים.

שלב 2: קוד C

עבור אל github כדי לקבל את הקוד:

* הקפד לקרוא ולהבין את הקוד מכיוון שייתכן שתצטרך לשנות אותו כך שיתאים לחומרה אחרת.

* דו ח הפרויקט בלוח המבוא מכיל תיאורים מפורטים של מודולי התוכנה וכיצד הם מתקשרים.

* ללא העתק-הדבק. אינטראקציה עם הקוד; לְנַסוֹת; לִכתוֹב מִחָדָשׁ. כנראה שאתה יכול לשפר את זה.

שלב 3: חיווט ראשוני (עיין בתמונת הפרויקט להנחיה)

חיווט ראשוני (עיין בתמונת הפרויקט להנחיה)
חיווט ראשוני (עיין בתמונת הפרויקט להנחיה)
חיווט ראשוני (עיין בתמונת הפרויקט להנחיה)
חיווט ראשוני (עיין בתמונת הפרויקט להנחיה)

הערות לגבי תמונת הפרויקט לפני שנתחיל

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

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

הדבר השחור העגול הוא הרמקול (זמזם פיצו).

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

מסך LCD משמאל הוא LCD 0. המסך מימין הוא LCD 1.

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

חברו את ספק הכוח

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

צ'יפס

התקן את שבב ATMega, היזהר שלא לכופף את הסיכות (זהירות טובה לכל שבב) וודא שהוא יושב עד הסוף.

התקן את מצמד האופטו הסמוך למעבד.

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

מסכי LCD

קרא את הקובץ המצורף LCDhookup.pdf (להלן) לקבלת עזרה בחיבור LCD.

לכל מסך שני חיבורי חשמל ושלושה חיבורי קרקע.

סיכה 3 היא בקרת בהירות שאם תוגדר לא נכון, תוכן המסך יהיה בלתי נראה. אם יש לך פוטנציומטר שימושי, השתמש בזה כדי להתאים את מתח הבקרה. אתה יכול גם לנסות נגדים קבועים, כדי לקבל את המתח בערך 1/2 VCC.

סיכות 4 ו -6 על LCD 0 מתחברות ל- D4 ו- D5 במעבד. אלה משמשים לאפשר ולאפס את המסך.

סיכות 4 ו -6 על LCD 1 מתחברות ל- D6 ו- D7 במעבד.

סיכות 7-17 בשני מסכי ה- LCD מתחברים ל- C0-C7 במעבד. זהו אוטובוס נתונים משותף. כל מסך יתעלם מהנתונים עד שיגיע אות בקרה על סיכה 4 ו -6.

קרא: מידע LCD ומידע נוסף כדי לעזור להבין כיצד פועלים מסכי ה- LCD.

כפתורים

חבר את ארבעת הכפתורים ל- A2-A4 במעבד. (השארתי את A1 פתוח לקלט ממיר A/D, אך לא השתמשתי בו.)

בכל סוג של שבב לוגי, קלט לא מחובר צף גבוה, כלומר המעבד יראה 1 על קלט זה. כדי לשלוט בכך, עליך לחבר סיכות לקרקע באמצעות נגד. חיברתי את הלחצנים להיות באדמה (דרך הנגד) כאשר לא לוחצים עליהם, וגבוהים כאשר לוחצים עליהם. השתמש בכל נגד 330 עד 1k למטרה זו.

לחלופין, ואולי גם ביעילות יותר בחשמל, אתה יכול לחבר את הכפתורים להיות גבוהים כאשר לא לוחצים עליהם ונמוכים בלחיצה. יהיה עליך לשנות את הקוד (buttonBus.c) כדי לחפש ~ PINA במקום PINA.

מוּמלָץ: