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

בנה ArduinoBoy: 8 שלבים
בנה ArduinoBoy: 8 שלבים

וִידֵאוֹ: בנה ArduinoBoy: 8 שלבים

וִידֵאוֹ: בנה ArduinoBoy: 8 שלבים
וִידֵאוֹ: Используй свой Gameboy, как MIDI синтезатор. 2024, סֶפּטֶמבֶּר
Anonim
בנה ArduinoBoy
בנה ArduinoBoy
בנה ArduinoBoy
בנה ArduinoBoy

GameBoy. סביר להניח שהיתה בבעלותך אחת עוד בילדותך. וגם אם לא עשית זאת, סביר להניח ששיחקת עם GameBoy של החבר הכי טוב שלך, או שאולי בבעלותך המתחרה הקרוב ביותר שלו, ה- Sega Game Gear או Nomad. מכשירי משחק קטנים ונהדרים, אבל עכשיו כשכולכם בוגרים, האם חשבתם מה אתם הולכים לעשות עם זה עכשיו? שמור את זה בעליית הגג כדי לחפור ולהראות לילדים שלך איך המשחקים היו במאה ה -20? למכור אותו לאספן? לחיות מחדש זיכרונות משחקים על ידי חזרה באגדה של זלדה: התעוררות הקישור בפעם הבזילונית המידבית?

האם אי פעם חשבת להפוך אותו לכלי נגינה? טימותי "trash80" לאמב הוא מלחין צ'יפטון המתגורר כיום בלוס אנג'לס, קליפורניה. מלחין chiptune הוא אדם שמשתמש במחוללי הקול IC (מעגלים משולבים) הנמצאים בתוך קונסולות משחקי וידאו ומכשירי כף יד כדי ליצור מוזיקה. מר לאמב הוא גם יוצר מכשיר המכונה ArduinoBoy; שילוב של חומרה ותוכנת קוד פתוח שיכולים להפוך כל אחד מבני משפחת GameBoy עם חריץ מחסנית ויציאת כבל קישור למחולל קול של MIDI. כעת יש לציין כי trash80 לא היה הראשון שיצר מערכת כזו. לשני אפליקציות GameBoy הגדולות של homebrew המשמשות מלחינים מקצועיים של chiptune, Nanoloop ו- Little Sound Disk Jockey, או LSDJ, יש יכולת MIDI כבר לא מעט זמן. הבעיה היא ששתי האפליקציות הללו מסתמכות על חומרת PIC של Microchip כדי לשלוח ולקבל אותות MIDI. אין כבוד כלפי המיקרו -בקר הסטנדרטי של תעשיית הנדסת החשמל, אך ה- PIC הוא באמת חתיכת חומרה מקצועית ויכולה להפחיד את מי שלא מתעסק עם אלקטרוניקה באופן קבוע. אין גם תמיכה מועטה למשתמשים במערכות הפעלה פחות פופולריות בכל הנוגע לתכנות מכשירים אלה (חבילת הפיתוח הרשמית היחידה של PIC היא ל- Windows, ללא תמיכה ב- Linux או ב- Mac). עם זאת, באמצעות הפלטפורמה הרבה יותר פשוטה של Arduino, ה- ArduinoBoy עוקף את המגבלות האלה, מה שהופך את זה להרבה יותר קל עבור מלחין צ'יפטון לעתיד לבנות את הכלים שהוא צריך. בנוסף, בעוד שה- ArduinoBoy נועד לעבוד עם תוכנת מחולל הקולות GameBoy של mash של trash80 משלו, mGB, הוא מסתדר מצוין עם Nanoloop ו- LSDJ. למרות ש- trash80 שיתף את עבודתו בדף אינטרנט של קוד Google, אין לו הוראות שלב אחר שלב כיצד ניתן להכין עבודות משלהן (זה מופיע ברשימת המטלות שלו). החלטתי לעזור לו בעניין זה. אמנם לא בהכרח שלב אחר שלב, הוראה זו אמורה לתת לך מושג כללי על מה לעשות ולהראות לך כמה מהמלכודות שלי כדי שתוכל להימנע מהן.

שלב 1: חלקים, כלים וקוד

חלקים, כלים וקוד
חלקים, כלים וקוד

