قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الاليقسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots
يستخدم watchdog لايقاظ الميكرو كونترولر من mode sleep
وهذا برنامج صغير لاضاءة واطفاء ليد باستخدام watchdog
list p=16F84A
#include p16F84a.inc
ERRORLEVEL -302
__CONFIG _CP_OFF & _WDT_ON & _PWRTE_OFF & _XT_OSC
;************ Définition des constantes *********************
#DEFINE LED PORTA,0
;***************** programme d'INIT ******************************
INIT
BSF STATUS,RP0
MOVLW B'00000000'
MOVWF TRISB
MOVLW B'00000'
MOVWF TRISA
movlw 0x8D
movwf OPTION_REG
BCF STATUS,RP0
CLRF PORTB
CLRF PORTA
;************************************************* *****
; PROGRAMME PRINCIPAL *
;************************************************* *****
start
bsf LED ; Allumage de la LED
sleep ; mise en sommeil
bcf LED ; extinction de la LED
sleep ; mise en sommeil
goto start ; boucler
ودمتم في رعاية الله وحفظه
شكرا على البرنامج لكن ياريت شرح بسيط لانى لا اعرف من لغة الاسمبلى الا شكلها.
التعديل الأخير تم بواسطة : robota بتاريخ 18-08-2009 الساعة 08:07 AM
كل ما قمت به اني جعلت البيك يقوم باضائة الليد ثم يدخل في sleep mode وبعد نهاية العد للwatchdog يقوم بايقاط البيك ليطبق العملية التي بعده وهي اطفاء الليد
ثم يدخل البيك مرة اخرى في sleep mode وعملت له حلقة وبهذا نلاحظ الليد يضيئ مدة معينة ثم ينطفئ
السلام عليكم, أخي بهذه الطريقة عند أنتهاء عد الwatchdog timer
سيقوم بreset للمايكروكنترولر أي سيعود للتنفيذ من البداية حسب ماأعتقد وبالتالي لن ينفذ bcf LED ; extinction de la LED
sleep ; mise en sommeil
أرجو الرد
في حالة لما يكون البيك EN MODE SLEEP لا يعود للتنفيذ من البداية حتى ولو ضغطت على زر RESET نفسه اقصد حتى ال MCLR لا تعيد البرنامج الى البداية انما توقظ البيك ويذهب الى تطبيق العملية التي بعد SLEEP
و الله يا أخي أنا كنت محبط و في الكثير من الضيق بسبب عدم فهمي لهذا
(كلب الحراسة ... watch DOG) و لكن بكل بساطة و يسر ... جئت أنت لتوضح فائدتة
في كلمات موجزة بليغة .... جزاك الله خير الجزاء ...و للأمام دائما ...
التعديل الأخير تم بواسطة : MYM بتاريخ 11-12-2009 الساعة 04:41 PM
؟؟؟و لكن عزيزي .... هناك أعلام للتايمرات ... فما هو العلم الخاص بة...
اخى الكريم . حدوث reset للكايكروكنترولر هو اوضح علم (flag).
لان ال WDT اذا وصل الى اقصى قيمة يعمل reset للمايكروكنترولر .
اتمنى ان اكون قد فهمتُ ما تعنيه والا فارجو الايضاح ودمتم بخير
الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 05:58 PM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)