מה שאתה מחפש נקרא סולם מתח.
להלן כמה שרטוטים המציגים דוגמה לסולם מתח.
התרשימות מקושרות מ מגן מקשים LCD מ- DFRobot.com.
במקרה זה, סולם המתח משמש לקבלת קלט מחמישה כפתורים המשתמשים בכניסה אנלוגית אחת בלבד בארדואינו. הכפתורים מסודרים כארבעה חצים של סמן ולחצן בחירה כמו בתמונה למטה:
הנה קישור למידע נוסף על עיצוב זה כולל סקיצה של ארדואינו הקוראת ומפענחת את הערכים מסולם המתח וקובעת איזה כפתור נלחץ.
הנה דוגמה נוספת, עכשיו מ- Freetronics.com, עם מידע נוסף על אופן הפעולה של הסולם.
בחזרה לשאלתך, ערכי הנגד נבחרים כך שכל אחד מהם גורם לירידת מתח על הפין האנלוגי שניתן להבחין בין האחר. לחיצות כפתורים. בדרך כלל אני רואה מקרים בהם ערכי הנגד עולים באופן אקספוננציאלי (330R, 620R, 1K ו- 3K3 במקרה זה), אך אני חושב שתוכל להשתמש בערכים דומים (כולם כ 330R). כמו כן, R2 נמצא שם כדי להימנע מקצר בין 5 וולט ל- GND כאשר לוחצים על הכפתור הראשון.
אם היית, נניח, 15 כפתורים להתפרש, היית צריך שיהיה לך 15 נגדים, ו יהיה עליכם לוודא כי ירידת המתח בין הנגדים הסמוכים גבוהה מספיק בכדי שתוכלו להבחין בקריאות על הסיכה האנלוגית. עליכם לקחת בחשבון של- ATmega328P יש ADC של 10 סיביות (כלומר ייתן לכם ערכים בין 0 ל -1023) אך הוא מראה רק דיוק של 4 סיביות (כלומר יראה שגיאה של כ -10 בכל קריאה). אז אתה צריך לחפש ערכי נגדים שגורמים לירידת מתח שנותנת לך יותר מ -10 בכל קריאה אנלוגית (). זה יגביל את מספר הלחצנים המרבי שתוכל לקרוא בדרך זו.
ישנן בעיקר 3 דרכים להשיג את ערכי הנגד:
-
באפשרותך לחשב את קריאת המתח עבור כל כפתור על ידי התחשבות בלחצן זה בלחיצה, הסרת החלקים במעגל המתח האחרון הפתוחים והחלת חוק אוהם. לכן, בחר כפתור אחד, החלף אותו בחוט והסר את כל שאר הכפתורים. אז אתה יכול לחשב את המתח עבור הכפתור הזה.
-
אתה יכול גם לדמות את המעגל. שמתם לב שאתם יכולים לדמות את המעגל שפרסם קימליב? בלחיצה על התרשימים שלו תועבר ל- CircuitLabs, שהוא אתר המאפשר לך לדמות מעגלים. שם תוכלו לשנות את ערכי הנגד, ללחוץ על כפתורים ולראות את התוצאות. אתה יכול גם להשתמש בחבילות סימולציה אחרות של מעגלים זמינים.
-
בנייתו. הצב את המעגל בלוח לחם ואז נסה ערכי נגדים שונים ומדוד את ירידת המתח עם Arduino ו- Serial.println (). ניתן גם להשתמש במד מד דיגיטלי (DMM) לשם כך.
שים לב כי סולם המתח רושם רק לחיצת כפתור אחת בכל פעם. אם תלחץ על יותר מכפתור אחד, רק זה שנמצא קרוב יותר לראש התרשים נבחר.