חלקים

  • ארדואינו, ארדואינו גנרי, או החלקים להכין בעצמכם. אני אישית משתמש בערכת הלוח באמת חשוף עצמות של Modern Device Compay, שניתן להרכיב כפי שהיא ולחבר אותה לפרויקט באמצעות שקעי סיכה של לוח מעגלים נקבי, או לקניבליזציה של חלקים כדי להפוך את הארדואינו לחלק קבוע מהפרויקט.
  • שני נגדים 220Ω, שבעה 2KΩ ואחד 270Ω. עבור פרויקט זה, נגדי 1/4 או 1/8 וואט הם אידיאליים.
  • מבודד אופטי אחד 6N138.
  • דיודת אות אחת קטנה 1N914. אל תתפלאו אם תוכלו לרכוש אותם רק בכמויות של 10 ומעלה.
  • כפתור לחיצה אחד המופעל רק כאשר הכפתור נלחץ. למי שמדבר מהנדס, זהו כפתור כפתור הפעלה (מופעל) של SPST.
  • שני מחברי DIN נקביים עם 5 פינים, 180 מעלות. וודא שאתה מקבל את המחברים המדויקים האלה. ישנם עיצובים רבים ושונים למחברי DIN, ומעטים, אם בכלל, תואמים זה לזה.
  • ארבעה בלוקים מסוף דו-פיניים. למרות שאתה יכול פשוט להלחם את כל החוטים שלך ישירות ל- PCB, שימוש בלוקים מסופים או צורה אחרת של מחברים יהפוך את ההרכבה, פירוק וחלקים של קניבליזציה להרבה יותר קלים.
  • לוח מחשב אחד לכלל.
  • כבל קישור אחד של GameBoy.
  • התקן שיכול לספק MIDI החוצה, כמו מקלדת או מחשב עם התוכנה והמתאם הדרושים.
  • מחסנית אחת לתכנות GameBoy.
  • לְרַתֵך.
  • חוט נוסף. מוצק לעבודה בלוח לחם ולחיווט לוח המחשב האישי, תקוע לחוטים שאתה מצפה לזוז לעתים קרובות.
  • מקרה למלא את הכל.
  • ערימה של מיזלניה.

כלים

  • מלחם.
  • נורה, משאבה או פתיל מסולקים. במקרה ש.
  • כלי הלחמה מסייע בידיים.
  • משקפי מגן. המשקפיים שלך לא הולכות לחתוך אותו.
  • מטף כיבוי אש, או לפחות כוס מים. שוב, ליתר ביטחון.
  • מספרי תיל.
  • חשפניות חוטים.
  • צבת אף מחט.
  • קרש לחם ללא הלחמה.
  • תכנות או כבלי USB הן עבור Arduino והן למחסנית GameBoy הניתנת לתכנות, במידת הצורך.
  • כלי סיבוב ו/או כל דבר אחר שאתה צריך כדי לחתוך חורים וחריצים במקרה שלך.

קוד אתה צריך שני חלקים שונים של קוד לפרויקט זה, שניהם נמצאים בדף קוד ה- ArduinoBoy של trash80 של trash80. הם נמצאים בצד ימין של הדף תחת הכותרת הורדות מומלצות. תוכלו לטעון את קוד ה- ArduinoBoy לתוך ה- Arduino, בעוד ש- MGB יטען במחסנית המשחק הניתנת לתכנות.

שלב 2: בואו נסתכל על סכמטי

בואו נסתכל על סכמטי
בואו נסתכל על סכמטי

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

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

שלב 3: בדיקת לוח הלחם

בדיקת לוח לחם
בדיקת לוח לחם

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

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

שלב 4: מבחן ראשון

