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

   

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 26-04-2014, 03:11 PM المشاركة 9   
sun شكرا جزيلا لك أخي كريم



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

اعلانات

sskk77
:: مهندس متميز ::
تاريخ التسجيل: Jan 2005
المشاركات: 711
نشاط [ sskk77 ]
قوة السمعة:
قديم 26-04-2014, 10:34 PM المشاركة 10   
افتراضي


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

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

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

Logic
:: عضو فضي ::
تاريخ التسجيل: Mar 2014
المشاركات: 682
نشاط [ Logic ]
قوة السمعة:
قديم 27-04-2014, 01:58 AM المشاركة 11   
افتراضي


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

أما بالنسبة لمقاطعة التايمر فهي فعالة في تنفيذ برنامج كل فترة زمنية ثابتة
ويمكن ان تكون دقيقة جداً في حال استخدام كرستالة دقيقة مثل 32.768 كيلو هرتز
الا ان التايمر غير فعال في اعطاء المهل لمثل المهام السابقة
بل أن هناك بعض الاجراءات التي تتعارض مع المقاطعات
فعند التحويل من انالوج الى رقمي ربما تكتب سطر او سطرين في السي او البيسك لكني اقول لك انظر الى الكود المصدر الى اسمبلي
لن تجد المهلة باستخدام الماقطعة
أخي العزيز لا نختلف حول ما تعمله nop سواء سمينا هذا العمل مهلة أو زمن تأخير.
وقد رأيت برامج تستخدم العشرات منها للحصول على زمن تأخير يريده المستخدم
كما أني أعرف كذلك ان ملفات الاسمبلي التي يولدها الكومبيلر ميكروسي او أمثاله تتضمن أحيانا nop بطريقة آلية حين الحاجة .
ردودي في الواقع كانت حول هل استخدامها في كود ميكروسي ضروي أم لا ؟
في رأيي يمكن استبدالها بالتعليمة delay() حتى حين يكون المبرمج بالسي بحاجة لاعطاء مهلة للبيك .
وممكن طبعا ان يستخدم{ asm {nop كخيار آخر لو يحب .
أما بالنسبة لاستخدام مقاطعة بدل nop فهذا لم أقله ولا يمكن أن أفكر فيه. المقاطعات ترهق البيك فهو يقوم بعدة عمليات كتخزين آخر تعليمة قبل حدوث المقاطعة وتنفيذ تعليمات برنامج المقاطعة والعودة الى المخزون بعد انتهاء المقاطعة. ..
nop أرحم طبعا
كلامي عن استخدام المقاطعات كان فقط ردا على سؤال أخونا الحبيب حسن هادي محمود البارز هنا:
السلام عليكم
شكرا جزيلا أخي كريم على التوضيح
هل أستخدامها ضروري لاني لاحظ الكثير من البرامج يتم أستخدام هذا الامر
على سبيل مثال
http://www.mikroe.com/click/7seg/

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


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 10-06-2014, 04:27 PM المشاركة 12   
sun


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

أما بالنسبة لمقاطعة التايمر فهي فعالة في تنفيذ برنامج كل فترة زمنية ثابتة
ويمكن ان تكون دقيقة جداً في حال استخدام كرستالة دقيقة مثل 32.768 كيلو هرتز
الا ان التايمر غير فعال في اعطاء المهل لمثل المهام السابقة
بل أن هناك بعض الاجراءات التي تتعارض مع المقاطعات
فعند التحويل من انالوج الى رقمي ربما تكتب سطر او سطرين في السي او البيسك لكني اقول لك انظر الى الكود المصدر الى اسمبلي
لن تجد المهلة باستخدام الماقطعة
أخي العزيز لا نختلف حول ما تعمله nop سواء سمينا هذا العمل مهلة أو زمن تأخير.
وقد رأيت برامج تستخدم العشرات منها للحصول على زمن تأخير يريده المستخدم
كما أني أعرف كذلك ان ملفات الاسمبلي التي يولدها الكومبيلر ميكروسي او أمثاله تتضمن أحيانا nop بطريقة آلية حين الحاجة .
ردودي في الواقع كانت حول هل استخدامها في كود ميكروسي ضروي أم لا ؟
في رأيي يمكن استبدالها بالتعليمة delay() حتى حين يكون المبرمج بالسي بحاجة لاعطاء مهلة للبيك .
وممكن طبعا ان يستخدم{ asm {nop كخيار آخر لو يحب .
أما بالنسبة لاستخدام مقاطعة بدل nop فهذا لم أقله ولا يمكن أن أفكر فيه. المقاطعات ترهق البيك فهو يقوم بعدة عمليات كتخزين آخر تعليمة قبل حدوث المقاطعة وتنفيذ تعليمات برنامج المقاطعة والعودة الى المخزون بعد انتهاء المقاطعة. ..
nop أرحم طبعا
كلامي عن استخدام المقاطعات كان فقط ردا على سؤال أخونا الحبيب حسن هادي محمود البارز هنا:

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


sskk77
:: مهندس متميز ::
تاريخ التسجيل: Jan 2005
المشاركات: 711
نشاط [ sskk77 ]
قوة السمعة:
قديم 10-06-2014, 08:16 PM المشاركة 13   
افتراضي


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



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