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

   

yac100
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2007
الدولة: فلسطين - غزة
المشاركات: 140
نشاط [ yac100 ]
قوة السمعة:
قديم 06-04-2012, 10:57 PM المشاركة 9   
افتراضي



بارك الله فيك يا بش مهندس حيدر علاج حسن علي هذا الرد السريع وعلي البرنامج الذي تم كتابته وجعله في ميزان حسناتك
بإذن الله تعالي سيتم تجريب البرنامج وسيتم الرد عليك بالنتائج
والسلام عليكم ورحمة الله وبركاته

اعلانات

yac100
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2007
الدولة: فلسطين - غزة
المشاركات: 140
نشاط [ yac100 ]
قوة السمعة:
قديم 07-04-2012, 01:49 PM المشاركة 10   
افتراضي


بارك الله فيك يا مهندس حيدر علاج حسن علي البرنامج
لكن هل تم شرح ولو عملية زر واحد فقط حتي افهم البرنامج وبارك الله فيك
وهل يمكن استخدام البيك دون BCD فقط باستخدام البيك
ولكن اهم شغلة إن تكرمت علي هي شرح البرنامج
وبارك الله فيك وجعله في ميزان حسناتك

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

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 07-04-2012, 02:10 PM المشاركة 11   
افتراضي


كود:
int i=0;
void main(){
           trisb=0xff;trisc=0;trisd=0;portc=0;portd=0;
           loop:
           i++;delay_ms(25);
           if(i>2000)portd=0;
           if(portb.f0==0){while(portb.f0==0){}portd=portc;portc=1;i=0;}
            if(portb.f1==0){while(portb.f1==0){}portd=portc;portc=2;i=0;}
             if(portb.f2==0){while(portb.f2==0){}portd=portc;portc=3;i=0;}
              if(portb.f3==0){while(portb.f3==0){}portd=portc;portc=4;i=0;}
               if(portb.f4==0){while(portb.f4==0){}portd=portc;portc=5;i=0;}
           goto loop;
           }

1- تم تعريف المتغير I كمتغير صحيح لاستخدامه كعداد للوقت .
2- تعريف المنافذ كمداخل و مخارج .
3- داخل الحلقة التكرارية Loop بدئنا بزيادة I واحد كل مرة ثم التاخير لمدة 25 ملي ثانية .
4- اذا وصل العداد I الى القيمة 2000 فهذا يعني قد تجاوزنا دقيقة و لم نضغط على اي مفتاح فنطلب تصفير المنفذ d .
5- اذا تم الضغط على المفتاح الاول يتوقف البك عن تنفيذ اي شيء حتى نرفع يدنا من المفتاح ( هذه الخاصية تفيدنا في التعامل مع البك لانه سريع جدا و لا نستطيع اللحاق به ) . وما ان نرفع يدنا من المفتاح حتى تنتقل قيمة المنفذ C الى المنفذ D و ياخذ الاول القيمة الجديدة المشروطة مع كل مفتاح في الكود .
6- هذه العملية تتكرر 5 مرات بعدد المفاتيح .
7 - بعدها يتم الذهاب الى عبارة Loop مرة اخرى و تتكرر العملية بالكامل ..

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


yac100
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2007
الدولة: فلسطين - غزة
المشاركات: 140
نشاط [ yac100 ]
قوة السمعة:
قديم 08-04-2012, 12:10 AM المشاركة 12   
افتراضي


كود:
int i=0;
كود:
void main(){ trisb=0xff;trisc=0;trisd=0;portc=0;portd=0; loop: i++;delay_ms(25); if(i>2000)portd=0; if(portb.f0==0){while(portb.f0==0){}portd=portc;portc=1;i=0;} if(portb.f1==0){while(portb.f1==0){}portd=portc;portc=2;i=0;} if(portb.f2==0){while(portb.f2==0){}portd=portc;portc=3;i=0;} if(portb.f3==0){while(portb.f3==0){}portd=portc;portc=4;i=0;} if(portb.f4==0){while(portb.f4==0){}portd=portc;portc=5;i=0;} goto loop; }
1- تم تعريف المتغير I كمتغير صحيح لاستخدامه كعداد للوقت .
2- تعريف المنافذ كمداخل و مخارج .
3- داخل الحلقة التكرارية Loop بدئنا بزيادة I واحد كل مرة ثم التاخير لمدة 25 ملي ثانية .
4- اذا وصل العداد I الى القيمة 2000 فهذا يعني قد تجاوزنا دقيقة و لم نضغط على اي مفتاح فنطلب تصفير المنفذ d .
5- اذا تم الضغط على المفتاح الاول يتوقف البك عن تنفيذ اي شيء حتى نرفع يدنا من المفتاح ( هذه الخاصية تفيدنا في التعامل مع البك لانه سريع جدا و لا نستطيع اللحاق به ) . وما ان نرفع يدنا من المفتاح حتى تنتقل قيمة المنفذ C الى المنفذ D و ياخذ الاول القيمة الجديدة المشروطة مع كل مفتاح في الكود .
6- هذه العملية تتكرر 5 مرات بعدد المفاتيح .
7 - بعدها يتم الذهاب الى عبارة Loop مرة اخرى و تتكرر العملية بالكامل ..

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


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


الشكر لله اخي ...
اتمنى لك التوفيق ...



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