תפריט English Ukrainian רוסי עמוד הבית

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


אינציקלופדיה של רדיו אלקטרוניקה והנדסת חשמל
ספרייה חינם / ערכות של מכשירים רדיו-אלקטרוניים וחשמליים

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

ספריה טכנית בחינם

אנציקלופדיה של רדיו אלקטרוניקה והנדסת חשמל / מיקרו-בקרים

הערות למאמר הערות למאמר

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

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

אנו מעצבים מכשירים על מיקרו-בקרים

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

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

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

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

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

הבה נניח שייעשה שימוש בנהג מנוע DC משולב LMD18200 מבית National Semiconductor. תרשים טיפוסי של החיבור שלו מוצג באיור. 2. הוא מכיל גשר של טרנזיסטורי MOS חזקים, שהאלכסון שלהם כולל מנוע.

אנו מעצבים מכשירים על מיקרו-בקרים

הנהג נשלט באמצעות שלושה אותות לוגיים. פולסים מלבניים מסופקים לכניסת PWM (Pulse Width Modulation), שהיחס בין משך הזמן לתקופת החזרה (מקדם חובה) קובע את מהירות המנוע. הרמה הלוגית של האות בכניסת DIR (כיוון) קובעת את הקוטביות של המתח המסופק למנוע, ולכן את כיוון הסיבוב שלו. על ידי הגדרת יומן הרמה. 1 בכניסת BR (בלם), המנוע מופסק, ואם בזמן זה יש יומן בכניסת PWM. 0, מעגל אספקת החשמל של המנוע פשוט יהיה פתוח, אחרת כבלי המנוע יחוברו גם זה לזה, מה שיספק בלימת חירום.

לנהג יש שני חיישנים מובנים. אחד מהם יוצר זרם הזורם מפין ה-CUR (הזרם) והוא פרופורציונלי לזרם המנוע עם פקטור של 377 μA/A. פלט חיישן הטמפרטורה TF (דגל תרמי) הוא דיסקרטי עם אספן פתוח. זה נכנס למצב יומן. 0. אם גביש הדרייבר מחומם מעל 145 מעלות צלזיוס.

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

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

לאחר הפעלת מתח האספקה, על המכשיר, מבלי להפעיל את המנוע, להמתין לפקודה המציינת את כיוון הסיבוב. יש לאשר את קבלתו באמצעות אות אור. עם הפקודה "התחל", יש להפעיל את המנוע ולהתחיל להסתובב בכיוון שצוין בתדר ממוצע (מחזור אות PWM = 0.5). עבור הפקודות "SLOWER" ו-"FASTER", מחזור העבודה צריך לרדת או לגדול בהתאם, מבלי לחרוג מ-0.2... 1. פקודת "STOP" צריכה להפסיק מיד את המנוע, ולאחר מכן ניתן להתניעו שוב על ידי הוצאת ה- פקודת "התחל".

אם חריגה מהערך המותר של צריכת הזרם, מה שעלול להיות תוצאה, למשל, של חסימה מכאנית של ציר המנוע, יש לכבות את האחרון ולתת אות קול לסירוגין בתדר של 1000 הרץ. צורת התפרצויות קצרות (משך הזמן וההפסקות ביניהם הם 1 שניות). אם המיקרו-מעגל מתחמם יתר על המידה, יש צורך לעצור את המנוע ולהשמיע אות קול בפרצים ארוכים (משך ההתפרצויות וההפסקות הוא 2 שניות). האזעקה הקולית צריכה להישאר דולקת עד אז. עד שהמפעיל יוציא את פקודת STOP, מחזיר את המכשיר למצבו המקורי. לפני מתן פקודה כזו, היא לא אמורה להגיב לאף אחת אחרת.

