16-04-2011, 11:35
|
|
|
חבר מתאריך: 20.10.06
הודעות: 202
|
|
פתרון בכיוון אחר - תשתמש במיקרובקר
אם אתה מכיר ויודע להשתמש במיקרובקרים אז כדאי לך לשקול מימוש של המערכת שלך בעזרת מיקרובקר כדוגמת 8051 אשר יכול להתאים מאד לכך.
מבחינת חומרה השימוש במיקרובקר יפשט לך מאד את החומרה אך "בתמורה" תצטרך לכתוב תוכנה מתאימה אשר תבצע את המטלה של מדידת רוחב הפולס והוצאת ערך מתאים לכיוון התצוגה.
במיקרובקר 8051 קיים מנגנון מובנה המאפשר למדוד זמנים. אני לא אפרט כאן על המנגנון כי זה ארוך יחסית והמידע ממילא ניתן לאיתור בקלות באינטרנט או בדפי-הנתונים של הרכיב, אני רק אזכיר שאתה צריך לקבוע ל-"1" את הסיבית GATE0, להגדיר טיימר לריצה חופשית, לאפס אותו ולחבר את האות שלך לכניסה INT0 (למרות שבעצם אין כאן שימוש בפסיקה). במצב הזה, טיימר 0 יתקדם רק כאשר האות ב-INT0 הוא ברמה גבוהה, לפיכך כאשר יופיע פולס, הערך שיהיה בטיימר 0 יציין את רוחב הפולס והאת הערך הזה עליך להוציא אל התצוגה.
מה שכתבתי למעלה הוא העקרון בקיצור נמרץ ותדרש כאן מעט עבודת פיתוח אבל אם אתה יודע להתעסק עם מיקרובקרים אז קרוב לודאי שההשקעה שתדרש היא פחותה לעומת מימוש מד-רוחב פולס מבוסס חומרה בלבד..
בברכה,
דיגיגיל
_____________________________________
_- סיוע בהשלמת פרויקט-גמר להנדסאים -_
(האתר digigil.com נסגר)
|