قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

geniusse01
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2008
الدولة: Jordan - Amman
المشاركات: 1,139
نشاط [ geniusse01 ]
قوة السمعة:106
قديم 03-06-2009, 04:48 PM المشاركة 17   
افتراضي



السلام عليكم

الاخوة الاعزاء











شكرا على ردودكم الطيبة والتي تدل على اخلاقكم الطيبة..واتمنى ان تستمر القرية عامرة بكم فانا استفدت منكم كثيرا وارجو ان يكون ذلك في ميزان حسناتكم يوم القيامة جميعا..

اخي العزيز حيدر :

ربنا يبعدنا عن التصفية ..وهي كما قلت التصفير ...قمت بالتعديل حتى....

ربنا يوفقكم جميعا ..

واخر دعوانا ان الحمدلله رب العالمين..وصلى الله على سيدنا محمد وعلى اله وصحبه وسلم..

اعلانات

أشرف الخطيب
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
الدولة: مصــــــــــــــــــــــــــــــر
المشاركات: 195
نشاط [ أشرف الخطيب ]
قوة السمعة:0
قديم 03-06-2009, 07:44 PM المشاركة 18   
افتراضي


السلام عليكم ورحمة الله وبركاته

اسمحوا لى أن أضع إجاباتى على الأسئلة ...

إجابة السؤال الأول :

عند وضع القيمة واحد فى البت رقم 4 سيتم تفعيل المقاطعة الخاصة بالمنفذ RB0
(وطبعا مع تفعيل البت رقم 7 لتفعيل المقاطعات بشكل عام بالإضافة إلى تصفير البت رقم 1 الخاصة بعلم مقاطعة المنفذ RB0 )

فإنه عند ضغط على مفتاح موصل على RB0 فسوف تحدث مقاطعة للمتحكم ويترك البرنامج الأساسى الذى ينفذه ويذهب لبرنامج فرعى باسم INTERRUPT لخدمة تلك المقاطعة

وفى نهاية البرنامج الخاص بالمقاطعة (INTERRUPT) نقوم بتصفير العلم الخاص بها ( لأننا قد انتهينا من تقديم الخدمة للمقاطعة ) ثم يرجع المتحكم لتنفيذ البرنامج الأساسى

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

أشرف الخطيب
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
الدولة: مصــــــــــــــــــــــــــــــر
المشاركات: 195
نشاط [ أشرف الخطيب ]
قوة السمعة:0
قديم 03-06-2009, 07:57 PM المشاركة 19   
افتراضي


مايحدث عند حدوث مقاطعة ( بالتفصيل الممل ) :

1- يترك البرنامج الأساسى و يقوم بتصفير البت رقم صفر الخاصة بتفعيل جميع المقاطعات ( أى أنه سيعطل أى مقاطعة ستأتى لاحقا حتى ينتهى من خدمة المقاطعة التى حدثت أولا )

2- ثم يقوم بتخزين العنوان الذى سيرجع إليه( RETURN Address ) فى المكدس STACK

3- ثم يقوم بوضع عنوان البرنامج الذى يخدم المقاطعة (ISR) فى عداد البرنامج program counter

4- يذهب المتحكم إلى عنوان ISR والذى به البرنامج الخاص بخدمة المقاطعات

5- داخل البرنامج يقوم البيك باستطلاع الأعلام (FLAGS POLLING) حتى يعلم أى من المقاطعات سوف يخدمها وفى نهاية تنفيذ البرنامج الخاص بالمقاطعة لابد أن نصفر العلم الخاص بها لأننا قد قد انتهينا من تقديم الخدمة له

6- وفى نهاية البرنامج نكتب أمر الرجوع إلى البرنامج الرئيسى


الصورة الرمزية ahmad72
ahmad72
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2004
المشاركات: 729
نشاط [ ahmad72 ]
قوة السمعة:109
قديم 03-06-2009, 07:59 PM المشاركة 20   
افتراضي


السلام عليكم
لو وضعنا 1 فى البت رقم 4 فقط
وتم الضغط على طرف RB0 لن يحدث شى
لاننا لم نفعل البت الخاص بالمقاطعات اصلا
السلام عليكم


أشرف الخطيب
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
الدولة: مصــــــــــــــــــــــــــــــر
المشاركات: 195
نشاط [ أشرف الخطيب ]
قوة السمعة:0
قديم 03-06-2009, 08:04 PM المشاركة 21   
افتراضي


إجابة السؤال الثانى



كود:
INTCON = 0B10110000 ;


الصورة الرمزية ahmad72
ahmad72
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2004
المشاركات: 729
نشاط [ ahmad72 ]
قوة السمعة:109
قديم 03-06-2009, 08:04 PM المشاركة 22   
sun


السلام عليكم
اخى اشرف كيف الاحوال ان شاء الله تكون على ما يرام
اعتقد والله اعلم انه لا داعى ان نكتب فى نهايه برنامج المقاطعه امر رجوع للمتحكم الى البرنامج الرئيسى
فهو يفاعل هذا تلقائى بعد انتهاء تنفيذ برنامج المقاطعه
والله اعلم
السلام عليكم


أشرف الخطيب
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
الدولة: مصــــــــــــــــــــــــــــــر
المشاركات: 195
نشاط [ أشرف الخطيب ]
قوة السمعة:0
قديم 03-06-2009, 08:07 PM المشاركة 23   
افتراضي


السلام عليكم
لو وضعنا 1 فى البت رقم 4 فقط
وتم الضغط على طرف RB0 لن يحدث شى
لاننا لم نفعل البت الخاص بالمقاطعات اصلا
السلام عليكم
السلام عليكم أخى أبو عبد الله ....

لقد قلت مع تفعيل البت الخاصة بالمقاطعات

عند وضع القيمة واحد فى البت رقم 4 سيتم تفعيل المقاطعة الخاصة بالمنفذ RB0
(وطبعا مع تفعيل البت رقم 7 لتفعيل المقاطعات بشكل عام بالإضافة إلى تصفير البت رقم 1 الخاصة بعلم مقاطعة المنفذ RB0 )


أشرف الخطيب
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
الدولة: مصــــــــــــــــــــــــــــــر
المشاركات: 195
نشاط [ أشرف الخطيب ]
قوة السمعة:0
قديم 03-06-2009, 08:18 PM المشاركة 24   
افتراضي


السلام عليكم
اخى اشرف كيف الاحوال ان شاء الله تكون على ما يرام
اعتقد والله اعلم انه لا داعى ان نكتب فى نهايه برنامج المقاطعه امر رجوع للمتحكم الى البرنامج الرئيسى
فهو يفاعل هذا تلقائى بعد انتهاء تنفيذ برنامج المقاطعه
والله اعلم
السلام عليكم
كلامك صحيح ...

ولكنى أردت أن أتكلم بشكل عام وليس على الميكروسى فقط

لأنه فى الأسمبلى مثلا يكتب أمر الرجوع EETFIE للرجوع من ISR

أما فى السى فلا نحتاج لذلك...........

يفيدنا فى ذلك المتخصصون فى لغة الأسمبلى

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 02:40 PM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025