 |
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
|
|
نشاط [ F.Abdelaziz ]
قوة السمعة:333
|
|
24-03-2011, 11:37 AM
المشاركة 1
|
|
نبذة عن الاستطلاع POLLING و المقاطعات INTERRUPTS
والميكروكونترولر PIC16F877
المقاطعات INTERRUPTS
يوجد طريقتان للاتصال بين الميكروكونترولر والنظام الخارجى :
· طريقة الاستطلاع POLLING .
· طريقة المقاطعاتINTERRUPTS.
طريقة الاستطلاع POLLING
· فى هذه الطريقة يصل الميكروكونترلر إلى الجهزة الخارجية فى نفس الفترة الزمنية تماما ويحصل على المعلومات المطلوبة .
· هذه الفترة الزمنية تتحدد بمعرفة المستخدم .فى الحقيقة يمكنك القول بأنه عند استخدام هذه الطريقة فأن المعالج بنفسه هو الذى يصل إلى الأجهزة ويطلب المعلومات التى يحتاجها لكى يستمر فى العمل .
· فى هذه الطريقة كما نرى لا توجد استقلالية للأجهزة الخارجية فى الاعتماد على نفسها , فهى تعتمد على الميكروكونترولر فقط يمكن للمعالج الوصول للجهاز الخارجى ويحصل منه على المعلومات التى يحتاجها .
· العيب الرئيسى عند كتابة برنامج باستخدام هذه الطريقة هو الوقت الضائع , فالميكروكونترولر يحتاج للانتظار ومراجعة وصول معلومات جديدة .
طريقة المقاطعات INTERRUPTS
· المقاطعة هى إشارة ترسل للميكروكونترولر كعلامة على وقوع حدث ويحتاج إلى اهتمام (معالجة) فورى.
· المقاطعة "تطلب " من المعالج التوقف عن تنفيذ البرنامج الحالى وأن عليه "تخصيص هذا الوقت" لتنفيذ كود خاص.
· فى الحقيقة فى طريقة المقاطعة يتم تعريف خيار نقل المعلومات المتولدة بالأنظمة الداخلية أو الخارجية داخل الميكروكونترولر بمعرفة تلك الأنظمة نفسها .
بمجرد أن ينتهى النظام من مهمته فسوف يعلمه المعالج بأنه يمكنه الوصول والستقبال المعلومات واستخدامها .
مصادر المقاطعة
· ترسل الأجهزة hardware الخارجية المقاطعات إلى الميكروكونترولر من أجل استقبال "المعالجة".
· يمكن للميكروكونترولر أن يرسل لنفسه مقاطعة كنتيجة لتنفيذ كود مثل تقرير بخطأ فى العملية .
· فى الأظمة التى تحتوى على العديد من الميكروكونترولر فإن المعالجات يمكن أن ترسل مقاطعات إلى بعضها البعض كوسيلة إتصال بينها , على سبيل المثال لتقسيم العمل فيما بينها .
· يوجد نوعان من المقاطعات : المقاطعات بالبرمجيات software interrupts والمقاطعات بالأجهزة hardware interrupts .
المقاطعات بالبرمجيات Software Interrupts
· تأتى المقاطعة بالبرمجيات من البرنامج الذى يعمل بواسطة المعالج و"يطلب" من المعالج التوقف عن العمل ويذهب لتنفيذ كود المقاطعة ثم يعود ويستمر فى تنفيذ البرنامج .
المقاطعات بالأجهزة Hardware Interrupts
· ترسل مقاطعات الأجهزة إلى الميكروكونترولر بواسطة الأجهزة الخارجية .
· بعض المقاطعات يمكن منعها أو غلقها “blocked” = (masking) عن طريق خانة تمكين المقاطعة Interrupt Enable bit (IE) . عند منع أو غلق المقاطعة فإن الميكروكونترولر "لن يرى" طلب المقاطعة وبالتالى لن يتاح له تنفيذها .
· لن يتم تنفيذ المقاطعة المغلقة حتى يتم إزالة غلقها .
· يوجد مقاطعات لا يمكن غلقها . هذه المقاطعات تستخدم عند الظروف الحرجة للأجهزة hardware مثل الهبوط فى الجهد .حيث نطلب من الميكروكونترولر الاستجابة الفورية لهذه الأنواع من المقاطعات وبدون أى إهمال لها .
|