שיעור 7

מסך LCD

בנתיים הצלחנו להפעיל סרבו וזמזם, מדובר ברכיבים פשוטים יחסית, הגיעה הזמן להתקדם!
בשיעור הזה אנחנו נתכנת את המסך LCD שלנו.
זהו מסך שנקרא LCD1602 , מקור השם הוא בכך שיש למסך 2 שורות ובכל שורה יש מקום ל16 תווים.

כתובות

קצת קשה לראות את זה כשמסתכלים על המסך אבל המסך מחולק לריבועים קטנים, בכל ריבוע ניתן להציג תו אחד.

לכל ריבוע כזה יש כתובת, אם נרצה שארדואינו יציג תו מסויים בריבוע מסויים נצטרך להגיד לו מה הכתובת של הריבוע הזה , לכן חשוב שנבין איך הכתובות מסודרות במסך.

התמונה הבאה מתארת את הכתובות של השורות והעמודות:

זה נראה קצת מוזר אבל בכל מה שקשור לתכנות, מתחילים לספור מ0 ולא מ1 כמו שאנחנו רגילים, ולכן השורה הראשונה נקראת שורה 0, השורה השניה שקראת שורה 1.
העיקרון הזה נכון גם בעמודות, העמודה הראשון היא עמודה 0, העמודה השנייה היא עמודה 1, העמודה השלישית היא עמודה 2 וכך הלאה עד שמגיעים לעמודה האחרונה שהכתובת שלה היא 15.

הסיבה לכך שמתחילים לספור מ0 קשורה ליעילות של אחסון נתונים בזיכרון המחשב.

חשוב שנכיר את הכתובות על מנת שנוכל להציג תווים וטקסט בדיוק במקום שאנחנו רוצים.
למשל הכתובת של ריבוע המסומן בתמונה היא: שורה 1, עמודה 6

עכשיו כשהבנו את נושא הכתובות בואו נתחיל להציג דברים על המסך!

 

שלב 1: התקנת ההרחבה של פליירובוטיקס

המחשב שלכם כבר יודע לזהות ולתקשר עם ארדואינו ואנחנו יכולים להתחיל לתכנת אותו, אבל בערכה שלנו יש כל מיני רכיבים מתקדמים שלא כלולים בתוכנה הבסיסית ולכן נצטרך להתקין הרחבה לתוכנה.

הוסיפו את ההרחבה כפי שמתואר בסרטון (שימו לב כי תחילה אנחנו מורידים את ההרחבה ולאחר מכן מוסיפים אותה). לאחר הוספת ההרחבה תראו תפריטים חדשים שמופיעים מצד ימין למטה (מודגם בסוף הסרטון):

שלב 2: הצגת הודעה

כל הבלוקים הקשורים למסך נמצאים מתחת לתפריט מסך LCD שנמצא בצד ימין למטה.

על מנת להשתמש במסך, אנחנו קודם כל נצטרך להגדיר אותו (בעצם אנחנו אומרים לארדואינו שבהמשך הקוד אנחנו הולכים להשתמש במסך) , ורק לאחר מכן נוכל להציג הודעות.
בצעו את השינויים בקוד כפי שמוצג בסרטון הבא, לאחר מכן העלו את הקוד.

וזו התוצאה שאתם אמורים לקבל:

שלב 3: החלפת הודעה

עכשיו נרצה להציג הודעות שונות בזו אחר זו:

-כשהארדואינו נדלק נציג הודעה "Hello Welcome" בשורה 0
-נחכה 2 שניות
-נציג הודעה "PlayRobotics" בשורה 0

שנו את הקוד על פי מה שמוצג בסרטון (שימו לב שהגדרת המסך נעשית רק פעם אחת בתחילת הקובץ ולא לפני כל הצגה של הודעה).

העלו את הקוד וצפו בהודעות מתחלפות.

שלב 4: הודעות זינוק

נציג הודעות בהתאם לשלבי הזינוק השונים: למקומות, היכון צא!
ובאנגלית: 
-On Your Marks
-Get Set
-Go!
שנו את הקוד על פי מה שמוצג בסרטון:

העלו את הקוד וצפו בהודעות הזינוק:

שלב 5: הוספת קישוטים

ניתן להשתמש בתוים כמו סימן שווה ומקף על מנת לגרום להודעות שלנו להיראות יותר טוב ולמקום אותם במרכז המסך.
החליפו את ההודעות בהודעות הבאות:
(ההודעות הללו תופסות בדיוק 16 תווים, השתמשו ב"העתק-הדבק" או פשוט כתבו את ההודעות בצורה ידנית בקוד)
=On Your Marks!= 
====Get Set=====
Go ! Go ! Go !!!

זו התוצאה שאתם אמורים לקבל, כמובן שתוכלו לנסות להשתמש בתווים אחרים אם תרצו לעצב אחרת את ההודעות(למשל # , * , ~ ) :

 

ממשיכים!

הזינוק שלנו כבר ממש משוכלל והגיעה הזמן לשכלל אותו עוד יותר.
במקום לעשות ריסטרט כל פעם שאנחנו רוצים להזניק את המכוניות, נשתמש בכפתור שנמצא ליד הארדואינו על מנת לגרום לזינוק להתבצע.