מהי תכנות מערכת משובצת ושפותיה

נסה את הכלי שלנו לביטול בעיות





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

רכיבי מערכות משובצות

להלן המרכיבים של מערכות משובצות




  • חומרה משובצת: מיקרו-בקר הוא הלב של המערכת המוטמעת, שבה מכשירים היקפיים מרובים מתממשקים לחומרה משובצת לצורך תקשורת.
  • RTO משובץ: מערכת הפעלה משובצת בזמן אמת משמשת לביצוע פעולות מורכבות (ar).
  • מנהלי התקנים: הוא משמש כגשר בין מערכות ההפעלה והתקנים היקפיים.
  • ערימות תקשורת: הוא משמש לתקשורת עם מכשירים חיצוניים.
  • יישומים משובצים: הוא מבצע את הפונקציה המוגדרת מראש של המכשיר המוטבע.
רכיבי מערכת משובצים

רכיבי מערכת משובצים

תוכנה משובצת

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



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

שפות תכנות מערכת משובצות

תוכנה משובצת משתמשת במערכת הפעלה, שהיא מערכת הפעלה בזמן אמת המבצעת מספר משימות בו זמנית. התוכניות המשובצות מתוכנתות באמצעות in C / C ++ שפות סקריפטים, פיטון וג'אווה ומעובדות במערכות הפעלה כמו מערכת הפעלה לינוקס , VxWorks , Fusion RTOS, Nucleus RTOS, micro C / OS, OSE וכו '. בחירת שפת התכנות ממלאת תפקיד חיוני בפיתוח תוכנה משובצת, המבוססת על גורמים מסוימים כמוצג להלן,

  • גודל : כמות הזיכרון הנדרשת על ידי תוכנית ממלאת תפקיד חשוב, שכן למעבדים משובצים (מיקרו-בקרים) יש כמות ספציפית של ROM (זיכרון לקריאה בלבד) בהתבסס על היישום שלה.
  • מְהִירוּת : מהירות ביצוע התוכנית חייבת להיות מהירה
  • הִטַלטְלוּת: ניתן לחבר מעבדים שונים באמצעות תוכנית אחת.
  • היישום קשה
  • התחזוקה קשה.

תכנות מערכת משובצת בשפת הרכבה

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


קֶלֶט

כאן: MOV R0, # 01H

MOV # 1, # 02H

MOV A, R0

הוסף A, R1

MOV P0, A.

פשוט כאן

תְפוּקָה

כתובת אופקוד כתובת

0000 78 01
0002 79 02
0004 E8 -
0005 29 -
0006 F5 80
0008 80 00

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

אודות C, C ++, Java ו- Embedded C

תכנות ג

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

מוטבע C

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

השימוש ב- C במערכת המשובצת עקב היתרונות הבאים

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

השוואה לשפות אחרות ברמה גבוהה C מציעה גמישות רבה יותר מכיוון שהיא שפה יחסית מונחית מבנה ותומכת ברמה נמוכה בסיביות מניפולציות בנתונים .

C ++

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

JAVA

ניתן לתכנת מערכת משובצת בשפת JAVA, באמצעות מכונה וירטואלית JAVA (JVM) הגישה להרבה משאבים. הוא מוצא בעיקר שימוש ביישומים מתקדמים (כמו טלפונים ניידים) ומציע ניידות בין מערכות לעיבוד היישומים. זה לא מועדף על מכשירים מוטבעים קטנים יותר.

ארכיטקטורת תכנות משובצת C ודוגמה

ניתן להבין את ארכיטקטורת התכנות המוטבעת C בעזרת דוגמה לשימוש 8051 מיקרו-בקרים , כאשר תפקידה הוא להבהב את נורת הלד המחוברת ל- PORT1 של הבקר והמהדר המשמש הוא Keil C Compiler. להלן הקוד עבור ה- לד לְמַצְמֵץ.

# כלול // הנחיה של מעבד מראש
עיכוב בטל (int) // הצהרת פונקצית עיכוב
בטל ראשי (ריק) // פונקציה ראשית
{
P1 = 0x00 // יציאה 1 כבויה כך שהנורית כבויה ומאוחסנת ב- reg51.h
ואילו (1) // לולאה של אינסוף
{
P1 = OxFF //// יציאה 1 דולקת כך שהנורית דולקת
עיכוב (1000) // הקצאת עיכוב
P1 = 0X00 // יציאה 1 כבויה
עיכוב (1000)
}
}
עיכוב בטל (int d) // הקצאת פונקציית עיכוב
{
לא חתום int i = 0 // משתנים שהוקצו באופן מקומי
עבור (ד> 0 ד-)
{
עבור (i = 250 i> 0i–)
עבור (i = 248 i> 0i–)
}
}

יתרונות

להלן היתרונות של תוכנה משובצת

  • טעינת הנתונים מהירה יותר
  • העלות נמוכה
  • מנצל פחות משאבים.

חסרונות

להלן החסרונות של תוכנה משובצת

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

יישומים

להלן היישומים של תוכנה משובצת

  • בַּנקָאוּת
  • מכוניות
  • מכשירי חשמל לבית
  • אוטו
  • טילים וכו '.

שאלות נפוצות

1). מהי תוכנה משובצת?

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

2). מהן התוכניות המשמשות בתוכנת מערכת משובצת?

תוכנות המערכת המשובצות מתוכנתות בסקריפטים C או C ++, Phyton ו- Java.

3). מה ההבדל בין מערכות משובצות למערכת הרגילה?

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

4). מהם הסוגים השונים של מערכות משובצות?

המערכות המשובצות מסווגות לשתי קטגוריות

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

5). יישומים עיקריים של מערכת משובצת

היישומים העיקריים של מערכת משובצת הם

  • מכונת כביסה
  • מצלמות דיגיטליות
  • נגן מוסיקה וכו '.

מערכת משובצת היא שילוב של חומרה ותוכנה. איפה ה תוכנות משובצות מתוכנתים בסקריפטים C או C ++, Phyton ו- Java. הם פועלים על מערכת הפעלה לינוקס, מיקרו C / OS, QNX וכו '. שפת C מהווה את השפה הבסיסית לכתיבת קודי תוכנה משובצים. לפיכך זו סקירה כללית של תוכנה משובצת והארכיטקטורה שלה מוסברת באמצעות תוכנית.