כבר בשלב זה יש להפשיט מפרטים שאינם חיוניים לפיתוח תכנית הח"כ. למשל, במקרה הזה זה לא משנה. שעצם הבקרה (מנוע) משמש כהנעת מאוורר, סוג האוורור (פליטה או אספקה) תלוי בכיוון סיבובו, ועוצמת זרימת האוויר תלויה בתדירות. יתרה מכך, בעת פיתוח אלגוריתם, אתה יכול לשכוח לחלוטין מהמנוע ומהנהג שלו, תוך התמקדות ביצירת אותות בקרת PWM. DIR, BR ועיבוד אותות מחיישני CUR ו-TE.

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

בהתבסס על התיאור המילולי, נערכים רשימות של אותות קלט ופלט של ה-MK. הראשון שבהם כולל פקודות שניתנו על ידי המפעיל ואותות החיישן: "EXTRACTION". "שְׁאִיבָה". "הַתחָלָה". "מהיר יותר". "איטי יותר." "תפסיק". "עומס יתר" (CUR). "חימום יתר" (TF). השני מכיל אותות בקרה לנהג המנוע ומחוונים: PWM - מהירות סיבוב. DIR - כיוון סיבוב, BR - כבה את המנוע. G - הפעל את הנורית הירוקה. Y - הפעל את הנורית הצהובה. S - צליל.

בהתחשב באמור לעיל, נוכל להסיק מסקנה ראשונית. מה שח"כ דורש. בעל לפחות 14 פינים לחיבור מעגלים חיצוניים (שמונה כניסות ושש יציאות). מכיוון שאות ה-CUR הוא אנלוגי, יהיה צורך במשוואה כדי להשוות את קריאות החיישן עם ערך מקובל וליצור אות לוגי "OVERLOAD". לכן ח"כ עדיף. מצויד בהשוואה מובנית. מתאים, למשל, הוא השינוי המינימלי של 18 פינים של MK מסדרת Z86. האפשרות הזולה ביותר היא מיקרו-מעגל. Z86E02. זה הכל לעת עתה. לגבי החומרה של המכשיר. ההתפלגות של אותות הקלט והיציאה על פני פיני ה-MC אינה משמעותית בשלב זה.

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

דוגמה של גרף אוטומט מוצגת באיור. 3.

אנו מעצבים מכשירים על מיקרו-בקרים

מדינות מיוצגות על ידי צמתים (קודקודים) של הגרף. במקרה זה, ישנם ארבעה מהם: A. B. C ו-D. הקודקודים מחוברים בקשתות המצוידות בחצים המציגים את כיוון המעבר, האירוע Xi שגורם למעבר זה מצוין מעל הקשת, ומתחתיו קבוצה של אותות פלט Yi שנוצרו על ידי המכונה ברגע זה וללא שינוי עד המעבר הבא. תיאורטית, בדיוק אותן קשתות צריכות לצאת מכל קודקוד של הגרף. כמה השפעות חיצוניות שונות על המכונה אפשריות. אם אירוע כלשהו אינו משנה את מצב האוטומט, הקשת המתאימה מוצגת נכנסת לאותו קודקוד ממנו יצא. עם זאת, כדי לא לבלבל את הציור, בפועל נותרו רק אלו מהקשתות הללו. שאיתם קשורים שינויים באותות הפלט. לדוגמה, מהגרף המוצג באיור. 3. ניתן להסיר קשתות A-A ו-B-B. בשפה רגילה, המשמעות היא שהמכונה במצבים A ו-B אינה מגיבה לאירוע X3.

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

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

  • START - מוגדר מיד לאחר הפעלת החשמל. הפעולות הראשוניות הדרושות מבוצעות - הערכים ההתחלתיים של משתני התוכנית ואותות הפלט נקבעים, והתקנים היקפיים מוגדרים. לאחר מכן, המכונה עוברת למצב STOP1 (דוגמה טובה למעבר המבוסס על אירוע עקיף - השלמת האתחול);
  • STOP 1 - המכונה נכנסת אליו עם סיום האתחול או לאחר יציאה ממצב חירום. יציאות לפי פקודות המציינות את כיוון הסיבוב של המנוע:
  • STOP2 - המכונה ממתינה לפקודה "התחל";
  • הפעלה - מצב ראשי, המכשיר מייצר אות PWM. יציאה בפקודה "STOP" או באמצעות אותות מחיישני חירום;
  • לְחַמֵם יוֹתֵר מִדַי. OVERLOAD - מצבים שאליהם עוברת המכונה ממצב OPERATION כתוצאה מהפעלת החיישנים המתאימים. המנוע כבוי והמכשיר יוצר אותות קול. היציאה היא רק בפקודה "STOP".

