תווים במערך
חלק מהיחידה פלטים במסלול ה-Arduino של Coddy. שיעור 13 מתוך 24.
מנגינה היא רשימה של תווים. מערך שומר רשימת ערכים תחת שם אחד:
int notes[] = {262, 294, 330, 349}; // C, D, E, Fלכל ערך יש מיקום שנקרא אינדקס, והספירה מתחילה ב-0: notes[0] הוא 262, notes[1] הוא 294, והאחרון, notes[3], הוא 349. אין notes[4]: קריאה ממנו מחזירה את מה שנמצא במקרה בזיכרון אחרי המערך.
האינדקס יכול להיות משתנה. שמור אחד, השמע את התו שאליו הוא מצביע, ואז קדם אותו:
int i = 0;
void loop() {
tone(8, notes[i]);
delay(400);
i = i + 1;
if (i == 4) {
i = 0;
}
}בכל פעם ש-loop() רצה, התו הבא מתנגן. אחרי האחרון, האינדקס חוזר ל-0 והמנגינה מתחילה שוב.
אתגר
קלהשמע את הצלילים C, D, E ו־F בזה אחר זה בפין 8, למשך 400 ms כל אחד, שוב ושוב:
- שמור את ארבעת התדרים במערך: 262, 294, 330, 349
- השתמש במשתנה אינדקס כדי להשמיע את הצליל הבא בכל פעם ש־
loop()רצה - אחרי הצליל האחרון, חזור לראשון
לחץ על Run, ואז על Check.
נסו בעצמכם
const int buzzerPin = 8;
// צרו כאן את המערך notes ואת המשתנה index
void setup() {
}
void loop() {
// נגנו את התו שבמיקום index, המתינו 400 ms, עברו לתו הבא
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה פלטים
תרגלו בעצמכם: Arduino אונליין