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

أدوات الموضوع

abban270
:: مهندس متواجد ::
تاريخ التسجيل: Jul 2009
المشاركات: 89
نشاط [ abban270 ]
قوة السمعة:0
قديم 10-04-2014, 03:08 PM المشاركة 1   
افتراضي مساعدة في صنع زر واحد يقوم بعدة وظائف Twitter FaceBook Google+



السلام عليكم
أرجو المساعدة في صنع برنامج عن طريق الميكروسي
لأستطيع إضاءة الليد على 3 مراحل
عندما أضغط على الزر BP1
الليد يضيء ويطفئء كل 1 ثانية
عندما أعيد الضغط على الزر BP1
نفس الليد يضيء ويطفئء كل 3 ثانية
وعندما أعيد الضغط على الزر BP1
نفس الليد يضيء ويطفئء كل 5 ثانية
وتستمر العملية هكذا


شكرا لكل من يساعدنا

اعلانات

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:136
قديم 10-04-2014, 03:20 PM المشاركة 2   
افتراضي


السلام عليكم
أرجو المساعدة في صنع برنامج عن طريق الميكروسي
لأستطيع إضاءة الليد على 3 مراحل
عندما أضغط على الزر BP1
الليد يضيء ويطفئء كل 1 ثانية
عندما أعيد الضغط على الزر BP1
نفس الليد يضيء ويطفئء كل 3 ثانية
وعندما أعيد الضغط على الزر BP1
نفس الليد يضيء ويطفئء كل 5 ثانية
وتستمر العملية هكذا


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

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

abban270
:: مهندس متواجد ::
تاريخ التسجيل: Jul 2009
المشاركات: 89
نشاط [ abban270 ]
قوة السمعة:0
قديم 10-04-2014, 03:25 PM المشاركة 3   
افتراضي


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

إدا ارد أرسل لك الكود الذي بدأت فيه
إلا أنه يعمل لمرة واحدة فقط


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:136
قديم 10-04-2014, 04:14 PM المشاركة 4   
افتراضي


وتستمر العملية هكذا
أقصد بها Loop

إدا ارد أرسل لك الكود الذي بدأت فيه
إلا أنه يعمل لمرة واحدة فقط
أوكي اخي أعطني كود وملف محاكاه وسأقوم بالتعديل عليه


abban270
:: مهندس متواجد ::
تاريخ التسجيل: Jul 2009
المشاركات: 89
نشاط [ abban270 ]
قوة السمعة:0
قديم 10-04-2014, 04:32 PM المشاركة 5   
افتراضي


كود:
void main() {
int x;
TRISB=0XFF;     // initialisation du port B en entrée
TRISC=0;        //initialisation du port C en sortie
ADCON1=0X06;
PORTC=0;
while(1){
  if  (RB4_bit==0)
 {   delay_ms (10);
 x=x+1;
if (RB4_bit==1)
 {
if (x=1)
{ portc= ~portc; delay_ms (100);portc= ~portc; }
if (x=2 )
{ portc= ~portc; delay_ms (300); portc= ~portc;  }
if (x=3 )
{ portc= ~portc; delay_ms (500); portc= ~portc;  }
  }
  }
  }
  }
ملف المحاكاة
http://www.gulfup.com/?SGDPip


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:136
قديم 10-04-2014, 05:15 PM المشاركة 6   
افتراضي


كود:
void main() {
int x;
TRISB=0XFF;     // initialisation du port B en entrée
TRISC=0;        //initialisation du port C en sortie
ADCON1=0X06;
PORTC=0;
while(1){
  if  (RB4_bit==0)
 {   delay_ms (10);
 x=x+1;
if (RB4_bit==1)
 {
if (x=1)
{ portc= ~portc; delay_ms (100);portc= ~portc; }
if (x=2 )
{ portc= ~portc; delay_ms (300); portc= ~portc;  }
if (x=3 )
{ portc= ~portc; delay_ms (500); portc= ~portc;  }
  }
  }
  }
  }
ملف المحاكاة
http://www.gulfup.com/?SGDPip
السلام عليكم
تفضل اخي هذا أحد الحلول
كود:
char  x  ;
unsigned int k;

void check_switch()
{
  delay_ms(10);
  while( RB4_bit==0 );
  delay_ms(10);
  x++;
 if(x==4)x=1;
}


void main() 
{

 TRISB=0XFF;     // initialisation du port B en entrée
 TRISC=0;        //initialisation du port C en sortie
 ADCON1=0X06;
 PORTC=0;
while(1){
           if(x==0 && RB4_bit==0 )check_switch();// start value

           else if (x==1)
                     {
                      portc=~portc;
                      for(k=0;k<100;k++) // 1 second
                                  {
                                   delay_ms(10);
                                   if(RB4_bit==0)check_switch();
                                  }
                      
                    }
           else if (x==2)
                     {
                      portc=~portc;
                      for(k=0;k<300;k++)  // 3 second
                                  {
                                   delay_ms(10);
                                   if(RB4_bit==0)check_switch();
                                  }

                    }
            else if (x==3)
                     {
                      portc=~portc;
                      for(k=0;k<500;k++)  // 5 second
                                  {
                                   delay_ms(10);
                                   if(RB4_bit==0)check_switch();
                                  }

                    }

       }
  }
لماذا لم يعمل معاك ؟
اولا يوجد خطأ في كتابه الشرط if لازم تكتب علامه مساواه == وليس =
2- طالما يوجد زمن تأخيري كبير فمايكرو سيكون مشغول بتفيذ هذا الزمن يجب علينا أختبار شرط سويج ضمن فتره زمنيه لكي يقوم بالتنفيذ اوامر بشكل صحيح وهذا يعني كل 10 ملي ثانيه بختبر سويج هل تم الضغط عليه ام لا


abban270
:: مهندس متواجد ::
تاريخ التسجيل: Jul 2009
المشاركات: 89
نشاط [ abban270 ]
قوة السمعة:0
قديم 10-04-2014, 06:38 PM المشاركة 7   
افتراضي


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


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


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

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


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

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025