שימוש במיקרו-בקרים ניתנים למדרוג (Scalable) כדי להשיג גמישות תכנון
באדיבות ‎DigiKey's North American Editors
2024-05-15
ככל שמאפיינים מתקדמים כגון בינה מלאכותית (AI) וממשקי אדם-מכונה (HMIs) עשירי גרפיקה מורכבים הופכים להיות נפוצים יותר ביישומים, מתכנני מוצרים מחפשים יחידות מיקרו-בקר (MCUs) עוצמתיות יותר. עם זאת, מתכננים מתבקשים ליצור גם מוצרים ממוטבי-עלות שמוותרים על המאפיינים הנוצצים האלה. לחצים מתחרים אלה מכריחים לבחור ב-MCU שניתן למדרוג בקלות כדי לענות על דרישות שוק שונות.
המהירות ההולכת וגוברת של חדשנות מוסיפה ללחץ זה. דרישות יישום יכולות להשתנות באופן בלתי צפוי, לכן חיוני שתהיה גישה קלה למיקרו-בקרים חלופיים יש לשקול גם עדכניות עתידית ושימוש חוזר. ניתן להשיג חיסכון זמן ועלות משמעותיים כשאלמנטים של תכנון ניתנים לשימוש חוזר בפרויקטים אחרים.
דרך אחת לענות על אתגרים אלה היא על ידי בחירת משפחת MCU עם מגוון רחב של אפשרויות. ה-STMicroelectronics STM32H7 היא דוגמה טובה. היא נעה בין מיקרו-בקרים ממוטבי-ערך, ברמת כניסה, של 32-bit עד מיקרו-בקרים בעלי שתי ליבות עם סט מאפיינים עשיר.
מאמר זה מדגיש קריטריונים שיש לקחת בחשבון כשבוחרים משפחת מיקרו-בקרים, תוך שימוש במאפיינים של משפחת STM32H7 כדוגמאות. הוא גם מציג לוחות פיתוח וכלים הקיימים עבור מיקרו-בקרי ה-STM32H7 ומסביר כיצד להתניע פרויקטים באמצעות תשתית זו.
גורמים ההופכים משפחת מיקרו-בקרים לגמישה וניתנת למדרוג
גורמים רבים יש לקחת בחשבון כשמחפשים משפחת מיקרו-בקרים גמישה. קיום אפשרויות במגוון רחב של רמות ביצועים והספק הוא חשוב במיוחד. על משפחת המיקרו-בקרים המועדפת לכלול אפשרויות עם מגוון רחב של מהירויות שעון וליבות ממוטבות במיוחד למטרות שונות. לדוגמה, Arm® Cortex®-M4 עבור הספק נמוך ו-ARM Cortex-M7 עבור ביצועים עיליים.
על המשפחה לכלול מיקרו-בקרים עם יכולות עיבוד בסיסיות ואפשרויות עם יכולות נרחבות. יישומים רבים דורשים הגנת נתונים ותקשורת מאובטחות. מאפיינים כגון הצפנה מבוססת חומרה, אתחול מאובטח ומאיצי הצפנה, הם חיוניים עבור מקרי שימוש אלו. באופן דומה, מעבד אותות דיגיטלי (DSP) ופקודות נקודה-צפה הם קריטיים עבור יישומים עתירי נתונים.
על משפחת המיקרו-בקרים להציע גם מגוון רחב של גודלי זיכרון RAM ו-Flash כדי להתאים לכל דבר, החל מיישומים פשוטים וכלה באלה הדורשים שלדי תוכנה (software frameworks) נרחבים או אחסון נתונים. המיקרו-בקרים חייבים להיות בעלי ממשקי זיכרון חיצוני עבור יישומים העולים על יכולות הזיכרון פנימי, כדי לספק מדרגיות (Scalability) נדרשת.
לבסוף, משפחות המיקרו-בקרים עם יותר אפשרויות היקפיות יכולות לטפל במגוון רחב יותר של יישומים. חיוני להבטיח שמשפחת המיקרו-בקרים כוללת אפשרויות עם I/O מתקדם כמו USB, Ethernet, Bluetooth ו-Wi-Fi, כיוון שממשקים אלה יכולים להיות מאתגרים להוספה כשדרוגים בתכנים מאוחרים יותר. אידיאלית, המשפחה הנבחרת תציע תאימות פינים לרוחב מגוון מוצריה כדי לתמוך בשדרוגים או שנמוכים ללא תכנון מחדש משמעותי של לוח המעגל המודפס (לוח pc).
על כלי הפיתוח לתמוך בכל משפחת המיקרו-בקרים מבחינת תוכנה. כדי להאיץ פיתוח, צריכים שיהיו תוכנת ממשק תכנות יישום (API) עקבית ומערך חזק של ספריות, תוכנת-ביניים (Middleware) ומערכת הפעלה זמן-אמת (RTOS).
STM32H7: מקרה בוחן ברבגוניות
סדרת ה-STM32H7 מבית STMicroelectronics מדגימה משפחת מיקרו-בקרים העומדת בקריטריונים אלו. כפי שמודגם בטבלה 1, היא ניתנת למדרוג במידה רבה, עם טווח שנבנה סביב ה-ARM Cortex-M7 הכולל מיקרו-בקרים בסיסיים ומתקדמים כאחד. לסדרה יש ארבעה קווי מוצר, כל אחד ממוטב במיוחד עבור יישומים שונים.
|
טבלה 1: נקודות עיקריות בארבעת קווי המוצרים של סדרת STM32H7. (מקור טבלה: מחבר, תוך שימוש בחומרי מקור מבית STMicroelectronics)
קו מוצרי ה-Value זמין במהירויות מ-280 עד 550 מגה-הרץ (MHz) וכולל 128 קילו-בייט (Kbytes) של זיכרון Flash משובץ ו-1 מגה-בייט (Mbyte) של RAM. הוא תומך במגוון ממשקי תקשורת והרחבות זיכרון חיצוני, מספק פתרון משתלם עבור מערכות מוכוונות ביצועים. ה-STM32H750VBT6 הוא מיקרו-בקר כזה, ומגיע במארז 100-LQFP של 14 x 14 מילימטר (mm).
קו מוצרי הליבה-היחידה רץ גם כן במהירויות מ-280 עד 550 MHz. הוא מספק עד Mbytes 2 של זיכרון Flash ועד 1.4 Mbytes של RAM, נותן מענה ליישומים הדורשים ממשקי משתמש עשירים ובקרת זמן-אמת. דוגמה אחת היא ה-STM32H743IIK6, שבאה במארז 201-UFBGA של 10 x 10 מ"מ.
קו מוצרי הליבה-הכפולה כוללת ליבה משנית Arm Cortex-M4 ממוטבת במיוחד לנצילות. ספק-כוח ממותג (SMPS) משובץ משפר נצילות הספק. אלמנטים היקפיים מתקדמים אחרים כוללים TFT-LCD, MIPI-DSI ומקודד/מפענח JPEG. דוגמה אופיינית היא ה-STM32H747AII6, שבאה במארז 169-UFBGA של 7 x 7 מ"מ.
קו מוצרי ה-BootFlash בולט בביצועים העיליים שלו, מגיע למהירויות של עד 600 MHz. הוא מתוכנן להקל על יישומי execute-in-place (XiP) זמן-אמת ומצויד ב-6 Kbytes של Flash אתחול לצד 620 Kbytes של RAM. נוסף לכך, דגמים מסוימים בקו מוצרים זה כוללים NeoChrom GPU אופציונלי עבור מאיץ גרפי משופר. מאפיין קו מוצרים זה הוא ה-STM32H7R3Z8J6 עם המארז 144-UFBGA שלו של 10 x 10 מ"מ.
היתרונות של תאימות עם משפחות ה-STM32F4 ו-STM32F7
ה-STM32H7 הוא חלק ממגוון רחב יותר של מיקרו-בקרים מבית STMicroelectronics והוא תואם-פינים עם אחיו, משפחות STM32F4 ו-STM32F7, עבור החבילות הנפוצות ביותר. מיקרו-בקרים אלה הם כולם מבוססים על ליבות Arm Cortex-M וחולקים אלמנטים היקפיים ומערכי פינים GPIO דומים. המאפיינים המשותפים מקלים על המתכננים לעבור בין המיקרו-בקרים ללא שינויים משמעותיים בחומרה שלהם. תאימות זו יכולה לקצר זמן פיתוח ולהפחית עלות כשמשדרגים מוצר או מתכננים מוצר חדש המבוסס על היכולות השונות של כל משפחה.
נוסף לכך, המיקרו-בקרים כולם נתמכים על ידי אותה סביבה אקולוגית, כולל ה-STM32CubeMX להגדרת תצורה ויצירת קוד אתחול, וה-STM32CubeIDE עבור פיתוח וניפוי-שגיאות. תאימות זו מבטיחה שרכיבי תוכנה, חומרת-ביניים (Middleware), וקוד יישום ניתנים לשימוש חוזר לרוחב פרויקטים המתמקדים בכל אחת מהמשפחות, תוך האצה נוספת של מחזורי הפיתוח.
תחילת העבודה עם מיקרו-בקרים מסדרת STM32H7
תחילת העבודה עם מיקרו-בקרים מסדרת STM32H7 כרוכה במספר צעדי מפתח והשימוש היעיל בלוחות פיתוח וכלים. המדריך הבא יראה שלב אחר שלב כיצד להתחיל בפיתוח עם מיקרו-בקרים רבי-עוצמה אלה.
1. בחר לוח פיתוח
ערכות Discovery, האידיאליות לחקירה ראשונית, באות עם תכנת/מנפה-באגים משולב ובדרך כלל כוללות עבור המשתמש נורות LED, קלידים, חיישנים ואופציות חיבוריות שונים על הלוח. לוחות Nucleo, כמו ה-NUCLEO-F767ZI (איור 1), הם איזון טוב בין גמישות ונשיגות. הם תואמים Arduino Uno עבור הרחבה קלה ויש להם ממשק STLINK לשימוש עם תכנתים/מנפי-באגים.
איור 1: לוח הפיתוח NUCLEO-F767ZI הוא נקודת התחלה פשוטה אך גמישה לעריכת ניסויים. (מקור תמונה: STMicroelectronics)
לוחות הערכה מציעים את מערך האלמנטים ההיקפיים ואופציות החיבוריות המקיפים ביותר עבור חקר תכונות מלאות. לדוגמה, ערכות Discovery כמו ה-STM32H745I-DISCO (איור 2) וה-STM32H750B-DK מאפשרות במהירות את ההערכה של ממשקים שונים עם מאפיינים כגון:
- 4.3 אינץ' (.in) ממשק RGB LCD עם לוח מגע
- תאימות Ethernet עם IEEE-802.3-2002
- אספקת כוח על קווי Ethernet (PoE)
- USB OTG FS
- מקודד/מפענח (Codec) אודיו SAI
- מיקרופון דיגיטלי ST-MEMS אחד
- זיכרון Flash 2 × 512 Mbit Quad-SPI NOR
- 128 Mbit SDRAM
- 4 גיגה-בייט (GBytes) של eMMC על-הלוח
- 2 × CAN FDs
- תואם לוחות Arduino Shield
- תכנת/מנפה-באגים STLINK-V3E על הלוח עם יכולת רישום מחדש USB: אחסון בנפח גדול, נקודת יציאה Virtual COM ונקודת יציאה ניפוי-באגים
איור 2: לוח ההערכה STM32H745I-DISCO מציע מערך עשיר של משאבי חומרה. (מקור תמונה: STMicroelectronics)
2. הגדרת כלי תוכנה
STMicroelectronics מציעה סביבת פיתוח משולבת (IDE) עבור המיקרו-בקרים שלה (איור 3). היא כוללת מהדר (Compiler) ,מנפה-באגים (Debugger), מגדיר-תצורה (Configurator) לצורך יצירת קוד-אתחול והגדרת אלמנטים היקפיים.
איור 3: מוצג צילום מסך של ה-STM32H7 IDE. (מקור תמונה: STMicroelectronics)
3. למד והתנסה
לאחר מכן מומלץ לקרוא את התיעוד. מקום מצוין להתחיל בו הוא המדריך למשתמש עבור לוח הפיתוח ומדריך העזר הרלוונטי STM32H7. מסמכים אלה מספקים מידע חיוני על ארכיטקטורות מיקרו-בקרים, הגדרת תצורה היקפית, מרבב פינים ומאפייני חומרה.
התנסות בפרויקטים לדוגמה היא דרך יעילה ללמוד על הכלים. STMicroelectronics מציעה מגוון פרויקטים לדוגמה עבור מיקרו-בקרי STM32 שונים. דוגמאות אלו יכולות לשרת כנקודת התחלה טובה מאוד להבנת אופן השימוש במאפייני מיקרו-בקר שונים.
לבסוף, קהילת המפתחים יכולה לספק תמיכה נוספת. עיסוק במשאבים כמו קהילת ה-ST, ערכות לימוד וסרטוני וידאו יכול לספק פתרונות לבעיות נפוצות והשראה לפרויקטים אפשריים.
4. פיתוח וניפוי-באגים
סביבת הפיתוח המשולבת (IDE) מספקת את כל מה שצריך כדי להתחיל לכתוב, לקמפל ולדבג קוד. ניתן למנף את מגדיר-התצורה ב-IDE עבור אתחול היקפי והגדרת תוכנות ביניים (Middleware). ממשק המתכנת/מנפה-הבאגים המשולב STLINK של לוח הפיתוח מאפשר ניפוי-באגים בזמן-אמת. ניתן לזהות בעיות באמצעות נקודות עצירה, צפייה במשתנים ומעבר על קוד.
5. הרחבת פרויקט
לוחות הרחבה יכולים להוסיף פונקציונליות כמו חיבוריות או חיישנים ללוחות Discovery ו-Nucleo. לאחר שהפונקציונליות הרצויה נקבעה באמצעות לוחות פיתוח, ניתן לתכנן לוח מחשב אישי (PC) מותאם במיוחד תוך שימוש בשרטוטי לוח הפיתוח כייחוס. דוגמה אחת של לוח מותאם-במיוחד היא פלטפורמת המצלמה OpenMV4 CAM H7 (איור 4) מבית Seeed Technology CO., Ltd. היא משתמשת ב-STM32H743 ליבה-יחידה.
איור 4: ה-OpenMV4 CAM H7 מיועדת עבור מערכות ראייה. (מקור תמונה: .Seeed Technology Co. Ltd)
דוגמה נוספת היא ה-ABX00051 Nicla Vision (איור 5) מבית Arduino, שמשתמש ב-STM32H747 שתי-ליבות.
איור 5: ה-ABX00051 Nicla VISION מסייע למפתחים להעריך חיישני תמונה שונים. (מקור תמונה: Arduino)
סיכום
הבחירה של המיקרו-בקר בתכנון מוצר היא קריטית, בהתחשב בדרישות המתחרות למאפיינים מתקדמים ואופטימיזציה של עלויות. סדרת ה-STM32H7 מבית STMicroelectronics היא דוגמה רבת עוצמה לאופן שבו בחירת משפחת המיקרו-בקרים הנכונה יכולה לספק גמישות ניתנת להרחבה, שעונה על הצרכים הנוכחיים והעתידיים.

מיאון אחריות: דעות, אמונות ונקודות מבט המובעות על ידי מחברים שונים ו/או משתתפי פורום באתר אינטרנט זה לא בהכרח משקפות את הדעות, האמונות ונקודות המבט של חברת DigiKey או את המדיניות הרשמית של חברת DigiKey.