- חומרים נדרשים
- מבוא קצר לתצוגת LCD 16 מטר 2 מטריקס
- ADC ב- TIVA Launchpad
- תרשים מעגלים וחיבורים
- תכנות TIVA TM4C Launchpad עבור LCD באמצעות Energia IDE
- צג LCD בגודל 16x2 עם משטח שיגור TIVA
במדריך הקודם התחלנו ללמוד על TIVA TM4C Launchpad וכיצד לשלוט בסיכות הקלט והפלט הדיגיטליות שלה באמצעות Energia IDE. כעת, במדריך זה, נלמד על הממשק של תצוגת LCD 16x2 מטריצת LCD עם לוח זה כדי להציג מידע שימושי ונתוני חיישנים.
16x2 תצוגת LCD היא שרובנו היינו נתקלים בכך באמצעות מחשבים אישיים ציבוריים או משתמשים בפרויקטים אלקטרוניים אחרים. LCD 16x2 הוא מודול התצוגה בעלות נמוכה, אשר שימושי מאוד לכל יישומי אלקטרוניקה להצגת נתונים או מידע אחר ניפוי באגים. אז הנה אנחנו ממשקים תצוגת LCD 16x2 עם TIVA C סדרת TM4C123G LaunchPad. כאן נציג את ערכי ADC ורמות המתח בתצוגת LCD. מחובר פוטנציומטר כדי לשנות את ערכי ה- ADC. למידע נוסף על צג LCD 16x2 וסיכותיו כאן.
חומרים נדרשים
- TIVA TM4C LaunchPad מטקסס אינסטרומנטס
- תצוגת LCD מטריקס 16 × 2
- חוטי חיבור
מבוא קצר לתצוגת LCD 16 מטר 2 מטריקס
כפי שנאמר קודם לכן, Energia IDE מספקת ספרייה יפהפייה שהופכת את הממשק לחתיכת עוגה, ולכן אין חובה לדעת דבר על מודול התצוגה. אבל, האם לא יהיה מעניין להראות במה אנו משתמשים !!
השם 16 × 2 מרמז שהתצוגה כוללת 16 עמודות ו -2 שורות, שיחד (16 * 2) יוצרים 32 תיבות. תיבה אחת בודדת תיראה ככה בתמונה למטה
תיבה אחת כוללת 40 פיקסלים (נקודות) בסדר מטריצה של 5 שורות ו -8 עמודות, 40 הפיקסלים הללו יחד יוצרים תו אחד. באופן דומה, ניתן להציג 32 תווים באמצעות כל התיבות. עכשיו בואו נסתכל על הפינוסים.
LCD כולל סך של 16 סיכות, כפי שמוצג לעיל, ניתן לסווג אותם לארבע קבוצות כדלקמן
סיכות מקור (1, 2 ו -3): סיכות אלה מקורות את עוצמת העוצמה והניגודיות לתצוגה
סיכות בקרה (4, 5 ו -6): סיכות אלה מגדירות / שולטות ברשומות בממשק ה- LCD (ניתן למצוא קישור נוסף בהמשך)
סיכות נתונים / פקודה (7 עד 14): פינים אלה מספקים את הנתונים איזה מידע צריך להיות מוצג על גבי LCD.
פינים לד (15 ו -16): פינים אלה משמשים להאיר את התאורה האחורית של LCD במידת הצורך (אופציונלי).
מתוך כל 16 הסיכות הללו, רק 10 סיכות יש להשתמש חובה לעבודה תקינה של ה- LCD אם אתה רוצה לדעת יותר על תצוגת LCD אלה קפיצה למאמר LCD זה.
בדוק גם את הממשק של תצוגת LCD 16x2 עם מיקרו-בקרים רבים אחרים
- ממשק 16x2 LCD עם Atmega16 AV מיקרו-בקר במצב 4 סיביות
- ממשק LCD עם מיקרו-בקר PIC באמצעות MPLABX ו- XC8
- ממשק 16x2 LCD עם STM32F103C8T6
- ממשק LCD עם LaunchPad MSP430G2
- ממשק LCD עם מיקרו-בקר 8051
- ממשק 16x2 LCD עם Arduino
- ממשק LCD 16x2 עם פטל פי באמצעות פיתון
ADC ב- TIVA Launchpad
פוטנציומטר מספק פלט אנלוגי כך שהוא לא יכול להיות מחובר לסיכות הדיגיטליות של ה- Launchpad. אז פינים אנלוגיים או ADC של MCU משמשים לממשק כל חיישן שהפלט שלו הוא אנלוגי. ל- TIVA TM4C יש שני ערוצי ADC עם פלט של 12 סיביות, כלומר, ניתן למפות את הערכים האנלוגיים, מהחיישן או הפוטנציומטר, בין 0 ל -2 ^ 12 (4096) על מנת להמיר אותם לערכים דיגיטליים. למידע נוסף על המרה אנלוגית לדיגיטלית במיקרו-בקר, לחץ על הקישור.
ישנם 12 סיכות קלט אנלוגיות (A0-A11) ב- TIVA Launchpad, כפי שמוצג בתמונה למטה.
תרשים מעגלים וחיבורים
תרשים המעגל השלם לממשק צג LCD מטריקס 16 × 2 עם TIVA Launchpad TM4C מוצג להלן.
אילוץ עיקרי אחד בזמן ממשק LCD זה הוא מתח ההפעלה שלו. צג ה- LCD מתח הפעלה של +5 וולט ואילו ה- TM4C פועל רק עם 3.6 וולט. למזלנו סיכת הנתונים של ממשק LCD IC (HD44780U) כוללת מתח הפעלה רחב של 2.7V עד 5.5V. אז אנחנו צריכים לדאוג רק ל- Vdd (סיכה 2) של ה- LCD בעוד שסיכות הנתונים יכולות לעבוד אפילו עם 3.6 וולט.
בלוח TIVA כברירת מחדל אין סיכה + 5V, לכן יש להשתמש באספקת חשמל חיצונית כדי לגרום ל- LCD לעבוד. השתמש באספקת חשמל מלוח Arduino או השתמש בווסת מתח 7805. הקפד לחבר את קרקע אספקת החשמל לקרקע של לוח TIVA.
להלן הטבלה המציגה את החיבורים בין LCD ל- TIVA Launchpad
שם סיכת LCD | משטח השיגור של TIVA |
Vss | קרקע, אדמה |
Vdd | + ספק כוח 5V |
Rs | הצמד PC_6 של TIVA |
R / W | קרקע, אדמה |
לְאַפשֵׁר | סיכה PB_7 של TIVA |
D4 | הצמד PA_2 של TIVA |
D5 | סיכה PA_3 של TIVA |
D6 | סיכה PA_4 של TIVA |
D7 | סיכה PB_6 של TIVA |
כדי להציג את ערכי הפוטנציומטר על גבי LCD, חבר את יציאת ה- Pot לכל סיכה אנלוגית (PE2).
תכנות TIVA TM4C Launchpad עבור LCD באמצעות Energia IDE
לפני שתמשיך בהסבר, רשום את הסיכות המשמשות בפרויקט זה. התבונן בתרשים המעגל ובתרשים ה- TIVA pin-out שניתן לעיל. קוד מלא עם סרטון עבודה מצורף בסוף הדרכה זו.
Energia IDE, כברירת מחדל, מגיעה עם ספרייה עבור 16x2 LCD (LiquidCrystal). אם הוא אינו קיים, הורד אותו מקישור github זה והדבק אותו בתיקיית הספריות של Energia IDE.
לאחר מכן התחל את התוכנית על ידי הכללת הספרייה עבור LCD והגדרת הסיכות עבורה
#לִכלוֹל
השלב הבא הוא לדבר על סיכות שאליו LCD מחובר ל, כפי שכבר בשם זה באמצעות #define עכשיו אנחנו יכולים פשוט לדבר על שמות של סיכות LCD. וודא שמבצעים את אותה ההזמנה.
LiquidCrystal lcd (RS, EN, D4, D5, D6, D7);
ישנם כל כך הרבה סוגים של צגי LCD המשתנים בגודל ובאופי, לכן בפונקציית ההתקנה הריקה () , ציין תחילה את סוג ה- LCD שבו אתה משתמש בפרויקט. כאן השתמשנו בתצוגת LCD בגודל 16x2.
lcd.begin (16, 2);
כדי להדפיס משהו על ה- LCD, הזכר שני דברים בתוכנית. האחד הוא המיקום של הטקסט שניתן להזכיר באמצעות השורה lcd.setCursor () והשני הוא התוכן להדפסה שאותו ניתן להזכיר על ידי lcd.print (). כאן אנו קובעים את הסמן 1 st שורה 1 st הטור.
lcd.setCursor (0,0);
באופן דומה, אנו יכולים לעשות זאת
lcd.setCursor (0, 1); // כדי להגדיר את הסמן לעמודה 1 שורה 2
ממש כמו מחיקת לוח לבן לאחר כתיבה עליו, יש למחוק גם LCD ברגע שכתוב עליו משהו. ניתן לעשות זאת באמצעות השורה הבאה
lcd.clear ();
בשנת לולאת חלל () פונקציה, לקחת את הערך סיר באמצעות analogRead () פונקציה ולאחסן ערך זה משתנה אחר ולאחר מכן להציג את הערך הזה.
sensorValue = analogRead (sensorPin); lcd.setCursor (0, 0); lcd.print ("ערך ADC:"); lcd.setCursor (10, 0); lcd.print (sensorValue);
כעת המירו את ערך ה- ADC הזה למתח רק על ידי הכפלתו עם 3.3 מכיוון שהוא המתח הגבוה ביותר שניתן לקבל על ידי סיכות לוחות TIVA. ואז חלק את הערך המוכפל עם 4096.
lcd.setCursor (0, 1); lcd.print ("מתח:"); מתח = (sensorValue * 3.3) / 4096; lcd.setCursor (10, 1); lcd.print (מתחים);
תוכנית מלאה ניתן למצוא בסוף.
צג LCD בגודל 16x2 עם משטח שיגור TIVA
לאחר שהחומרה והקוד מוכנים, פשוט חברו את לוח TIVA למחשב והעלו את הקוד ללוח. עקוב אחר ההדרכה הקודמת כדי ללמוד כיצד להעלות את הקוד ב- TIVA Launchpad.
לאחר העלאת הקוד אתה אמור לראות את התצוגה המציגה את הדברים הבאים.
עכשיו פשוט סובב את הפוטנציומטר כדי לשנות את ערך ADC ותראה שגם ערך המתח המתאים ישתנה, כפי שמוצג בתמונה למטה.
הקוד המלא ואת הווידאו המפורט ניתן למצוא למטה. קדימה ונסה לשנות את הטקסט המוצג בתצוגת LCD.