הגרף הבנוי מוצג באיור. 4.

אנו מעצבים מכשירים על מיקרו-בקרים

קל לראות שאי אפשר לשנות בטעות כיוון סיבוב שגוי שהוגדר בטעות מבלי להפעיל ואז לכבות את המנוע. בנוסף, כדי להתחיל אותו, אתה תמיד צריך לתת שתי פקודות - כיוון והתחלה. על ידי סירוב לפקודה "התחל", אתה יכול לבטל את מצב STOP2. ולכוון את הקשתות של הפקודות "PUSH" ו-"EXTRACTION" ישירות למצב OPERATION. כתוצאה מכך, יהיה כפתור אחד פחות בלוח הבקרה, וכניסת MK אחת תתפנה. והמנוע יופעל מיד לאחר לחיצה על כל אחד מהלחצנים שקובעים את הכיוון. באופן קפדני, כל שינוי באלגוריתם בקרה נתון חייב לקבל את הסכמת הלקוח או המשתמש העתידי במכשיר. אבל בתרגול חובבני, הלקוח, המבצע והמשתמש הם לרוב אדם אחד ומספיק "להתייעץ עם עצמך".

זה בולט שהגרף אינו משקף את השיטה של ​​הפקת אות PWM עם מחזור עבודה משתנה. באופן כללי, ניתן לעשות זאת על ידי מכשיר מיוחד הנשלט מהח"כ. אבל אנחנו שואפים ליישם הכל באופן תכנותי בלבד, אז נצטרך לפצל את מצב WORK לשניים. בראשון שבהם (WORK) PWM = 0, בשני (WORK 1) - PWM = 1.

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

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

הבהרה הכרחית נוספת היא בדיקת קבילות ערכי השהיה. בהתאם למשימה, מחזור העבודה של אות PWM. שווה ל-T1/(T1+T0). כאשר T1 ו-T0 הם עיכובי הזמן של הטיימרים, חייבים להישאר תמיד במרווח 0,2... 1. לכן, לאחר כל פקודה לשינוי המהירות, על המכונה להיכנס למצב CHECK ורק משם לחזור ל- OPERATION מצב לאורך אחת משתי קשתות. הראשון תואם תוצאת בדיקה חיובית; בלחיצה עליו נקבעים ערכי מהירות תריס חדשים. השני - התוצאה שלילית, הקטעים התקפים בעבר נשארים ללא שינוי.

נמשיך לנתח את הגרף, נציין שמצבי OVERHEAT ו-OVERLOAD שונים רק בתקופת החזרה של אות הקול. זה רעיון טוב לשלב אותם לאחד, לקרוא לזה תאונה. ניתן להפיק את אות השמע S באמצעות שני טיימרים, בדומה לאות PWM שנדון לעיל. יתרה מכך, רצוי להשתמש באותו טיימר "פיזי", שנשאר במצב זה במצב פעיל.

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

הגרף המפותח של הבקרה האוטומטית של המנוע מוצג באיור. 5.

אנו מעצבים מכשירים על מיקרו-בקרים

שימו לב שהצהרות מילוליות של הפעולות שבוצעו מוחלפות בהקצאת ערכים ספציפיים למשתנים. לדוגמה, במקום הביטוי "הפעל את הנורית הצהובה", יצוין Y = 1 וצוין כי יש לכבות את הנורית הירוקה, G = 0. בנוסף לאותות הפלט שהוזכרו לעיל ועיכובי הטיימר, קבוע T הוא תקופת החזרה של פולסי PWM והמשתנה N הוא מספר הפולסים S שנותרו עד סוף מרווח אות האודיו שנוצר.

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

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

