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

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

الصورة الرمزية ابو عبدالله77
ابو عبدالله77
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
المشاركات: 69
نشاط [ ابو عبدالله77 ]
قوة السمعة:0
قديم 27-12-2013, 06:27 PM المشاركة 1   
افتراضي الرجاء الاضافة على هذا الكود Twitter FaceBook Google+



السلام عليكم ورحمة الله وبركاته
احتاج اعدل على هذا الكود هو دخول 5 فولت على
البك من ثلاث مصادر مختلفة والتعديل حتى
لايكون تداخل في حالة وجود اكثر جهد
يعني دائما الافضلية d1 و d2 وd3 اوف
يعني لايعمل اكثر من لليد واحد في كل الاحوال

هذا الكود
كود:
  #define s1 portb=1;
  #define s2 portb=2;
  #define s3 portb=4;

void main()   { cmcon=7;
   TRISB=0;
   TRISA=11111111;
   PORTB=0;

 
    while(1){
  if(porta.f0==1){ s1;delay_ms(200); }
                       else portb=0;
                       
  if(porta.f1==1){ s2 ;;delay_ms(200); }
                       else portb=0;
                       
  if(porta.f2==1){ s3;delay_ms(200); }
                       else portb=0;
  
   }}
صورة الدائرة
[IMG][/IMG]

اعلانات

ahmadazez
:: مهندس جيد ::
تاريخ التسجيل: Mar 2009
المشاركات: 253
نشاط [ ahmadazez ]
قوة السمعة:0
قديم 27-12-2013, 08:03 PM المشاركة 2   
افتراضي


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

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

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 10,061
نشاط [ حيدر علاج حسن ]
قوة السمعة:394
قديم 27-12-2013, 08:26 PM المشاركة 3   
افتراضي


اذا دائما يعمل ليد واحد فلماذا توصل ثلاثه ؟


الصورة الرمزية ابو عبدالله77
ابو عبدالله77
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
المشاركات: 69
نشاط [ ابو عبدالله77 ]
قوة السمعة:0
قديم 28-12-2013, 08:41 AM المشاركة 4   
افتراضي


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


الصورة الرمزية ابو عبدالله77
ابو عبدالله77
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
المشاركات: 69
نشاط [ ابو عبدالله77 ]
قوة السمعة:0
قديم 28-12-2013, 08:43 AM المشاركة 5   
افتراضي


اذا دائما يعمل ليد واحد فلماذا توصل ثلاثه ؟
ا
خي حيدر انا مثلتها بلليد وهي في الحقيقة ريلي مقابل كل لليد


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:135
قديم 28-12-2013, 09:34 AM المشاركة 6   
افتراضي


السلام عليكم ورحمة الله وبركاته
احتاج اعدل على هذا الكود هو دخول 5 فولت على
البك من ثلاث مصادر مختلفة والتعديل حتى
لايكون تداخل في حالة وجود اكثر جهد
يعني دائما الافضلية d1 و d2 وd3 اوف
يعني لايعمل اكثر من لليد واحد في كل الاحوال

هذا الكود
كود:
  #define s1 portb=1;
  #define s2 portb=2;
  #define s3 portb=4;

void main()   { cmcon=7;
   TRISB=0;
   TRISA=11111111;
   PORTB=0;

 
    while(1){
  if(porta.f0==1){ s1;delay_ms(200); }
                       else portb=0;
                       
  if(porta.f1==1){ s2 ;;delay_ms(200); }
                       else portb=0;
                       
  if(porta.f2==1){ s3;delay_ms(200); }
                       else portb=0;
  
   }}
صورة الدائرة
[IMG][/IMG]
السلام عليكم
اخي كريم
1- هل تقصد بأفضليه هو d1 واذا لم يكن موجود فسوف نتحول الى d2 واذا لم يكن موجود سوف نتحول الى d3

2- في حاله d1 غير موجود اكيد و d2 موجوده اكيد سوف بورت b سوف يساوي حسب البرمجه=2 اي سيكون المصدر هو d2 وخلال فتره زمنيه أصبح هناك جهد على d1 هل تريده يتحول الى d1 ام يبقى على d2
ارجو التوضيح والكود بمشيئه الله بسيط بس يحتاج الى توضيح
تحياتي


الصورة الرمزية ابو عبدالله77
ابو عبدالله77
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
المشاركات: 69
نشاط [ ابو عبدالله77 ]
قوة السمعة:0
قديم 28-12-2013, 10:00 AM المشاركة 7   
افتراضي


السلام عليكم
اخي كريم
1- هل تقصد بأفضليه هو d1 واذا لم يكن موجود فسوف نتحول الى d2 واذا لم يكن موجود سوف نتحول الى d3

2- في حاله d1 غير موجود اكيد و d2 موجوده اكيد سوف بورت b سوف يساوي حسب البرمجه=2 اي سيكون المصدر هو d2 وخلال فتره زمنيه أصبح هناك جهد على d1 هل تريده يتحول الى d1 ام يبقى على d2
ارجو التوضيح والكود بمشيئه الله بسيط بس يحتاج الى توضيح
تحياتي

اخ حسن شكرا لك
الافضلية d1 يبقى يعمل حتى لوكانت البقية تعمل
ام اذا d1 لايعمل الافضلية d2
واذا كان d1 و d2 لاتعمل فيعمل d3


ahmadazez
:: مهندس جيد ::
تاريخ التسجيل: Mar 2009
المشاركات: 253
نشاط [ ahmadazez ]
قوة السمعة:0
قديم 28-12-2013, 11:07 AM المشاركة 8   
افتراضي


تفضل اخي البرنامج مع ملف البروتوث للتجريب ولكن لمتحكم ATMEGA 8
اذا اردته بالبيك تستطيع تعديله الكود سهل

http://up.top4top.net/downloadf-top4...ec451-rar.html

إضافة رد

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

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

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


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

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