 |
:: عضو فضي ::
تاريخ التسجيل: Apr 2005
المشاركات: 151
|
|
نشاط [ hasanAli ]
قوة السمعة:
|
|
05-06-2006, 06:17 AM
المشاركة 13
|
|
أوامر "برمجيه"
أوامر "برمجيه"- وشيئ من "البرمجه" 1- إمحي مؤقت الحراسه................. تركيبه[أمر]
2- نام .................................. تركيبه[أمر]
قلت: مؤقت حراسه عباره عن دائره مكونه من مقاومه ومكثف . موجوده داخل المتحكم , مبدئيا تستطيع أن تعطينا توقيت 18 ملي ثانيه . مؤقت الحراسه مستقل لا علاقه له بالهزاز وليس مربوط به . بالأحرى لا علاقه له بدورات الساعه .ولا توقيتاتها.
الآن سأشرح لك ما فائدته وكيف يُفعَّل: مؤقت الحراسه عندما تنتهي فترته "18 ملي ثانيه " يحدث عملية "إعادة إنظباط" بالظبط وكأنك ضغطت على مفتاح "طرف إعادة الإنظباط"... كما في الكومبيوتر, في حالات , يكون حاسوبك شغال , وأنت في ويندوس وكل شيء على ما يرام , فجأه تتجمد الفاره , ولا يمكنك بعدها عمل شيء , "يروكب". مفتاح "طرف إعادة الإنظباط" , ينهي البرنامج ثم يعود لتطبيقه من الأول مجددا.
في المتحكمات : سيتوقف المعالج عن تطبيق الأمر حيث هو ويقفز إلى العنوان "صفر" ليطبق أول أمر في برنامجك.
في حالة الحاسوب , أنت رأيت بعينك , أن "الفأره" تجمدت , وحاسوبك "روكب"....لسبب ما "تشويش..إلخ" ...في المتحكم , يمكن أن يكون مشروعك , من ضمن دائره لقياس سرعة الرياح في قمة جبل .... أو ببساطه ....مشروعك لا يحتاج لعناصر خارجيه مرئيه كالشاشه , لتعرف إذا "روكب" أم لا .
في كلا الحالتان, مؤقت الحراسه , هو الصديق الوفي , الذي سيغنيك , عن وجود إنسان قرب مشروعك يراقب إذا "روكب" أو لا , وعن بصاره في الحاله الثانيه.
بإختصار شديد "مؤقت الحراسه يمكن إستعماله كـ " معيد للإنظباط" تلقائي "أوتوماتيكي". كيف؟ سأشرح لك:
هناك يا صديقي , سجل في ذاكرة البرنامج , يدعى "كلمة الإعدادات" مكون من 14 بيت كباقي سجلات ذاكرة البرنامج , لكن بعيدا عن 1024 أمر برنامجنا , تحديدا في العنوان 2007 سادس عشري. "كلمة الإعدادات" سيكون لها شرح خاص, ما أريد منك أن تعرفه اللآن , أنها تكتب , لحظة تسجيل البرنامج"حرقه" وأن البيت الثالث منها أي " بيت , 2 " , إذا وضعناه "واحد منطقي " نكون قد فعلنا مؤقت الحراسه , وصفر منطقي , وكأننا نقول " لا أريد إستعمال مؤقت الحرسه في برنامجي" أي "أبطله".
إذا إتخاذ القرار بتفعيل أو عدم تفعيل مؤقت الحراسه , يتم لحظة "حرق البرنامج" , فإذا فعلناه لا توجد طريقه لإيقافه.
كيف يمكن إستعماله كـ " معيد للإنظباط" تلقائي ؟
أولا : أن نكون قد فعَلناه.
ثانيا : أن ندخل في برنامجنا , مستحسن في الأوامر الأولى : الأمر " إمحي مؤقت الحراسه"
إمحي مؤقت الحراسه
هذا كل شيء.
الأمر " إمحي مؤقت الحراسه" يعيد مؤقت الحراسه إلى نقطة البدايه. فإذا كان قد وصل لـ 6 أو 7 ميلي ثانيه . سيعيده للصفر.
لأصف لك ما سيحصل في حال " روكب" المتحكم , مهما كان برنامجك طويلا , فلن يتعدى الألف وأربعه وعشرين أمر ..... متفقون على ذلك ..... إذا كانت دورة ساعتك "ميكرو ثانيه" يعني تستعمل كريستال "4 ميغا هيرتس" .... لكي يطبق المعالج كل أوامر برنامجك بحاجه لـ " 1024 " ميكرو ثانيه أي مايقارب ملي ثانيه واحده .
صاحبنا مؤقت الحراسه بحاجه لـ 18 ميلي ثانيه , ليحدث إعادة إنظباط , وبرنامجك لا يتعدى الميلي ثانيه , ويتضمن الأمر الذي يرجع مؤقت الحراسه إلى نقطة البدايه , معناه لن يصل للـ 18 ميلي ثانيه . المطلوبه , ولن يحدث إعادة إنظباط طالما البرنامج شغال , وكل شيء على ما يرام .
إفترض "روكب" برنامجك , مؤقت الحراسه مستقل وسيبقى شغالا , وبما أن الأمر الذي يعيده للصفر لن يقرأ , فبعد مرور 18 ملي ثانيه من "روكبته" ستحصل عملية " إعادة إنظباط تلقائيه" , بفضل مؤقت الحراسه.
ما رأيك .... أسرع من إرسال صديق لك لقمة الجبل , ليعيد إنظباطه.
هذه هي الوظيفه الأولى لمؤقت الحراسه ....... الوظيفه الثانيه يستيقض المتحكم وسأشرحه مع الأمر "نام".
األأمر" نام "
2- نام .................................. تركيبه[أمر]
نام
الأمر " نام" يدخل المتحكم في حالة " أقل إستهلاك للتيار" .... سيتوقف عمل الهزاز , ومعه دورات الساعه, وبطبيعة الحال المعالج عن تطبيق أي أمر. صاحبنا نام ....
ما يفعله الأمر"نام" قبل الدخول في حالة النوم.
يزيد على عنوان الأمر واحد ويضعه في ذاكرة العوده, إذا الأمر الذي سيطبق بعد الإستيقاظ , هو الأمر الذي يلي "نام" مباشرة.
كذلك سيصفر مؤقت الحراسه.
طيب , إذا كان مؤقت الحراسه مفعلا, وبعد مرور فترته "18 " ميلي ثانيه , سيستيقظ المتحكم , ليكمل تطبيق البرنامج إبتداءا من الأمر الذي يلي أمر"نام" . لاحظ هنا لا توجد حالة إعادة إنظباط , بل متابعه للبرنامج.
هل مؤقت الحراسه هو الوحيد الذي يمكنه إستيقاظ المعالج من النوم ؟ ...لا ..... بل عدد من المقاطعات التي سأشرحها لاحقا.... المهم أن المقاطعات تذهب بالمعالج إلى مؤشر مقاطعه إلى العنوان أربعه, هنا في حالة "النوم" ... المقاطعات تستيقظه فيطبق الأمر الذي يلي أمر "نام" وبعدها يذهب إلى مؤشر مقاطعه.
من ما سبق , حسن علي ينصحك , أو خذها كقاعده ذهبيه, إذا أردت إستعمال الأمر نام في برنامجك , أسبقه بالأمر , "إمحي مؤقت الحراسه" , وألحقه بالأمر "لا عمل". على الشكل التالي:
إمحي مؤقت الحراسه
نام
لا عمل
في أحد الأيام , كنت أتحدث مع صديق , حول الأمر "نام" وأن إستهلاك الطاقه فيه قليل , وممكن أن تدوم البطاريه أكثر, فقال , كلهن 18 ميلي ثانيه , ما ستوفره ؟, فبعد أن إستطعت الإمتلاك من الضحك . حسبتها لبرنامجه , فهو يعمل بكافة طاقته 59 ميكرو ثانيه وينام 18 ميلي ثانيه,.......الـ 59 ميكرو تساوي 0.059 ملي, الآن هذا التحول يحدث في الدقيقه " 60000÷ 18.059=3322" مره . منهم بطاقه كامله: 3322×0.059= تقريبا 160 ميلي ثانيه في الدقيقه
في الساعه : 60×160 ميلي= 9600 ملي أي 9.6 ثانيه .
في اليوم : 24×9.6ثانيه= 403 ثواني أي ما يقارب الست دقائق وشيء دعها سبعه.
ما رأيك في اليوم يعمل بكامل طاقته 7 دقائق , والباقي بحالة "إستهلاك منخفظ " هل سيطول عمر البطاريه , بالتأكيد نعم .
3- لا عمل .......................... تركيبه[أمر]
هذا الأمر بواسطته المعالج لا يفعل شيء , لكن مجرد قرائته , تستهلك دورة ساعه واحده.
|