אנו מעצבים מכשירים על מיקרו-בקרים

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

אנו מעצבים מכשירים על מיקרו-בקרים

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

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

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

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

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

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

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

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

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

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

כל אלגוריתם ההפעלה של המכשיר מיושם לפעמים על ידי קבוצה של שגרות טיפול בפסיקות. במקרה זה, הלולאה הראשית מתדרדרת למספר הוראות מכונה, עד לפקודה אחת לקפוץ לעצמה ללא תנאי. חברי כנסת רבים מספקים באופן ספציפי פקודות HALT או IDLE, בהן הם משתמשים. בעיקרו של דבר, הם מפסיקים לעבוד (לפעמים אפילו מחולל השעון נכבה). רק בקשת פסיקה נכנסת יכולה להוציא את ה-MC ממצב זה. לאחר סיום עיבוד הבקשה. המיקרו-בקר מבצע את המעבר הבלתי מותנה לפקודת העצירה המסופקת בלולאה הראשית ו"נרדם" שוב. מצב זה הוא חסכוני מאוד, שכן הכוח הנצרך על ידי חבר כנסת עצור מופחת פעמים רבות, ועולה רק במהלך תגובה להשפעות חיצוניות.

דיאגרמת הבלוק של אלגוריתם בקרת מנוע המאוורר, שפותחה תוך התחשבות באמור לעיל, מורכבת משני חלקים, המוצגים באיור. 8 (מחזור ראשי) ואיור. 9 (עיבוד הפסקת טיימר). שניהם תואמים בעצם לדיאגרמות הבלוק האופייניות שנדונו לעיל, פרט לכך שאותן פעולות המבוצעות בעת עיבוד אירועים שונים משולבות. המטפל בפסיקת טיימר יוצר אותות PWM ו- S. במעבר ממצב STOP למצב RUN, ההפסקה מופעלת, ובחזרה למצב STOP, היא מושבתת.

אנו מעצבים מכשירים על מיקרו-בקרים

לתוכנית יש כעת משתנה מצב ST, שלצורך הבהירות מוקצים לו ערכי מחרוזת - שמות המצבים המתאימים. כאמור לעיל, בתוכנית יהיו אלו מספרים - מספרי מדינה או שמותיהם הסמליים. הערכים המוקצים למשתנה N0 נבחרים על סמך ההנחה שתקופות החזרה של הפולסים המופקים PWR ו-S זהים ושווים ל-1 ms. אם זה לא המקרה. יהיה צורך לשנות מעט את דיאגרמת הבלוק.

אנו מעצבים מכשירים על מיקרו-בקרים

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

ספרות

  1. Franke K. מבוא למיקרו מחשבים: פר. איתו. - מ.: Energoatomiedat. 1998.
  2. Kagan B. M., Stashin V. V. יסודות התכנון של התקני אוטומציה מבוססי מיקרו-מעבד. - מ.: Energoatomiedat. 1987.
  3. Stashin V.V., Urusov A.V., Mologoitseva O.F. עיצוב של מכשירים דיגיטליים על מיקרו-בקרים עם שבב יחיד. - מ.: Energoatomiedat. 1990.

מחבר: מ' גלדשטיין, ריבינסק

ראה מאמרים אחרים סעיף מיקרו-בקרים.

תקרא ותכתוב שימושי הערות על מאמר זה.

<< חזרה

חדשות אחרונות של מדע וטכנולוגיה, אלקטרוניקה חדשה:

התמצקות של חומרים בתפזורת 30.04.2024

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

ממריץ מוח מושתל 30.04.2024

