3.9. מתגים ונגדי משיכה¶
פלט GPIO מניע חומרה חיצונית. כניסת GPIO היא ההפך: המצלמה קוראת את המתח על פין ומדווחת עליו כ-0 או 1. התקן הכניסה הפשוט ביותר הוא מתג – והפיכתו לקריא באופן אמין דורשת רכיב אלקטרוני אחד בנוסף למתג עצמו.
3.9.1. מתגים וכניסות צפות¶
מתג הוא מגע מכני: שני חתיכות מתכת הנוגעות זו בזו כאשר המתג סגור ונפרדות כאשר הוא פתוח. מבחינה חשמלית, זהו ההתקן כולו. אין בתוכו מקור מתח; מתג לבדו מספק רק ”מחובר“ או ”מנותק“.
חיווט מתג ישירות בין פין GPIO לאדמה משמעו שהפין הוא:
ב-0 V כאשר המתג סגור (כעת מחווט לאדמה).
צף כאשר המתג פתוח (מחווט לכלום).
לפין צף אין מתח מוגדר. הכניסה קוראת כל מה שבמקרה נמצא קרוב אליה – צליבה מאותות סמוכים, רעש מהאספקה, אפילו חשמל סטטי באצבע הקרובה לחוט. value() מחזיר תערובות בלתי צפויות של 0 ו-1 פעמים רבות בשנייה.
3.9.2. נגדי משיכה-מעלה ומשיכה-מטה¶
התיקון הוא נגד משיכה: נגד בעל ערך גבוה (10 kΩ עד 100 kΩ הוא טיפוסי) הקושר את הכניסה למסילה ידועה כאשר המתג פתוח.
תצורות משיכה-מעלה (שמאל) ומשיכה-מטה (ימין) עבור כניסת מתג.¶
משיכה-מעלה. הנגד קושר את הכניסה למסילת האספקה. כאשר המתג פתוח, רק זרם קטן מטפטף דרך הנגד והפין קורא גבוה. כאשר המתג סגור, הוא מקצר את הפין לאדמה; הפין קורא נמוך. הנגד מגביל את הזרם שאחרת היה זורם מהאספקה לאדמה דרך המתג הסגור.
משיכה-מטה. התמונה ההפוכה: הנגד קושר את הכניסה לאדמה, והמתג מתחבר לאספקה. פתוח קורא נמוך, סגור קורא גבוה.
משיכה-מעלה היא המוסכמה הנפוצה יותר – לחצנים ”פעילים-נמוך“. ה-MCU עצמו מספק נגדי משיכה-מעלה ומשיכה-מטה מובנים שניתן לאפשר עם Pin.PULL_UP או Pin.PULL_DOWN, ובכך מסיר את הנגד החיצוני לחלוטין.