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

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

zoro238
:: مهندس جيد ::
تاريخ التسجيل: Apr 2006
المشاركات: 290
نشاط [ zoro238 ]
قوة السمعة:0
قديم 03-12-2011, 09:16 PM المشاركة 1   
افتراضي سؤال في المقاطعات rb4-7 Twitter FaceBook Google+



لو حدث مقاطعه على الطرف rb4 وفي نفس الوقت حدث مقاطعه على الطرف rb5
علما بان لكل طرف دالة ينفدها
فكيف ستكون العملية ؟؟؟

وهل بالامكان ان اجل مقاطعه الطرف rb6 مرتبطة بحدوث المقاطعتين الاولى معا
وكيف >لك

اتمنى ان تكون الفكرة مفهومة

اعلانات

z_ramzi
:: مهندس متواجد ::
تاريخ التسجيل: Aug 2009
المشاركات: 143
نشاط [ z_ramzi ]
قوة السمعة:0
قديم 04-12-2011, 07:40 AM المشاركة 2   
افتراضي


حسب علمي المقاطعة المسماة : rb4-7 هي مقاطعة واحدة وليست مقاطعة لكل طرف. تحدث هذه المقاطعة عند حصول أي تغيير جهد على طرف أو اكثر من بين الأطراف 4 إلى 7 .
الرجاء مزيد من اتوضيح في سؤالك حتى اتمكن بعون الله من محاولة اجابتك.

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

zoro238
:: مهندس جيد ::
تاريخ التسجيل: Apr 2006
المشاركات: 290
نشاط [ zoro238 ]
قوة السمعة:0
قديم 04-12-2011, 06:40 PM المشاركة 3   
افتراضي


مثلا
كود:
  if (portb.f4==0){
       delay_ms(100);
               sub1(i); }
      if(portb.f5==0) {
                        if (portb.f4==0){
                                        delay_ms(10);
                                          
                                           sub2(i);
                                         }
                                         else{
   
                                                                             sub2(i);} }

if(portb.f6==0)
sub4();
فهل سيتم تنفي> الثلاث المقاطعات معا في حال تحققهن
وادا تحققت واحده واثناء تنفيد الاولى حدثث الثانية فكيف سيعمل البرنامج


zoro238
:: مهندس جيد ::
تاريخ التسجيل: Apr 2006
المشاركات: 290
نشاط [ zoro238 ]
قوة السمعة:0
قديم 06-12-2011, 05:39 PM المشاركة 4   
افتراضي


الرجاء المساعده


geniusse01
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2008
الدولة: Jordan - Amman
المشاركات: 1,139
نشاط [ geniusse01 ]
قوة السمعة:106
قديم 06-12-2011, 09:24 PM المشاركة 5   
افتراضي


لو حدث مقاطعه على الطرف rb4 وفي نفس الوقت حدث مقاطعه على الطرف rb5
علما بان لكل طرف دالة ينفدها
فكيف ستكون العملية ؟؟؟

وهل بالامكان ان اجل مقاطعه الطرف rb6 مرتبطة بحدوث المقاطعتين الاولى معا
وكيف >لك

اتمنى ان تكون الفكرة مفهومة
السلام عليكم

هل يمكن التوضيح اكثر ماذا تريد ان تفعل .. ففي حال كان هناك زمن طويل بين حدوث المقاطعتين (التغير على الاطراف المحددة ) فهذا يتم تنفيذه من خلال الشرط If .. اما في حال كان الزمن قصير فان المقاطعة هي برنامج فرعي يتم تنفيذه عند حدوث التغير على احد الاطراف . فخلال تنفيذ برنامج المقاطعة فان البيك يلغي اي مقاطعات اخرى لحين الانتهاء من المقاطعة التي يتم تنفيذها ..وبالتالي لا ينتقل لتنفيذ مقاطعة اخرى ( هذا بالنسبة لعائلة لبيك 16Fxxc) ..وهنا يتم عمل شرط If داخل المقاطعة التي يتم تنفيذها لاختبار تحقق شرط المقاطعة الثانية وعند تحقق الشرط يتم تنفيذ برنامج معين ( محدد بتحقق الشرطين المطلوبين ) .. ربما تكون الامور غير واضحة ..حيث ان توضيح المطلوب سيفيدك اكثر لتحقيق ما تريد ..واي استفسار يمكن ان تطرحه للحصول على الاجابة الشافية .. ارجو لك التوفيق..

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


hamzazayyad
:: مهندس متميز ::
تاريخ التسجيل: Aug 2005
الدولة: موزنبيق
المشاركات: 701
نشاط [ hamzazayyad ]
قوة السمعة:0
قديم 07-12-2011, 11:39 AM المشاركة 6   
x4


مثلا
كود:
  if (portb.f4==0){
       delay_ms(100);
               sub1(i); }
      if(portb.f5==0) {
                        if (portb.f4==0){
                                        delay_ms(10);
 
                                           sub2(i);
                                         }
                                         else{
 
                                                                             sub2(i);} }
 
if(portb.f6==0)
sub4();
فهل سيتم تنفي> الثلاث المقاطعات معا في حال تحققهن
وادا تحققت واحده واثناء تنفيد الاولى حدثث الثانية فكيف سيعمل البرنامج
السلام عليكم
لو فرضنا نظريا اننا نريد تنفيد هدا البرنامج
اولا لنفرض انه لا توجد اي مقاطعه حدثت وان البرنامج ينفد امر معين وموجود عند نقطه عنوانها x
وتم حدوث مقاطعه غلى rb4 فان mikro سيقوم بتخرين العنوان x في stack pointer
وسيقفز للمقاطعه لفحص المدخل الدي تفعل ووجد انه rb4 وسيبدا بتنفيده ولنفرض ان البرنامج نفد sub1 ووصل لمنتصف هدا function عند امر عنوانه y

ومن ثم حدث مقاطعه عند rb6 فان micro سيقوم بتخزين العنوان y ومن تم سينفد امر rb4 وسيبقى ينفده حتى ينهي كل اوامره

ومن ثم يعود لتنفيد الامر عند العنوان y وعندما ينتهي منه يعود الى العنوان الاصلي وهو x


الافضل دائما اخي ان تتعلم استراتيجيه افضل من هده وتتعامل بشكل افضل مع المقاطعه بشرط ان يكون المشروع المطلوب يقبل افكار افضل.


ولا تنسونا من صلح دعائكم


zoro238
:: مهندس جيد ::
تاريخ التسجيل: Apr 2006
المشاركات: 290
نشاط [ zoro238 ]
قوة السمعة:0
قديم 09-12-2011, 06:44 PM المشاركة 7   
افتراضي


مشكور اخى hamzazayyad والاستاذ geniusse01
هي الفكرة هي تشغيل 8 فن سجمن وكل 2 سيجمن تظهر فيها عداد تنازلي من 30 الى الصفر .
وكل 2 سيجمن تعمل بشرط ان يكون المفتاح تبعهم يساوي صفر
ولقد حاولت ان اعملة ولكن كنت كثير الفشل ..
قد تكون الاستراتيجة خطا ..وقد يكون غير ذلك
انا ارفقت المشروع للمساعده


zoro238
:: مهندس جيد ::
تاريخ التسجيل: Apr 2006
المشاركات: 290
نشاط [ zoro238 ]
قوة السمعة:0
قديم 09-12-2011, 06:52 PM المشاركة 8   
افتراضي


هذا الرابط

http://www.mediafire.com/file/e71jrglg87f37ro/test1.rar

إضافة رد

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

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

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


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

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