בשנים האחרונות התקדם המחקר המדעי בתחום הנוירוטכנולוגיה ופותח אופקים חדשים לטיפול בהפרעות פסיכיאטריות ונוירולוגיות שונות. אחד ההישגים המשמעותיים היה יצירת ממריץ המוח המושתל הקטן ביותר, שהוצג על ידי מעבדה באוניברסיטת רייס. מכשיר חדשני זה, הנקרא Digitally Programmable Over-brain Therapeutic (DOT), מבטיח לחולל מהפכה בטיפולים על ידי מתן יותר אוטונומיה ונגישות למטופלים. השתל, שפותח בשיתוף מוטיב נוירוטק ורופאים, מציג גישה חדשנית לגירוי מוחי. הוא מופעל באמצעות משדר חיצוני באמצעות העברת כוח מגנו-אלקטרי, ומבטל את הצורך בחוטים ובסוללות גדולות האופייניות לטכנולוגיות קיימות. זה הופך את ההליך לפחות פולשני ומספק יותר הזדמנויות לשיפור איכות החיים של המטופלים. בנוסף לשימוש בטיפול, להתנגד ... >>

תפיסת הזמן תלויה במה מסתכלים 29.04.2024

המחקר בתחום הפסיכולוגיה של הזמן ממשיך להפתיע אותנו בתוצאותיו. התגליות האחרונות של מדענים מאוניברסיטת ג'ורג' מייסון (ארה"ב) התבררו כמדהימות למדי: הם גילו שמה שאנו מסתכלים עליו יכול להשפיע רבות על תחושת הזמן שלנו. במהלך הניסוי, 52 משתתפים עברו סדרה של מבחנים, העריכו את משך הצפייה בתמונות שונות. התוצאות היו מפתיעות: לגודל ולפרטי התמונות הייתה השפעה משמעותית על תפיסת הזמן. סצנות גדולות יותר ופחות עמוסות יצרו אשליה של זמן מאט, בעוד שתמונות קטנות ועמוסות יותר נתנו תחושה שהזמן מואץ. חוקרים מציעים שעומס חזותי או עומס יתר על הפרטים עלולים להקשות על תפיסת העולם סביבנו, מה שבתורו יכול להוביל לתפיסה מהירה יותר של זמן. לפיכך, הוכח שתפיסת הזמן שלנו קשורה קשר הדוק למה שאנו מסתכלים עליו. יותר ויותר קטן ... >>

חדשות אקראיות מהארכיון

LG תרכוש לוחות LCD מחברת Sharp 29.02.2008

LG Electronics הודיעה על תוכניות לרכוש לוחות LCD בגודל 32 אינץ' ו-52 אינץ' מחברת Sharp כדי לענות על הביקוש הגובר לטלוויזיות שטוחות.

החברה מתכננת לרכוש כ-2 מיליון פאנלים בגודל 32 אינץ'. לא ידוע מספר לוחות ה-52 אינץ' שירכשו מחברת שארפ. LG משיגה פאנלים לטלוויזיה מ-LG Display, המיזם המשותף שלה עם פיליפס, ויצרנים טייוואנים.

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

עוד חדשות מעניינות:

▪ Pocket DNA Sequencer

▪ נייר לשימוש חוזר

▪ מצלמת חרקים

▪ TerraMaster F5-221 NAS

▪ הטלפון מזהה את הבעלים באופן אישי

עדכון חדשות של מדע וטכנולוגיה, אלקטרוניקה חדשה

 

חומרים מעניינים של הספרייה הטכנית החופשית:

▪ מדור אתר טלוויזיה. מבחר מאמרים

▪ מאמר מחליק לייצור מדחף. טיפים לדוגמן

▪ מאמר למה שבעה פתקים? תשובה מפורטת

▪ מאמר קורנית. אגדות, טיפוח, שיטות יישום

▪ מאמר תורת המנועים החשמליים. אנציקלופדיה של רדיו אלקטרוניקה והנדסת חשמל

▪ מאמר הגנת ממסר של רשת החשמל למגורים. אנציקלופדיה של רדיו אלקטרוניקה והנדסת חשמל

השאר את תגובתך למאמר זה:

שם:


אימייל (אופציונלי):


להגיב:





כל השפות של דף זה

בית | הספרייה | מאמרים | <font><font>מפת אתר</font></font> | ביקורות על האתר

www.diagram.com.ua

www.diagram.com.ua
2000-2024