השתמש במיקרו-בקר אופטימלי של 8 סיביות כדי לפשט את העיצוב של מכשירים מוגבלי משאבים

עדכון: 25 באפריל, 2024

עבור מתכננים של מכשירים מוגבלים בכוח וחלל כמו כלי עבודה חשמליים, מוצרי היגיינה אישית, צעצועים, מכשירי חשמל ובקרות תאורה, יחידת מיקרו-בקר של 8 סיביות (MCU) הספיקה באופן מסורתי. עם זאת, ככל שיישומים מתפתחים, הם דורשים מהירות גבוהה יותר, אפשרויות היקפי חזקות יותר וכלי פיתוח תוכנה חזקים יותר. מעבר לחלופה של 16 סיביות או 32 סיביות יכולה לעזור, אך לרוב במחיר של גודל חבילה גדול יותר ויותר כוח.

כדי לטפל בבעיות אלה, מעצבים יכולים לנצל את היתרונות של MCUs המבוססים על ארכיטקטורת 8051 המביאים רבים מהיתרונות של מעבדי 16-bit ו-32-bit לתחום 8-bit. הם עושים זאת בחבילה קטנה כמו 2 על 2 מילימטרים (מ"מ) תוך שהם מציעים סביבת פיתוח מודרנית.

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

למה להשתמש בארכיטקטורת 8051?

בעת בחירת MCU עבור יישום מוגבל מאוד במקום, מעבדי 8 סיביות כגון ה-8051 המבוסס מציעים יתרונות רבים, כולל טביעת רגל קטנה, צריכת חשמל נמוכה ועיצוב פשוט. עם זאת, למעבדי 8051 רבים יש ציוד היקפי פשוט יחסית, מה שמגביל את התאמתם למקרי שימוש ספציפיים. לדוגמה, ממירים אנלוגיים-דיגיטליים ברזולוציה נמוכה (ADC) אינם מספיקים עבור יישומים בעלי דיוק גבוה כגון מכשור רפואי.

גם שעונים איטיים יחסית יכולים להיות בעיה. ה-8051 MCU הטיפוסי פועל בתדרי שעון של 8 מגה-הרץ (MHz) עד 32 מגה-הרץ, ועיצובים ישנים יותר דורשים מחזורי שעון מרובים לעיבוד הוראות. מהירות נמוכה זו יכולה להגביל את היכולת של 8-bit MCUs לתמוך בפעולות בזמן אמת כגון בקרת מנוע מדויקת.

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

המגבלות של מעבדי 8 סיביות מסורתיים עשויות להוביל מפתחים לשקול מעבר ל-MCU של 16 סיביות או 32 סיביות. בעוד ש-MCUs אלו מציעים כוח מחשוב רב, ציוד היקפי בעל ביצועים גבוהים וסביבות תוכנה מודרניות, הם גם גדולים יחסית. זה הופך את זה למאתגר יותר לשלב אותם בעיצובים מוגבלי מקום, מה שעשוי לעכב את הפיתוח או להגדיל את גודל העיצוב.

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

ייתכן שהאיזון האידיאלי בין הפערים הללו לא יהיה ברור בתחילת פרויקט, והחלפת מעבדים באמצע העיצוב עלולה לעכב את הפיתוח או לפגוע בגודל או בפונקציונליות של המוצר. לפיכך, הרבה עיצובים מוגבלי מקום יכולים להפיק תועלת מ-MCU מבוסס 8051 בעל יכולת גבוהה יותר שמביאה רבים מהיתרונות של מעבדי 16-bit ו-32-bit לתחום ה-8-bit בעל הספק נמוך, קומפקטי.

EFM8BB50 מביא פונקציונליות רבה יותר ל-MCU של 8 סיביות

Silicon Labs בנו את EFM8BB50 משפחה של 8-bit MCUs עם שיקולים אלה בחשבון (איור 1). MCUs אלה מציעים ביצועים משופרים, ציוד היקפי מתקדם וסביבת פיתוח תוכנה מודרנית.

איור 1: מוצג דיאגרמת בלוקים של EFM8BB50 MCU. (מקור תמונה: Silicon Labs)

לב ליבו של ה-MCU הוא ליבת CIP-51 8051, מימוש של Silicon Labs של ארכיטקטורת 8051 המותאמת לביצועים מוגברים, צריכת חשמל מופחתת ופונקציונליות משופרת. הביצוע ראוי לציון במיוחד. ב-EFM8BB50, הליבה משיגה מהירויות של עד 50 מגה-הרץ, ו-70% מההוראות מבוצעות במחזור שעון אחד או שניים. זה נותן ל-MCU ביצועים גבוהים משמעותית ממעבדי 8 סיביות מסורתיים, ומספק למפתחים מרווח ראש ליישומים מורכבים יותר.

ה-MCUs בולטים גם בממדים הזעירים שלהם. גרסאות 16 הפינים של המשפחה, כגון EFM8BB50F16G-A-QFN16, זמינות באריזות קטנות עד 2.5 מ"מ על 2.5 מ"מ. גרסאות 12 הפינים כגון EFM8BB50F16G-A-QFN12 הם אפילו קטנים יותר, עם גדלים של אריזות עד 2 מ"מ על 2 מ"מ.

למרות הממדים הזעירים שלהם, ה-EFM8BB50 MCUs עמוסים במגוון מרשים של תכונות, כולל:

  • ADC של 12 סיביות, שהוא חיוני ליישומים הדורשים נתוני חיישן מדויקים
  • חיישן טמפרטורה משולב המאפשר ל-MCU לנטר את הטמפרטורה הפנימית שלו או את טמפרטורת הסביבה ללא צורך ברכיבים חיצוניים
  • מערך מונה תלת ערוצים (PCA) עם אפנון רוחב דופק (PWM) שיכול להפיק אותות PWM לבקרת פלט משתנה ביישומים כמו בקרת מנוע ועמעום LED
  • מנוע PWM תלת ערוצים עם הכנסת זמן מת (DTI) לשליטה נוספת באלקטרוניקה כוח, כגון מנהלי מנוע או ממירי כוח

כניסות/יציאות אחרות (I/O) כוללות מגוון ממשקי תקשורת טוריים, קבוצה של טיימרים של 8-bit ו-16-bit, וארבע יחידות לוגיות הניתנות להגדרה. כל הפינים במשפחת ה-MCU מסוגלים ל-5 וולט, וניתן להקצות את הקלט/פלט הדיגיטלי בצורה גמישה כדי להפיק את המרב מספירת הפינים המוגבלת.

ניהול צריכת חשמל מתקדם

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

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

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

תמיכה בפיתוח תוכנה אינטואיטיבי

מפתחים יכולים לבנות תוכנה עבור משפחת EFM8BB50 בחבילת Simplicity Studio של Silicon Labs. סביבה זו משמשת עבור 8 סיביות EFM8BB50, 32 סיביות MCU של החברה והמערכות האלחוטיות שלה על שבב (SoCs). כתוצאה מכך, מפתחים מקבלים סביבה מודרנית עם התכונות שהם מצפים למעבדים חזקים יותר. לדוגמה, הוא מציע פרופיל אנרגיה המספק פרופיל כוח של קוד בזמן אמת (איור 2).

איור 2: Simplicity Studio כולל פרופיל אנרגיה המספק פרופיל כוח של קוד בזמן אמת. (מקור תמונה: Silicon Labs)

הכלים בנויים סביב סביבת פיתוח משולבת (IDE) עם עורכי קוד סטנדרטיים, מהדרים, מאפי באגים ומנוע ממשק משתמש (UI) לפיתוח ממשקים מודרניים ומגיבים. סביבת פיתוח זו מספקת גישה למשאבי אינטרנט ו-SDK הספציפיים למכשיר, כמו גם כלי תצורת תוכנה וחומרה מיוחדים.

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

התחלה מהירה עם ערכות הערכה

מפתחים המעוניינים להתנסות עם ה-EFM8BB50 יכולים לשקול את ערכת האקספלורר BB50-EK2702A המוצגת באיור 3. ערכת גורמי צורה קטנה זו מיושרת עם ממדי לוח הלחם לחיבור קל למערכות אב טיפוס ולחומרת מעבדה. הוא כולל ממשק USB, מנפה מובנה של SEGGER J-Link, נורית LED וכפתור לאינטראקציה עם המשתמש. הערכה נתמכת באופן מלא על ידי Simplicity Studio Suite, וניתן להשתמש בה עם כלי השירות Energy Profiler. דוגמאות תוכנה מסופקות עבור כל ציוד היקפי, והדגמות מפעילות את ה-LED, הלחצן וה-UART.

איור 3: מוצגת ערכת האקספלורר BB50-EK2702A. (מקור תמונה: Silicon Labs)

הערכה כוללת שקע mikroBUS ומחבר Qwiic. תמיכת תוסף חומרה זו מאפשרת למפתחים ליצור במהירות ואבטיפוס של יישומים באמצעות לוחות מדף של ספקים שונים.

מפתחים המעוניינים בנקודת התחלה מקיפה יותר עשויים להשתמש בערכת BB50-PK5208A Pro המוצגת באיור 4. ערכה זו, המיועדת להערכה ובדיקה מעמיקה, מכילה חיישנים וציוד היקפי המדגימים רבות מהיכולות של ה-MCU.

איור 4: מוצגת ערכת BB50-PK5208A Pro להערכה ובדיקה מעמיקה. (מקור תמונה: Silicon Labs)

ערכת ה-Pro כוללת קישוריות USB, זיכרון בעוצמה נמוכה במיוחד של 128 על 128 פיקסלים LCD, ג'ויסטיק אנלוגי בעל שמונה כיוונים, נורית LED וכפתור משתמש. הוא כולל גם חיישן הלחות והטמפרטורה היחסית Si7021 של Silicon Labs ומקורות כוח מרובים, כולל USB וסוללת מטבע.

להרחבה, הלוח מציע 20 פינים, 2.54 מ"מ ראש. הוא מספק גם רפידות פריצה לגישה ישירה לסיכות I/O. כמו לערכת Explorer, ערכת ה-Pro תומכת ב-Energy Profiler ונשלחת עם דוגמאות תוכנה לכל ציוד היקפי.

אפשרויות ניפוי באגים EFM8BB50

Silicon Labs מציעה מספר ניפוי באגים לתמיכה ב-MCU שלה. עבור איתור באגים למטרות כלליות, החברה מציעה את DEBUGADPTR1-USB, מתאם USB של 8 סיביות לניפוי באגים עם מחבר פשוט בן 10 פינים.

יכולות מיוחדות יותר זמינות מ-SI-DBG1015A Simplicity Link Debugger. זה מתחבר לממשק ה-Mini Simplicity הכלול בשתי הערכות שהוזכרו לעיל. בנוסף לפונקציונליות הבסיסית שלו, Simplicity Link מציעה יכולות נוספות, לרבות Debugger J-Link של SEGGER, ממשק מעקב אחר מנות, יציאת COM וירטואלית, ורפידות פריצה לבדיקה קלה של אותות בודדים.

סיכום

8051 MCUs מודרניים כמו EFM8BB50 מביאים תכונות המשויכות בדרך כלל להתקני 16-bit ו-32-bit לתחום 8-bit. עם מהירויות השעון המהירות שלה, ציוד היקפי בעל ביצועים גבוהים וסביבת פיתוח תוכנה חזקה, משפחת MCU זו מעניקה למפתחים את התמהיל הנכון של יכולות עבור מספר הולך וגדל של יישומים שבהם המקום והכוח מוגבלים אך נדרשים ביצועים וגמישות גדולים יותר.