שבעה תצוגות קטע הן יחידות תצוגה חשובות באלקטרוניקה ומשמשות באופן נרחב להצגת מספרים מ- 0 עד 9. היא יכולה גם להציג כמה אלפביתי תווים כמו A, B, C, H, F, E וכו '. כיצד לממש תצוגה של 7 קטעים עם מיקרו-בקר 8051. אנו משתמשים במיקרו-בקר AT89S52 מסדרת 8051.
לפני ההתממשקות, עלינו ללמוד על תצוגת 7 קטעים. זו היחידה הפשוטה ביותר להציג מספרים ותווים. זה מורכב רק מ- 8 נוריות, כל נורית המשמשת להארת קטע אחד של היחידה והנורית השמינית המשמשת להארת DOT בתצוגת 7 קטעים. אנו יכולים להתייחס לכל קטע כ- LINE, שכן אנו יכולים לראות שיש ביחידה 7 שורות המשמשות להצגת מספר / תו. אנו יכולים להפנות כל שורה / קטע "a, b, c, d, e, f, g" ולתווים נקודתיים נשתמש ב- "h". ישנם 10 פינים, בהם 8 פינים משמשים להפניית a, b, c, d, e, f, g ו- h / dp, שני הפינים האמצעיים הם אנודה / קתודה משותפת של כל נוריות ה- LED. האנודה / הקתודה הנפוצה הללו מקוצרת באופן פנימי ולכן עלינו לחבר סיכת COM אחת בלבד.
ישנם שני סוגים של תצוגות של 7 קטעים: אנודה משותפת וקתודה משותפת:
אנודה נפוצה: בזה כל המסופים השליליים (קתודה) של כל 8 נוריות ה- LED מחוברים יחד (ראה תרשים למטה), הנקראים COM. וכל המסופים החיוביים נשארים לבד.
קתודה משותפת: בזה כל המסופים החיוביים (האנודות) של כל 8 נוריות ה- LED מחוברים יחד, הנקראים COM. וכל התרמויות השליליות נשארות לבד.
תרשים מעגלים והרחבת עבודה
כאן אנו משתמשים באנודה נפוצה של קטע 7 מכיוון שאנחנו צריכים לחבר נוריות לאחור. כידוע שמיקרו-בקר אינו מספק מספיק כוח כדי להאיר את ה- LED ולכן עלינו לחבר את הקתודה של ה- LED לסיכת המיקרו-בקר ואת האנודה של ה- LED לאספקת החשמל. אתה יכול להבין את מושג ההיגיון השלילי הזה במאמר זה "ממשק LED עם מיקרו-בקר 8051". עליך לקרוא מאמר זה כדי להבין את החיבור הבסיסי של מיקרו-בקר כמו קריסטל ומעגל איפוס.
כפי שמוצג לעיל תרשים המעגל לממשק תצוגת 7 קטעים עם מיקרו-בקר 8051, חיברנו את a, b, c, d, e, f, g, h לסיכות 2.0 עד 2.7 פירושו שאנחנו מחברים קטע 7 ליציאה 2 של המיקרו-בקר. עכשיו נניח שברצוננו להציג 0, אז עלינו להדליק את כל הנוריות למעט LED השייכות לקו "g" (ראו תרשים לעיל), כך שהסיכות 2.0 עד 2.6 צריכות להיות על 0 (צריכות להיות 0 כדי להפעיל את ה- LED כ לכל היגיון שלילי) וסיכה 2.7 ו- 2.8 צריכים להיות על 1 (צריך להיות 1 כדי לכבות את הנורית לפי ההיגיון השלילי). אז נוריות ה- LED המחוברות לסיכות 2.0 עד 2.6 (a, b, c, d, e, f) יהיו דולקות ונוריות המחוברות ל- 2.7 ו- 2.8 (g ו- h) יהיו כבויות, שייצרו "0" ב- 7 מִגזָר. לכן אנו זקוקים לתבנית סיביות 11000000 (סיכה 8 היא הסיבית הגבוהה ביותר, כך שמתחיל מ- P2.7 ועד P2.0), וקוד ה- HEX עבור 11000000 בינארי הוא "C0". באופן דומה אנו יכולים לחשב את כל הספרות. כאן עלינו לשים לב שאנחנו שומרים על "נקודה / שעה" תמיד כבוי,אז אנחנו צריכים לתת לוגיקה "1" כל פעם מחדש. להלן טבלה עבור כל המספרים תוך שימוש בקטע Anode 7 משותף.
ספרה לתצוגה |
hgfedcba |
קוד הקס |
0 |
11000000 |
C0 |
1 |
11111001 |
F9 |
2 |
10100100 |
A4 |
3 |
10110000 |
B0 |
4 |
10011001 |
99 |
5 |
10010010 |
92 |
6 |
10000010 |
82 |
7 |
11111000 |
F8 |
8 |
10000000 |
80 |
9 |
10010000 |
90 |
הסבר קוד
יצרנו את פונקציית ms_delay כדי לספק את העיכוב באלפיות השנייה, עיכוב זה מסופק בדרך כלל בכל תוכנית מיקרו-בקר כך שמיקרו-בקר יוכל להשלים את פעולתו הפנימית.
לאחר מכן יצרנו מערך של קודי hex עבור 0 עד 9 (ראה טבלה למעלה), ולבסוף שלחנו את קודי hex ליציאה 2, המחוברת לקטע אנודה 7 משותף. כך שבדרך זו המספרים מוצגים בתצוגת 7 הקטעים.
עכשיו יש לנו רק 4 יציאות במיקרו-בקר ומה אם נרצה להציג את הנתונים ביותר מארבעה 7 קטעים ?? כדי לפתור בעיה זו, טכניקת ריבוב נכנסת לתמונה. עלינו לרבב 7 יחידות קטע מרובות. קרא גם ממשק תצוגת 7 קטעים עם מיקרו בקר AVR.