Raspberry Pi הוא לוח מבוסס מעבד ארכיטקטורה של ARM המיועד למהנדסים אלקטרוניים וחובבים. ה- PI היא אחת מפלטפורמות פיתוח הפרויקטים המהימנות ביותר שקיימות כעת. עם מהירות מעבד גבוהה יותר ו- 1 GB RAM, ניתן להשתמש ב- PI לפרויקטים רבים בפרופיל גבוה כמו עיבוד תמונה ו- IoT.
לצורך ביצוע פרויקטים בפרופיל גבוה, יש להבין את הפונקציות הבסיסיות של PI. אנו נסקור את כל הפונקציות הבסיסיות של פטל פאי במדריכים אלה. בכל הדרכה נדון באחת הפונקציות של PI. בסוף סדרת ההדרכה של פטל זה תוכלו לבצע פרויקטים בעלי פרופיל גבוה בעצמכם. עבור להדרכות למטה:
- תחילת העבודה עם פטל פי
- תצורת פטל פי
- נורית LED מהבהבת
- ממשק כפתור
- דור PWM
- שליטה במנוע DC
- בקרת מנוע צעד
- ממשק ממשק משמרות
- מדריך ADC לפטל פטל
- בקרת מנוע סרוו
- משטח מגע קיבולי
במדריך זה נשלוט על צג LCD בגודל 16x2 באמצעות Raspberry Pi. אנו נחבר את ה- LCD לסיכות GPIO (פלט קלט לשימוש כללי) של PI כדי להציג תווים עליו. אנו נכתוב תוכנית ב- PYTHON לשליחת הפקודות המתאימות ל- LCD דרך GPIO ולהצגת התווים הדרושים על גבי המסך. מסך זה יועיל להצגת ערכי חיישנים, סטטוס הפרעה וגם להצגת זמן.
ישנם סוגים שונים של מסכי LCD בשוק. LCD גרפי מורכב יותר מ- 16x2 LCD. אז הנה אנחנו הולכים על תצוגת LCD 16x2, אתה יכול אפילו להשתמש ב- 16x1 LCD אם אתה רוצה. יש 16x2 LCD 32 תווים בסך הכל, 16 ב 1 st קו 16 עוד 2 nd קו. JHD162 הוא LCD תווי מודול LCD 16x2. כבר ממשקנו 16x2 LCD עם 8051, AVR, Arduino וכו '. אתה יכול למצוא את כל הפרויקטים הקשורים ל- LCD 16x2 שלנו על ידי קישור זה.
נדון מעט בנושא PI GPIO לפני שנמשיך הלאה.
ישנם 40 סיכות פלט של GPIO ב- Raspberry Pi 2. אך מתוך 40 ניתן לתכנת רק 26 סיכות GPIO (GPIO2 ל- GPIO27). חלק מהפינים הללו מבצעים כמה פונקציות מיוחדות. עם הצבת GPIO מיוחד, נותרו לנו 17 GPIO.
יש +5 וולט (פין 2 או 4) ו -3.3 וולט (פין 1 או 17) פינים של פלט כוח על הלוח, אלה מיועדים לחיבור מודולים וחיישנים אחרים. אנו הולכים להפעיל את ה- LCD * 16 * 2 באמצעות מסילת +V. אנו יכולים לשלוח אות בקרה של + 3.3 v ל- LCD, אך לצורך עבודה ב- LCD עלינו להניע אותו באמצעות + 5 V. ה- LCD לא יעבוד עם + 3.3 וולט.
למידע נוסף על סיכות GPIO והתפוקות הנוכחיות שלהם, עברו על: LED מהבהב עם Raspberry Pi
רכיבים נדרשים:
כאן אנו משתמשים ב- Raspberry Pi 2 דגם B עם Raspbian Jessie OS. כל דרישות החומרה והתוכנה הבסיסיות נדונו בעבר, אתה יכול לחפש את זה במבוא לפטל, מלבד זה שאנחנו צריכים:
- סיכות חיבור
- 16 * 2 מודול LCD
- נגד 1KΩ (2 חתיכות)
- סיר 10K
- קבלים של 1000 µF
- קרש לחם
הסבר על מעגל ועבודה:
כפי שמוצג בתרשים המעגלים, שילבנו את Raspberry Pi עם תצוגת LCD על ידי חיבור 10 פינים GPIO של PI לסיכות הבקרה והעברת הנתונים של 16 * 2 LCD. השתמשנו ב- GPIO Pin 21, 20, 16, 12, 25, 24, 23 ו- 18 כ- BYTE ויצרנו פונקציית 'PORT' לשליחת נתונים ל- LCD. כאן GPIO 21 הוא LSB (קצת פחות משמעותי) ו- GPIO18 הוא MSB (ביט משמעותי ביותר).
מודול LCD 16x2 כולל 16 פינים, אותם ניתן לחלק לחמש קטגוריות, סיכות חשמל, סיכת ניגודיות, סיכות בקרה, סיכות נתונים וסיכות תאורה אחורית. הנה התיאור הקצר עליהם:
קטגוריה |
הצמד לא. |
שם סיכה |
פוּנקצִיָה |
סיכות חשמל |
1 |
VSS |
סיכת קרקע, מחוברת לקרקע |
2 |
VDD או Vcc |
פין מתח + 5 וולט |
|
סיכת ניגודיות |
3 |
V0 או VEE |
הגדרת ניגודיות, מחובר ל- Vcc ביסודיות נגד משתנה. |
סיכות בקרה |
4 |
RS |
בחר הרשמה בחר סיכה, RS = 0 מצב פיקוד, RS = 1 מצב נתונים |
5 |
RW |
סיכת קריאה / כתיבה, RW = 0 מצב כתיבה, RW = מצב קריאה |
|
6 |
ה |
אפשר, דופק גבוה עד נמוך צריך לאפשר את ה- LCD |
|
סיכות נתונים |
7-14 |
D0-D7 |
נתונים סיכות, מאחסן את הנתונים שיוצגו על גבי LCD או את הוראות הפקודה |
סיכות תאורה אחורית |
15 |
LED + או A. |
להפעלת התאורה האחורית + 5 וולט |
16 |
נורית LED או K |
קרקע תאורה אחורית |
אנו ממליצים בחום לעבור על מאמר זה כדי להבין את ה- LCD שעובד עם הפינים והפקודות Hex שלו.
נדון בקצרה בתהליך שליחת הנתונים ל- LCD:
1. E מוגדר גבוה (מאפשר את המודול) ו- RS מוגדר נמוך (אומר ל- LCD שאנחנו נותנים פקודה)
2. מתן ערך 0x01 ליציאת הנתונים כפקודה לניקוי מסך.
3. E מוגדר גבוה (מאפשר את המודול) ו- RS מוגדר גבוה (אומר ל- LCD שאנחנו נותנים נתונים)
4. יש להציג הוכחת קוד ASCII עבור תווים.
5. E מוגדר נמוך (אומר ל- LCD שסיימנו לשלוח נתונים)
6. ברגע שהסיכה E נמוכה יותר, LCD מעבד את הנתונים שהתקבלו ומציג את התוצאה המתאימה. אז הסיכה הזו מוגדרת גבוה לפני שליחת נתונים ונמשכת לקרקע לאחר שליחת נתונים.
כאמור אנחנו הולכים לשלוח את הדמויות אחת אחרי השנייה. התווים ניתנים LCD ידי קודי ASCII (קוד תקן אמריקאי עבור מחלף מידע). טבלת קודי ASCII מוצגת להלן. לדוגמא, כדי להציג תו "@", עלינו לשלוח קוד הקסדצימלי "40". אם אנו נותנים ערך 0x73 ל- LCD הוא יציג "s". ככה אנו נשלח את הקודים המתאימים ל- LCD כדי להציג את המחרוזת " CIRCUITDIGEST ".
הסבר על תכנות:
לאחר שהכל מחובר לפי דיאגרמת המעגל, אנו יכולים להפעיל את ה- PI כדי לכתוב את התוכנית ב- PYHTON.
נדבר על כמה פקודות בהן נשתמש בתוכנית PYHTON, אנו הולכים לייבא קובץ GPIO מהספרייה, הפונקציה הבאה מאפשרת לנו לתכנת סיכות GPIO של PI. אנו גם משנים את השם "GPIO" ל- "IO", ולכן בתוכנית בכל פעם שברצוננו להתייחס לסיכות GPIO נשתמש במילה 'IO'.
ייבא את RPi.GPIO כ- IO
לפעמים, כאשר סיכות ה- GPIO, בהן אנו מנסים להשתמש, עשויות לבצע פונקציות אחרות. במקרה כזה נקבל אזהרות בזמן ביצוע התוכנית. הפקודה למטה אומרת ל- PI להתעלם מהאזהרות ולהמשיך בתוכנית.
IO.setwarnings (שקר)
אנו יכולים להפנות את סיכות ה- GPIO של PI, על ידי מספר סיכה על הלוח או על ידי מספר הפונקציה שלהן. כמו 'PIN 29' על הלוח הוא 'GPIO5'. אז אנו אומרים כאן או שנציג את הסיכה כאן על ידי '29' או '5'.
IO.setmode (IO.BCM)
אנו מגדירים 10 סיכות GPIO כסיכות פלט, עבור סיכות נתונים ובקרה של LCD.
IO.setup (6, IO.OUT) IO.setup (22, IO.OUT) IO.setup (21, IO.OUT) IO.setup (20, IO.OUT) IO. setup (16, IO.OUT) IO.setup (12, IO.OUT) IO.setup (25, IO.OUT) IO.setup (24, IO.OUT) IO.setup (23, IO.OUT) IO. setup (18, IO.OUT)
בעוד ש- 1: פקודה משמש לולאה לנצח, עם פקודה זו ההצהרות בתוך לולאה זו יבוצעו ברציפות.
כל שאר הפונקציות והפקודות הוסברו בהמשך לקטע 'קוד' בעזרת 'הערות'.
לאחר כתיבת התוכנית והוצאתה לפועל, ה- Raspberry Pi שולח תווים ל- LCD בזה אחר זה ו- LCD מציג את התווים על גבי המסך.