בדוגמא הבאה נלמד על עיקרון חשוב מאוד בכל הנוגע לחיישנים ותכנות - נלמד על כיול.
כאשר אנחנו משתמשים בחיישן למשל חיישן אור הוא לא תמיד יתן לנו את כל טווח הפעולה
שלו, כלומר קריאה של הערכים שלו לא תמיד תהיה בין 0 ל- 1023. מצב בו החיישן לא מגיע
לכל הטווח יכול לנבוע ממספר סיבות, למשל אין מספיק אור בחדר וגם כאשר החיישן לא
מכוסה. במקרה כזה כדי לא "להפסיד" את הרזולוציה המלאה של החיישן נעשה לו כיול בתחילת
התוכנה, למשל ב 5 השניות הראשונות לדגום את ערכי החיישן והערך הכי נמוך שייקלט יהיה
קצה הטווח התחתון והערך הכי גבוה שיקלט יהיה קצה הטווח העליון.
זה בדיוק מה שעושה הדוגמא Calibration בחמש השניות הראשונות הקוד בודק את הערכים
ומגדיר לעצמו טווח - לכן מרגע הפעלת הקוד עלינו לגרום לחיישן לשדר את מקסימום הטווח לו הוא
מסוגל, משל חיישן אור - בחמש השניות הראשונות נכסה את החיישן ונסיר את היד לגמרי.
נפתח את הדוגמא בתוכנה של ארדואינו ונרכיב את המעגל החשמלי לפי השרטוט שמופיע בדף
הדוגמא באתר של ארדואינו.
נעבור על הקוד ונבין מה כל שורה עושה.
בקוד אנחנו נתקלים לראשונה בלולאה מסוג while() כל שורות הקוד שנמצאות תחת הלולאה ירוצות
פעם אחר פעם כל עוד התנאי שבסוגריים מתקיים.