המותג הוא הכול כאשר מדובר בשיווק ומכירה של מוצרים שלקוחות יקנו, וחשוב מכך, ימשיכו לקנות. הלקוחות מצפים שכל מוצר שכולל מסך תצוגה יהיה בעל מראה מלוטש וירגיש קל לשימוש. במיוחד לאור הצמיחה באינטרנט של הדברים (IoT), יותר ויותר מכשירים פשוטים כוללים מסכי תצוגה אינטראקטיביים שמציבים אתגרי תכנון בפני המהנדסים. מיקרו-בקרים (MCUs) אינם כוללים את התכונות המתקדמות שדרושות כדי להריץ יישומים אלו, והמעבר למיקרו-מעבד (MPU) מתקדם יותר גורר עלויות נוספות ומורכבות תכנון מוגדלת. שינוי ברור מתרחש כאשר יצרני חומרה מזהים את הצורך ביכולות גרפיות מתקדמות יותר של ה-MCU.
החשיבות של זיהוי המותג
ההכללה של ממשק משתמש גרפי (GUI) בתכנון מוטמע משרתת גם מטרות פונקציונליות וגם אסתטיות. לעתים קרובות, אחת הפונקציות החשובות והמפוספסות ביותר של ממשק גרפי היא השידור של זהות מותג. על פי רייצ’ל רמינגטון (Rachel Remington) מ-shuksanweb.com, זהות מותג היא אוסף של מאפיינים חזותיים שמייצגים מותג או חברה, כגון הסמליל, השימוש בצבעים והגופנים. זהות המותג חשוב כי נעשה בה שימוש באלמנטים גרפיים על מנת להמחיש את האופי, האווירה ו/או הערכים של חברה.
כאשר סדר העדיפויות אינו כולל חוויית משתמש חיובית בכל הקשור לזהות המותג של החברה שלכם, על ידי שימוש בעיצובי GUI, נוצר נתק שמונע ממשתמשים להימשך לחזור כדי לעבור שוב חוויה חיובית באמצעות המוצר. חיפוש מתמיד זה אחר החוויה המצופה מכונה “העדפה”, ומשתמשי קצה שמעדיפים מותגים מסוימים מוכנים בדרך כלל לשלם על חברות פרימיום כדי לגשת למותג, מה שבתורו מגדיל את הרווחיות של המותג המבוקש. זיהוי המותג, יחד עם חוויית משתמש חיובית, מקדם רווחים.
סביר להניח שמחלקת השיווק של החברה שלכם מקדישה משאבים רבים להדרכת הלקוחות לגבי המוצרים שלהם וסוג החוויה שהם אמורים לצפות לעבור איתם. יש מספר שיטות שונות לעשות זאת: פרסומות במגזינים מקצועיים בדפוס ובאינטרנט, מדיה חברתית, הודעות דואל, רדיו, תשדירי פרסומת בטלוויזיה, וכן הלאה. חברות שמניבות את התועלת הגדולה ביותר מזהות מותג מצוינת מקדישות תשומת לב מיוחדת למסר שעיצוב המוצר של המותג משדר, במיוחד ממשק האדם-מכונה. בדוגמה הקיצונית, מיתוג יצירתי ומדויק של ממשק המשתמש (UI) יכול להיות כמו שלט חוצות של החברה שמופיע על גבי כל המוצרים שהיא מוכרת.
MCUs לגרפיקה מתקדמת
באופן מסורתי, ביישומי MCU שנדרשו לכלול ממשק משתמש גרפי נעשה שימוש בבקרים גרפיים חיצוניים או בסכמת גרפיקה סטטית מבוססת DMA בהנעה ישירה כדי לדחוף מסגרות מלאות לתצוגות באיכות מרבית של WVGA (800×480). בקרים גרפיים חיצוניים הם רכיב נוסף בתכנון המוטמע שמוביל לעלויות נוספות, גודל לוח ומורכבות תכנון לא רצויים.
צרכים גרפיים כגון עומק צבע גדול, המרת פורמט צבע, מיזוג אלפא והנפשה יכולים להמריץ מתכנני רכיבים מוטמעים להשתמש במיקרו-מעבד (MPU). MPUs מאופיינים בדרך כלל בביצועים גבוהים מאלו של MCUs, וברמת מורכבות גבוהה יותר. המעבר מתכן MCU לתכן MPU מחייב גם להכיר פרדיגמות תוכנה וחומרה חדשות, שייתכן שלא יהיו זמינות אצל צוות התכנון שלכם.
למרבה המזל, ההישגים האחרונים בתחום הטכנולוגיה הגרפית איפשרו למתכנני גרפיקה ליהנות מחלק מן המורכבות שבעבר רק ה-MPUs יכלו לספק, מבלי שיצטרכו להשקיע במתודולוגיות תכן חומרה ותוכנה חדשות. בעוד שיישומים מסוימים מצריכים באופן מוחלט שימוש ב-MPU, מהנדסי תכן רבים יכולים להניב תועלת רבה מהישגים האחרונים בתחום היכולות הגרפיות, שזמינים כיום ב-MCUs. יתר המאמר יוקדש לתיאור של האופן שבו ניתן להשתמש בכמה מהישגים אלו כדי לקדם את זיהוי המותג בתכנון המוטמע מבוסס ה-GUI הבא שלכם.
בקרים גרפיים מובנים
הרכיב המרכזי ביותר, אולי, של מיקרו-בקר המותאם לגרפיקה הוא הרכיב ההיקפי של הבקר הגרפי המובנה. בצורתו הבסיסית, הרכיב ההיקפי אחראי לקבל מהזיכרון את נתוני התמונה ולהעביר אותם לתצוגה. בפונקציה זו מטפלת יחידת “גישה ישירה לזיכרון” (DMA, ר”ת של Direct Memory Access) בתוך המיקרו-בקר.
בכל אופן, ב-MCUs מותאמים באמת (truly enabled), בקר גרפי מובנה יבצע את העבודה ביעילות ונצילות גבוהות יותר, משום שעומדים לרשותו יותר מאפיינים ואפשרויות שעוזרים להפוך את מראה היישום לאטרקטיבי ככל הניתן. שלושה פרמטרים ראשיים משמשים לצורך תיאור היכולות של בקר גרפי ב-MCU: עומק צבע, גודל תמונה וקצב מסגרות. בהמשך נצלול לנושא עומק הצבע, מכיוון שלאפשרויות בתחום זה יש השלכות כבדות-משקל על זיהוי המותג. גודל התמונה הוא פשוט אורך התצוגה כפול הרוחב שלה, בפיקסלים. שימו לב שאינצ’ים היא דרך גסה יחסית לתיאור גודל התמונה, משום שניתן להתאים רזולוציה נתונה למגוון ממדי תצוגה פיזיקליים. קצב מסגרות הוא הקצב שבו התמונה כולה נוצרת בתצוגה. ככל שקצב המסגרות גבוה יותר, מעברי התמונה יהיו חלקים יותר מבחינת משתמש הקצה. מעברים חלקים, שמקודמים ע”י בחירה בקצב מסגרות של 15 מסגרות לשנייה ומעלה, גורמים למוצר לשדר איכות גבוהה יותר ותורמים לנתח חוויית המשתמש במשוואת הרווח שתוארה למעלה.
המגבלות של MCUs אופייניים, כגון שעון פיקסלים וזמינות זיכרון, גורמים לעתים קרובות להתפשרות בבחירה של שלושה אלמנטים אלו. למשל, עומק צבע עשיר ומלא חיים עשוי לחייב בחירה בתצוגה קטנה מהמבוקש, על מנת להתאים את היישום לשטח הזיכרון העומד לרשות ה-MCU. הישגים אחרונים בטכנולוגיית התכן והייצור הניעו צמיחה משמעותית בזיכרון המובנה הזמין, מה שגרם להגדלה ניכרת ביכולות של MCUs גרפיים. כדי להעריך את החשיבות של זיכרון מובנה בהיקף גדול, עלינו לדון בעומק הצבע.
עומק צבע
עומק צבע מוגדר כמספר הסיביות שמשמש לציון הצבע של פיקסל בודד בתמונת מפת סיביות. ככל שנעשה שימוש ביותר סיביות לצורך התיאור של צבע, כך ההבדלים במעבר מערך צבע אחד למשנהו עדינים יותר. הישגים חדשים בהיקף הזיכרון הזמין ב-MCUs מאפשרים שימוש רגיל בעומק צבע של 32 סיביות. משמעות הדבר היא כ-16.7 מיליון צבעים שונים. צבע עמוק חשוב לחוויית הלקוח ולמיתוג משתי בחינות מאוד משמעותית.
הסיבה הראשונה לחשיבות של צבעים עשירים קשורה לאופן שבו אתם מעוניינים שמשתמש הקצה יפרש את התמונה המוצגת. אם היישום שלכם מסתמך על ייצוגים ראליסטיים של תצלומים או תמונות אומנותיות, משתמשי הקצה שלכם ישפטו את איכות המכשיר על פי מידת ההתאמה בין התמונה המוצגת לבין האובייקט המומחש באופן חזותי או בזיכרון.
הסיבה השנייה קשורה לזיהוי המותג. צבעים ממלאים תפקיד חשוב מאוד בסיוע ללקוחות לזהות מותג. הם לא רק מאוד מסוימים (צבעי Pantone® ואחרים יצרו תעשייה שלמה סביב קונספט זה), הם גם עוזרים ללקוחות הקצה לזהות אם מוצר הוא אמיתי או מזויף. כמו כן, אי-היכולת לייצג מותג במדויק באמצעות ייצוג בצבעים עלולה גם לפגוע בתפיסת המשתמש את איכות המכשיר שבו הוא משתמש.
שימוש ב-32 סיביות צבע (שכולל 24 סיביות של תיאור צבע ממשי ו-8 סיביות של רמת השקיפות, ידוע גם בכינוי “ערוץ אלפא”) כרוך במחיר כבד מבחינת השימוש בזיכרון בתוך יישום. עבור תצוגת WVGA (800(x480, המשמעות של 32 סיביות צבע היא כ-1.5 מ”ב בזיכרון הדרושים למאגר בודד או לייצוג התוכן המוצג ושמור בזיכרון.
כפי שהוזכר למעלה, יש מקרים סבירים מאוד שבהם חשובה היכולת להשתמש בעומק צבע בהיקף כזה. אלו כוללים ייצוג של תצלומים או תמונות אומנותיות, ויישומים שמקנים גישה לאתרים שבהם ייצוג הצבע של צד שלישי הוא בלתי-צפוי ומשתנה (מפות חשיבה, תמונות וסרטונים). מכיוון שמיקרו-בקרים בדרך כלל אינם כוללים יותר מ-512 ק”ב של זיכרון בשבב עצמו עבור מאגרי תמונות, יישומים כאלו מצריכים שימוש בזיכרון חיצוני.
כפי שכבר הוזכר, הישגים חדשים בתכנון הפיסות, באריזה ובייצור הניבו יתרונות אדירים בזיכרון בשבב עצמו. ה-PIC32MZ DA של Microchip, למשל, כולל 32 מ”ב של DDR2 DRAM במארז בודד, עם MCU גרפי בעל התאמה מלאה. אין צורך להוסיף ליישום זיכרון מאגר חיצוני. הדבר מצמצם את העלויות, המורכבות וממדי התכנון הכלליים. בשילוב עם בקר גרפי תלת-שכבתי ומעבד דו-ממד גרפי בעל תכונות מלאות, ה-PIC32MZ DA הוא דוגמה אחת להישגים בתחום הבקרים הגרפיים המובנים, העומדים לרשותם של מתכנני רכיבים מוטמעים עבור יישומים מבוססי GUI.
מידע בסיסי לגבי כלי פיתוח גרפי
בסופו של דבר, אסור להתעלם מן החשיבות של ערכת כלי תכנון טובה המשלבת באופן הדוק בין אוטומציה לגמישות. כדי להשיג את הגוון הקולע בזמן היצירה של ממשקי משתמש, שילהיב ויעודד העדפה, חשובה היכולת להשתמש בכלים שמאפשרים למתכנן להקדיש את זמנו ליצירת התוכן, במקום להתעסק באיתור יומיומי של באגים בקוד ולתכנת באיטרציות לא נחוצות. גישה אחת לתכנון GUI שיכולה להפוך במהירות כותבי קוד לרכיבים מוטמעים למומחי UX היא מה שמכונה “מה שרואים – מה שמקבלים”, או בקיצור “משמש” (באנגלית: “What-You-See-Is-What-You-Get”, ובר”ת WYSIWYG). בגישה זו הכלי אמור לאפשר למתכנן ליצור תמונה במרחב התכן בתוך הכלי שלו, שיישאר זהה לגמרי אחרי שיידחף לפלטפורמת החומרה. בשילוב עם כלים אחרים שמיועדים לאוטומציה של יצירת מנהלי התקנים ללוחות גרפיים לא סטנדרטיים, הם באמת מאפשרים חווית תכן ברמת שיא, ומבטלים את הצורך להקדיש זמן לכתיבת קוד ואיתור גבים עבור ממשק המשתמש. כלים אלו זמינים כיום, ודוגמה חינמית אחת להם היא מסגרת התוכנה MPLAB Harmony v2 מבית Microchip. MPLAB harmony מציעה יכולות מובילות בתעשייה, כולל הזנת תכן, ניהול זיכרון, אירועים ומנהלי התקני תצוגה, שמשתלבות באופן צמוד עם כלים קיימים, כולל יצירת קוד, מאתר באגים, MPLAB X ו-MPLAB Harmony Configurator.
סיכום
הקדשת תשומת לב מיוחדת לאופן שבו ממשקי משתמש מוטמעים מעודדים חוויות חיוביות ומושכים משתמשים לחזור שוב ושוב תניב יתרונות רווחיים. למרבה המזל, הישגים אחרונים בטכנולוגיות של גרפיקת MCU וזיכרון מאפשרות למתכנני רכיבים מוטמעים לשפר את יכולות פיתוח ה-GUI שלהם מבלי ללמוד תוכנות ופרדיגמות תכן חומרה חדשות, כפי שלעתים קרובות נדרש במקרה של שימוש ב-MPUs. בחירה נכונה של הארכיטקטורה וערכת הכלים יכולה להקל יותר מאי-פעם בעבר על קידום העדפת מותג והשארת רושם חיובי אצל המשתמש.