בעקרון, חיבור נגן מוזיקה אמור להיות דבר פשוט, הלחצנים של הפעלה והפסקה העברה קדימה ואחורה יכולים להיות מוחלפים במפסקים או במקרה שלנו רכיב בשם 4N27 הרכיב הוא פוטוטרנזיסטור אופטוקפלר שבעצם מסוגל כמו ממסר לשלוט על זרמים גבוהים ע"י זרמים נמוכים יותר במקרה הזה ע"י דיודה ש"מתקשרת" עם פוטוטרנזיסטור.
מעגל השליטה פשוט:
הבעיה היא בתזמונים כאשר לוחצים על מפסק הזמן שלוקח ללחוץ הוא במילישניות עד 20 מילשניות, הלחיצה שמתבצעת באופן אוטומטי מדויקת מצד אחד אבל יוצרת בעיות עקב מעברי זמן בין הרכיבים השונים לכן היה צריך למצוא את הזמן המדויק שבו יש לעכב את האות מהרגל שיוצאת מהמעבד.
בנוסף, ישנה בעיה בלוגיקה של הנגן עצמו לחיצה אחורה אינה מעבירה שיר אלא מחזירה לתחילת השיר המנוגן, לחיצה קדימה מעבירה שיר אך גם לוחצת באופן אוטומטי על נגן, אלו דברים שיש לקחת בחשבון, הלוגיקה הפשוטה ביותר היא לסדר את השירים אחד אחרי השני ולהתקדם בזה אחר זה ולחזור שוב מתחילת הרשימה.
בשביל ליצור את ההפעלה דרך המעבד אפשר ליצור פונקציות בקוד שהם חיקוי של נגן ושל הרץ קדימה או אחורה.
לדוגמא:
void pp()
{
digitalWrite(skippin,HIGH);
delay(100);
digitalWrite(skippin,LOW);
delay(10);
}
פונקציה זו שולחת במשך 100 מילישניות אות גבוה לרגל המבוקשת ולאחר מכן 10 שניות של אות נמוך
ניתן להשתמש בפונקציה במהלך הקוד כחלק מתנאי המתקבל מאחד החיישנים.
אין תגובות:
הוסף רשומת תגובה