הגיע הזמן לשתי בדיקות חשובות מאוד: בדיקת העשן ובדיקת התפקוד. המבחן הראשון די קל. כל שעליך לעשות הוא לחבר את GameBoy למכשיר, להדליק את GameBoy ולצפות בנוריות ה- ArduinoBoy. אם נורית pin13 מהבהבת לזמן קצר, ואחריה נוריות ה- LED הנותרות מוארות בסדר עוקב, סוחפות מהסיכה הגבוהה ביותר לנמוכה וחזרה פעמיים, ומסתיימות בשתי הבזקים מהנוריות בבת אחת, אז הסיכוי טוב שה ArduinoBoy שלך פועל להזמין. הקפד גם לבדוק את לחצן בחירת המצב. כאשר אתה לוחץ עליו, נורית ה- LED המוארת כעת צריכה להיכבות והבאה הבאה ברצף תידלק. אם, במקום זאת, האורות מסרבים להאיר, חלקים מרגישים חמים באופן חריג למגע, אתה רואה או מריח עשן ו/או כל חלק במעגל מתפוצץ או מתלקח ללהבות, ואז חזור לסכימה, בדוק שוב הכל החיבורים והחיווט שלך, החלף את הרכיבים הפגומים ובצע שוב את בדיקת העשן. הבדיקה השנייה קצת יותר מורטת עצבים, בעיקר כי אם משהו משתבש כאן, לא רק הארדואינו יהפוך לטוסט. טען את mGB ל- GameBoy שלך, חבר את ה- ArduinoBoy ל- GameBoy שלך, וחבר את ה- MIDI מהמכשיר התואם MIDI שלך ל- MIDI של ArduinoBoy הלוח. הפעל את GameBoy ולאחר מכן את מכשיר ה- MIDI, שמור על מטף הכיבוי שלך בהישג יד פן יקרה דבר. נסה לנגן כמה תווים במכשיר ה- MIDI שלך בערוץ 1, 2, 3, 4 או 5. אם ה- GameBoy שלך משמיע רעש שמזכיר מכשיר או אפקט קול, המשך לקפוץ מהכיסא שלך ולבהות כלפי מעלה לכיוון שמים, זרועות מושטות ושואגות "זה חי" תוך צחוק מאני. הערה הן לגבי הבדיקה והן על השימוש ב- ArduinoBoy שלך: ישנם אתרי אינטרנט המציעים קבצי MIDI בחינם של שירים פופולריים, ותתפתה, להתפתות מאוד, להשתמש בהם הן לצורך הבדיקות והן בפגישות הקומפוזיציה שלך. עמדו בפיתוי הזה. ראשית, חלק ממסלולי ה- MIDI המוצעים על ידי אתרים אלה אינם עשויים היטב. מצאתי פעם עותק MIDI של ה- "19-2000" של הגורילז, ואחד המכשירים לא נכרת או דוהה, כך שבסופו של דבר, המכשיר הזה יציף את שאר הכלים עד שתעצור את הנגן ותתחיל אותו שוב. בנוסף, השימוש בשירים שהוכנו מראש מעודד אותך להמשיך להשתמש בשירים שהוכנו מראש. אתה לא תכין משהו מקורי. מוטב שתלמד כיצד להלחין מוזיקה משלך באופן מיידי.

שלב 5: הלחמה

הלחמה
הלחמה
הלחמה
הלחמה

אז, ArduinoBoy שלך עובד. טוב, הגיע הזמן להלחם אותו ללוח האב -טיפוס של המעגל המודפס. "חכה חכה!" אתה צועק לעצמך. "זה עובד בסדר גמור עכשיו ואני יודע שאני אהיה זהיר עם זה. למה פוטנציאל לבלגן את זה? למה לטרוח בהלחמה?" בסדר אז. אבל תחשוב על זה לרגע: אתה וה- ArduinoBoy שלך עושים מוזיקה נהדרת. כל כך נהדר, למעשה, שבסופו של דבר אתה הופך את צ'יפטון לצורת מוזיקה לגיטימית. אתה מכניס את צ'יפטון למיינסטרים. אתה הופך מפורסם. כל כך מפורסם, שאתה מוזמן לשחק במגרש ריגלי רגע לפני שהקאבס ייכנסו לשדה. אתה עדיין משתמש ב- ArduinoBoy הלוח שלך. אתה והצוות מכינים הכל רק עד שאחד מכם יבחין בכלי הנגינה החשוב ביותר שלכם, ה- ArduinoBoy, נעלם. סוף סוף אתה מוצא את זה בידיו של נער צעיר שהצליח לחמוק מעבר לאבטחה. בסקרנותו, הוא הסיר את כל הרכיבים מלוח הלחם, ולמרבה הצער, אין לך שימושי סכמטי. רק 5 דקות לסיום תחילת ההופעה, עליך לבטל את ההופעה שלך. הקהל משתגע ובזעם שלו הורסים נתח טוב מהאצטדיון וגורמים לביטול המשחק גם כן. הקאבס שוב מאבדים את משחק האיפור שלהם ואת הזריקה שלהם בעונה העולמית, ויש לך את האשמה. אל תתנו לתרחיש המפותל הזה לקרות לכם: תמיד הפכו את הפרויקטים שלכם לקבועים. ראשית, לאחר הסרת כל החלקים מלוח הלחם ללא הלחמה, הניחו אותם על לוח המחשב והבינו כיצד אתם הולכים להתאים את כולם. יש כמה דברים שכדאי לזכור:

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

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

שלב 6: שימוש ב- ArduinoBoy שלך

שימוש ב- ArduinoBoy שלך
שימוש ב- ArduinoBoy שלך

