أخي Nighto : أهلا ومرحبا بك في هذه الدورة
وأتمنى لك التوفيق في مشروعك وفي رحلة تعلمك ..
بالنسبة للكود الذي كتبته يوجد خطأين منطقيين ( وليس خطأ في طريقة كتابة الكود) ..
كود:
for(S=0;S<2;S++)
{PORTB=0B11111111;
PORTB=~PORTB;delay_ms(700);}
الآن أنت أمرت البك بأن يضيء جميع الليدات بكتابتك للأمر
وفعلا سيطيع أوامرك وسيضيء الليدات بعد ذلك مباشرة كتبت له الأمر الذي سيطفئ جميع الليدات وهو
وفعلاً سيطفئ الليدات جميعا ثم ينتظر 700 ملي ثانية ثم يعيد ذلك من جديد ؟؟
لعلك تتسائل وتقول ولكن هذا لم يحدث يا أخي أحمد ؟؟!!!!
فعلا عند تشغيلك للبرنامج فستلاحظ كأن البرنامج لم ينفذ جملة for أي أنه لم يضيء الليدات ويطفئها بعد ذلك ...
إذن ما هي المشكلة ؟؟
المشكلة أخي الكريم أن هناك نقطة هامة يجب ان تنتبه إليها وهي أن البك ينفذ الأوامر بسرعة رهيبة جدا (بالملي ثانية وأحيانا بالمايكرو ثانية) .. فعندما تأمره أن يضيء جميع الليدات عن طريق الأمر PORTB=0B11111111 فسينفذ هذا الأمر بسرعة وستضيئ جميع الليدات .. ثم ينفذ الأمر التالي بسرعة وهو الأمر الذي سيطفئ جميع الليدات PORTB=~PORTB .. وبالتالي لن تلاحظ عينك إضاءة الليدات لأنه نفذ الأمرين بسرعة وراء بعض فأنت جعلته يضيء الليدات ثم يطفئها دون أن ينتظر لمدة معينة بين تنفيذ الأمرين..
كل هذا سينفذ في غاية السرعة لذلك كان يجب عليك أن تجعله بعد أن يضيء الليدات أن ينتظر ثم يطفئ الليدات ثم ينتظر ليتسنى لك رؤية ما يحدث .. وذلك بأن تكتب الكود التالي
كود:
for(S=0;S<2;S++)
{PORTB=0B11111111;
delay_ms(700);
PORTB=~PORTB;delay_ms(700);}
انتبه للأمر الذي تم إضافته (الذي باللون الأزرق)
ولقد شرحت هذه المشكلة في أحد الدروس ..
بالنسبة لجملة FOR الثانية فهي نفس المشكلة التي في الأولى فيجب عليك أن تضع الأمر الذي يجعله ينتظر كما يلي
كود:
for(S=0;S<2;S++)
{portb=0b10101010;
delay_ms(650);
portb=~portb;delay_ms(650);}
جرب الكود الجديد وأخبرني بالنتيجة ..
===============================================
ه وفى حاجة نسيتها فى الكتاب A4 يفضل تكون مدخل وليس مخرج يعنى ممكن تكون مخرج فى حين ان لما بعمل A4 مخرج مبتشتغلش بتبقى مدخل دائما قبل مقرأ السطر ده فى الكتاب كنت حتجنن منها بس لغيت اللعب على A كلها ونقلت على B الطيبه اللى كل بتتاتها شغاله زى الفل
|
لذلك ذكرت في الدروس أنه يفضل عدم جعل A4 دخل وليس خرج .. وسأشرح ذلك بالتفصيل فيما بعد إن شاء الله .
===============================================
ولكن بالنسبه للمبرمجه فى اول صحفه هلى يمكن ياخى ان تقوم بالتعديل عليها وذلك بوضع حامل 18 طرف بدلاً من 40 طرف وازالة الوصلات الزائده
لانه اكبر عدد متوفر هنا هو 18 طرف مع التوضيح كيفية وصلها
|
أخي الكريم المبرمجة هذه (جهاز البرمجة) تصلح للأنواع ذو 18 طرف وذو 28 وذو 40 طرف تصلح للجميع فقط يجب تركيب الـ pic بالشكل الصحيح ...
===============================================
اسف على الاطاله لكنى انضممت الى الدوره متأخر قليلا اسف مره اخرى على التعطيل
|
أهلا ومرحبا بك وبالجميع في أي وقت .. وإذا استشكل عليك أي أمر لا تتردد في السؤال فالهدف من هذه الدورة هو نشر العلم للجميع .. ومرحبا بالجميع أيا كان الوقت الذي اطلعوا فيه على هذه الدورة .
===============================================
وفقنا الله جميعا لما يحب ويرضى ورزقنا وإياكم العلم النافع
والسلام عليكم ورحمة الله وبركاته