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

   

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



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

اعلانات

geniusse01
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2008
الدولة: Jordan - Amman
المشاركات: 1,134
نشاط [ geniusse01 ]
قوة السمعة:
قديم 08-09-2010, 10:15 AM المشاركة 10   
افتراضي


السلام عليكم

كيف الحال جميعا ؟؟؟ ان شاء الله يكون الجميع بخير وعافية ...وربنا يتقبل من الجميع الصيام والقيام ويجعلنا من عتقاء شهر رمضان باذن الله ...

ازيك يا عم حيدر ..والله ليك وحشة يا عم ...ايه النور دا كله...ربنا يتقبل ...

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

والطريقة الوحيدة التي اعرفها للحصول على ادق زمن هو باستخدام التايمرات الداخلية للبيك مثل (TIMER 0,TIMER 1) وطريقة البرنامج ان يتم وضع الزر الذي يراد حساب الوقت له مثلا على احد اطراف المقاطعة للبورت B ..ويتم تشغيل التايمر زيرو عند الضغط على الزر ..وعندما يتم ابعاد اليد عن الزر ايضا تتولد مقاطعة وبالتالي يتم حساب الوقت الذي تم فيه الضغط على الزر...

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

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

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 08-09-2010, 10:29 AM المشاركة 11   
افتراضي


اهلا بالزعيم . كيفك يا عم ؟ منور و الله .

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


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 08-09-2010, 10:58 AM المشاركة 12   
افتراضي


اقترح استخدام نفس الكود الذي قدمه الاخوة على ان يكون زمن التاخير 10 ملي .
وبعد انتهاء فترة الضغط نقسم قيمة العداد على 100 فنكون قد حصلنا على زمن بدقة 10 ملي ثانية .


امبراطور2020
:: مهندس ::
تاريخ التسجيل: Apr 2007
المشاركات: 14
نشاط [ امبراطور2020 ]
قوة السمعة:
قديم 13-09-2010, 03:06 AM المشاركة 13   
افتراضي


جزاك الله تعالى كل خير استاذي الفاضل geniusse01
لقد قرأت موضوعك بخصوص الانتريبتس منذ قليل واستفدت منه الكثير الكثير وصححت بعض معلوماتي

أنصح أخي السائل بقرائة الموضوع للاستاذ الكبير geniusse01 حيث يوجد فيه الطريقة الدقيقة لحساب الزمن عن طريق التايمر زيرو والانتربتس وذلك لأن أمر الديلاي لا يعطي القيمة الدقيقة

http://www.qariya.com/vb/showthread.php?t=46338



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