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

   

yac100
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2007
الدولة: فلسطين - غزة
المشاركات: 140
نشاط [ yac100 ]
قوة السمعة:
قديم 25-04-2012, 01:02 AM المشاركة 9   
افتراضي



توجد مقاطعة أطراف PORTB الاخرى من RB4 الى RB7 تشبه مقاطعة RB0.
لكن لا تطلبوا مني مثالا بالميكروسي لان مغامرتي معه انتهت اليوم .. نهائيا.
سأعود الى الادوات الادوات البسيطة التي كانت عندي مستفيدا من مثل تذكرته اليوم:
عصفور في اليد خير من عشرة فوق الشجرة ..
بارك الله فيك اخي العزيز علي التنبيه الجيد وجعله في ميزان حسناتك

اعلانات

yac100
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2007
الدولة: فلسطين - غزة
المشاركات: 140
نشاط [ yac100 ]
قوة السمعة:
قديم 25-04-2012, 06:47 AM المشاركة 10   
ha


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

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

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

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 25-04-2012, 07:31 AM المشاركة 11   
افتراضي


هذا التأخير نحن وضعناه و شرحت لك لماذا ...
عموما يمكنك حذف عبارة
كود:
 delay_ms(500);
و تنتهي المشكلة ..


yac100
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2007
الدولة: فلسطين - غزة
المشاركات: 140
نشاط [ yac100 ]
قوة السمعة:
قديم 25-04-2012, 07:45 AM المشاركة 12   
افتراضي


هذا التأخير نحن وضعناه و شرحت لك لماذا ...
عموما يمكنك حذف عبارة
كود:
 delay_ms(500);
و تنتهي المشكلة ..
انا اقصد يا اخي العزيز ان التأخير موجود في دالة المقاطعة (وانا اريدها في البرنامج) حتي يأخر تشغيل شئ معين دقيقة وبعد ذلك يطفئ ولكن ان حدث اي تغير علي البرنامج الرئيسي يلغي هذه الدقيقة ويرجع الي البرنامج الرئيسي وهكذا
وبارك الله فيك


الصورة الرمزية باسم ماجد
باسم ماجد
:: مهندس متميز ::
تاريخ التسجيل: Jan 2009
الدولة: Amman-Jordan
المشاركات: 316
نشاط [ باسم ماجد ]
قوة السمعة:
قديم 25-04-2012, 09:22 AM المشاركة 13   
افتراضي


السلام عليكم ورحمة الله وبركاته
أخواني واحبابي في المنتدي الطيب
اريد ان اعمل برنامج يكون يعمل في شئ معين وعند ضغط زر معين يعمل Reset للبيك
..................................................
انا ما اريده هو ان البيك تكون في برنامج معين أو عملية تكرارية عند الضغط علي زر يخرج من هذه العملية ويعمل شئ اخر وهو ايقاف هذه العملية

ارجوا الرد علية لسرعة وبارك الله فيكم اجمعين


والسلام عليكم ورحمة الله وبركاته
أهلا" بك أخي الكريم yac100
و تحياتي للأخ حيدر و مشكور لما يقدمه لهذا المنتدى الحبيب
طبعا" بعد إذنك أخ حيدر أرجو قبول مداخلتي
أخواني واحبابي في المنتدي الطيب
اريد ان اعمل برنامج يكون يعمل في شئ معين وعند ضغط زر معين يعمل Reset للبيك
يمكن عمل ذلك بإستخدام الطرف MCLR:
[IMG][/IMG]
و عند الضغط على الكبسة يعود البرنامج للدالة الرئيسية void main

انا ما اريده هو ان البيك تكون في برنامج معين أو عملية تكرارية عند الضغط علي زر يخرج من هذه العملية ويعمل شئ اخر وهو ايقاف هذه العملية
أما هذا الجزء من السؤال قد أفادنا به الأخ حيدر بارك الله فية
تمنياتي للجميع بالتوفيق


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 25-04-2012, 09:47 AM المشاركة 14   
افتراضي


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


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 25-04-2012, 09:49 AM المشاركة 15   
افتراضي


أهلا" بك أخي الكريم yac100
و تحياتي للأخ حيدر و مشكور لما يقدمه لهذا المنتدى الحبيب
طبعا" بعد إذنك أخ حيدر أرجو قبول مداخلتي

يمكن عمل ذلك بإستخدام الطرف MCLR:
[IMG][/IMG]
و عند الضغط على الكبسة يعود البرنامج للدالة الرئيسية void main


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


الصورة الرمزية باسم ماجد
باسم ماجد
:: مهندس متميز ::
تاريخ التسجيل: Jan 2009
الدولة: Amman-Jordan
المشاركات: 316
نشاط [ باسم ماجد ]
قوة السمعة:
قديم 25-04-2012, 11:05 AM المشاركة 16   
افتراضي


شكرا اخ باسم على المداخلة ...
لكن عملية التصفير بهذه الطريقة لن توقف الكود الرئيسي فقط بل توقف جميع العمليات التي تقدم بها المتحكم و تعيد التشغيل من جدبد و بذلك سنكون فقدنا بعض القيم التي وصل اليها المتحكم ...
أهلاً بك أخ حيدر
نعم صحيح ، لكن هذا كان رد على جزء من سؤال الأخ yac100
شكرا" لك أخ حيدر
تمنياتي لك بالتوفيق



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