ה- ArduinoBoy שלך, אם הוא מורכב כראוי, לא אמור להתנהג בצורה שונה מכל התקן קלט MIDI אחר. בשימוש עם mGB, יהיו לו 5 ערוצי MIDI נפרדים. ערוצים 1 ו -2 הם מחוללי צלילים קבועים, 3 הוא מחולל צלילים שנראה כי יש לו תבנית של שלוש תווים במבחנים המוגבלים שלי (גוון השטר ישתנה בכל פעם שאתה משחק בערוץ זה, בעקבות תבנית), ערוץ 4 מספק צלילי בס (שימוש כמו תוף, גיטרה בס או סינתר), וערוץ 5 הוא רעש (משמש לרוב במשחקי GameBoy לפיצוצים ומים זורמים).

חבר את מכשיר ה- MIDI-out שלך ליציאה המחוברת למבודד האופטו, ה- ArduinoBoy שלך ל- GameBoy ואת המחסנית המתוכנתת מחדש גם ל- GameBoy שלך. הגדר את ה- ArduinoBoy למצב mGB על ידי לחיצה על הלחצן עד שהנורית המחוברת לדיגיטל 8 נדלקת. מכאן והלאה תוכל להשתמש ב- GameBoy שלך כמכשיר MIDI. ניתן לבצע התאמות של הצליל שנוצר ב- GameBoy באמצעות ממשק ה- mGB, במיוחד, טיימר, אוקטבה, ערוץ ותקיפת תווים. מצבי ArduinoBoy האחרים משמשים עם תוכניות יצירת צ'יפטון אחרות של GameBoy, במיוחד Nanoloop ו- LSDJ והם מחוץ להיקף של הוראה זו.

שלב 7: מלכודות שניתן להימנע ממנה

מלכודות שאפשר להימנע מהן
מלכודות שאפשר להימנע מהן
מלכודות שאפשר להימנע מהן
מלכודות שאפשר להימנע מהן
מלכודות שאפשר להימנע מהן
מלכודות שאפשר להימנע מהן

במהלך השלמת הפרויקט הזה, עשיתי כמה טעויות עיצוב ובנייה שלמרות שהן לא השפיעו לרעה על הביצועים של פונקציית הליבה של ArduinoBoy, הן אכן הפכו את הבנייה למאתגרת יותר וההצגה הסופית מעט מרושלת. להלן הטעויות שלי וכמה תקלות נפוצות וכיצד ניתן להימנע או לתקן אותן. עבודת מתכת מכל ההחלטות העיצוביות שקיבלתי, ההחלטה להשתמש בפח מנטה של Altoids כמקרה הייתה אולי ההרסנית ביותר. הבעיה היא לא בפח עצמו, אלא בכלים שהיו ברשותי בהכנת המארז ובעובדה שעשיתי מעט מאוד עבודות עם מתכת דקה. ראשית, השתמש בכלי המתאים לתפקיד. גזירי פח, או לפחות אלה שבהם השתמשתי, קורעים את המתכת במקום לחתוך אותה בצורה נקייה, ומשאירים מאחוריהם קשות להסרה קצוות חדים שאינם נשארים שטוחים למארז. השתמש במקום בכוס. כמו כן, בעת קידוח חורים, יש תמיד לקדוח מצד הגימור, או מהצד שתראה לרוב (בחוץ), בכל הזדמנות אפשרית. כאשר אתה מקדח חור סביר להניח שתשאיר קוצים במתכת ותגרום למתכת להתכופף לתוך החור מהכיוון שאתה מקדח. על ידי קידוח מבחוץ, אתה משאיר את הקוצים בחלק הפנימי של המארז, מה שהופך את הצד החיצוני למראה ובטוח יותר עבור אנשים חסרי דעת. לוח אב טיפוס חומרים זולים אינם תמיד הטובים ביותר לעבודה. לוחות האב -טיפוס שבהם בניתי את ה- ArduinoBoy שלי הגיעו מ- RadioShack, ולמרות שהם ניתנים לשימוש מושלם, הם קשים להלחמה מעצם טבעם שהם מיוצרים בזול. אין חורים מצופים, ולכן הלחמה לא נשאבת לתוך החורים, וכתוצאה מכך כתמי הלחמה גדולים אלה על הלוח שאינם מחזיקים היטב את חלקי ההלחמה במקומם. נסה כמיטב יכולתך למצוא לוחות עם חורים מצופים. אם אינך יכול, שמעתי כי שטף הלחמה קטן שנמרח לתוך החור ממש לפני ההלחמה יסית הלחמה מותכת לתוך החור, ממש כאילו הוא מצופה. בנושא לוחות פרוטו זולים, זכור כי מכיוון שהלחם פשוט יצטבר בחלקו העליון, הם יכולים להיות מועדים ל … מכנסיים קצרים כשסיימתי להלחים יחד את ה- ArduinoBoy שלי, שמתי לב כי הנורות אינן דולקות כראוי. הבעיה לא הייתה החיווט שלי, זה היה מושלם, אלא ההלחמה שלי. זעירים, די בלתי אפשריים לראות כמויות של הלחמה ואבק גישרו על הפערים על הלוח, מנעו מכמה נוריות להאיר ולקשור נוריות אחרות יחד. אם זה קורה לך, הפעל להב סכין בין מפרקי ההלחמה ונקה היטב בעזרת טיפים Q, מגבות נייר ושפשוף אלכוהול. דבק מעולה נסה כפי שאתה יכול לעולם לא תוכל להשתמש בדבק סופר מבלי לקבל קצת על האצבעות. רק אזהרה כללית לכולם שם בחוץ. שלא תבין אותי לא נכון, זה אחלה דבר כששני חלקים צריכים להידבק ולהיצמד במהירות, אך לעולם אל תניח שאתה יכול להשתמש בו מבלי להדביק את האצבעות.

