יום ראשון, 15 באפריל 2018

מסך OLED בגודל של 0.91" - חלק ב'

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

האם זה אפשרי בכלל לכתוב על גבי מסך OLED בעברית? תתפלאו אבל זה אפשרי ואפילו תוכלו לבחור את הפונט הרצוי...



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

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

תחילה, ניצור את הקובץ אותו אנחנו רוצים להמיר לתבנית פיקסלים. ניכנס ל"צייר" או לכל תכנה גרפית אחרת וניצור קובץ PNG או Jpeg. יצרתי שני קבצים פשוטים: קובץ של "חג שמח" בפונט סת"ם וקובץ של מגן דוד:



 לאחר ששמרנו את הקבצים, ניכנס לתכנת הענן שממירה את הקבצים:



נבחר את הקובץ שיצרנו, נגדיר את הגודל שלו (ובכל מקרה, לא יותר מ 128X32 - גודלו של המסך...), נסמן HEX output ונלחץ על Submit. הממיר יכין לנו את הקוד שלנו שאנחנו צריכים לשבץ בארדואינו.





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

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

את המילים imageVarName בקוד שהדבקתם, שנו לביטוי שיעזור לכם בהמשך, לדוגמא: happy_holiday. כעת, happy_holiday הוא בעצם תבנית פיקסלים מסוימת וכאשר נקרא לתבנית הזאת בהמשך הקוד - היא תוצג.

נחפש את השורות הבאות בקוד (או דומות להן..):



ונשנה את השורה הראשונה:

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

המילה happy_holiday "קוראת" לציור "happy_holiday" שבתחילת הקוד. אם הכנסנו לקוד כמה ציורים, נקרא כל פעם לציור המבוקש.

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

את אותו התהליך בדיוק עשיתי עם המגן דוד אלא ששיבצתי אותו באופן שיוצג כאנימציה.

הקוד המלא ליום העצמאות כאן לפניכם:






אין תגובות:

הוסף רשומת תגובה

הערות? הארות? יש לך משהו חשוב לספר לכולם? שאלות?

נשמח לשמוע!

(התגובה תפורסם בהקדם בכפוף לאישור מערכת מייקינג)