שלב 8: לאן אני הולך מכאן?

לאן אני הולך מכאן?
לאן אני הולך מכאן?

מתקשה להתחיל עם כל העניין בהלחנת צ'יפטון? זקוקים להשראה, עצות, טריקים ומקום להשוויץ במנגינה האחרונה שלכם? לכל הדברים צ'יפטונס, ובהרחבה משחקי רטרו, יש 8bitcollective.com. יש להם קהילה תוססת של מלחיני צ'יפטון שיהיו מוכנים יותר לעזור לך בקריירה שלך.

רוצה להרחיב את היכולות של ArduinoBoy שלך? ל- ArduinoBoy יש פונקציה מובנית ש- mGB לא ממש משתמש בה: MIDI out, במיוחד סינכרון MIDI. עם זאת, Nanoloop ו- LSDJ אינם תואמים רק לחומרת ArduinoBoy, אלא הם יכולים להשתמש בתכונה לא מנוצלת זו, ומאפשרת לך לסנכרן את צלילי GameBoy שלך עם כלי MIDI אחרים הניתנים לתכנות, כמו תופים. אוקיי, עכשיו אתה מלחין ומבצע מצליח של צ'יפטון, אבל עכשיו יש לך חבורה של הופעות שאתה רוצה ללכת אליה ואתה רוצה להקל על העומס ככל האפשר. מה אתה הולך לעשות? ובכן, כל עוד אתה משתמש רק ב- MIDI של ArduinoBoy ביציאה, אתה יכול להקטין באופן חמור את גודלו. פשוט השתמש כשיבוט Arduino קטן שתוכל למצוא ולהשאיר את יציאת MIDI בחוץ. אחרי הכל, נראה שזה עובד עבור trash80. באשר לי, אני מחפש לבצע מספר שיפורים באב -הטיפוס שלי ובמקביל ללמוד יותר כיצד הוא עובד וכיצד אני יכול לחבר בו מוזיקה אמיתית. אני שוקל לתכנן כמה מחשבים אישיים ב- Eagle CAD לשתי גרסאות שונות: אחת שמשתמשת ברכיבים חוריים ומערכי DIP של חבילת DIP, כמו זו, ואחרת המשתמשת ברכיבי הרכבה על פני השטח מתי שניתן, כדי שאוכל לנסות את ההזרמה החוזרת של הפלטה. שיטת הלחמה והפוך (בתקווה) את ה- ArduinoBoy הקטן ביותר שיוצר אי פעם. מעל לכל, מה שתחליט לעשות עם ה- ArduinoBoy שלך, תהנה. אם אתה לא נהנה, ברור שאתה עושה משהו לא בסדר. זכור שכמו כל דבר אחר בחיים, הלחנת צ'יפטונים אינה עוסקת במכות מישהו אחר. זה להכות את עצמך, להפוך כל מנגינה שאתה מלחין טוב יותר מהקודמת. אף אחד מעולם לא התפרסם בזכות שעשה משהו שהם לא אהבו. שאלות? הערות? הצעות נישואין? איומי מוות? פרסם אותם למטה.

מוּמלָץ: