منتديات الالكترونيات العصرية  
yoursite.com page title .

استرجاع كلمة المرور طلب كود تفعيل العضوية تفعيل العضوية
العودة   منتديات الالكترونيات العصرية > منتدى الحاكمات الدقيقة Microcontroller > منتدى آردوينو Arduino

  #1  
قديم 10-01-2018, 03:20 AM
haidar ayad haidar ayad غير متواجد حالياً
عضو نشيط
 
تاريخ التسجيل: Oct 2012
المشاركات: 91
معدل تقييم المستوى: 7
haidar ayad is on a distinguished road
افتراضي مساعدة لحل مشكلة عدم عمل الاردوينو

السلام عليكم
اردت تنفيذ كود الاردوينو بالامثلة الجاهزة، وهو مصباح يعمل عند ضغط المفتاح، كالتالي :
كود:
int ledPin = 13; // choose the pin for the LED
int inPin = 2;   // choose the input pin (for a pushbutton)
int val = 0;     // variable for reading the pin status

void setup() {
  pinMode(ledPin, OUTPUT);  // declare LED as output
  pinMode(inPin, INPUT);    // declare pushbutton as input
}

void loop(){
  val = digitalRead(inPin);  // read input value
  if (val == HIGH) {         // check if the input is HIGH (button released)
   
 digitalWrite(ledPin, HIGH);  // turn LED OFF
delay(300);

  } else {
    digitalWrite(ledPin, LOW);  // turn LED ON
delay(200);
  }
}


الا ان المشكلة عند التنفيذ هي ان البرنامج سينفذ كل ما موجود داخل حلقة الـloop بغض النظر عن الشرطين الموضوعين، يعني النتيجة انه المصباح سينطفئ ويشتغل باستمرار حسب فترة الدلي, واذا نقرت زر الزر فسيتطبق شرط ضغط الزر.

لكن اذا حذفت سطر الاخراج الhigh من كل ال loop فسيبقى المصباح منطفى عند التنفيذ ، واذا ارجعت سطر خرج الhigh ووضعته بأي شرط الاول او الثاني في الloop فستكون النتيجة ان المصبام يلمض اي يشتغل وينطفئ باستمرار ، ما الخلل؟
هل الاردوينو فيه خلل ام ماذا ؟
رد مع اقتباس
  #2  
قديم 11-27-2018, 06:38 PM
Rwad_Abujazia Rwad_Abujazia غير متواجد حالياً
عضو جديد
 
تاريخ التسجيل: Nov 2018
المشاركات: 2
معدل تقييم المستوى: 0
Rwad_Abujazia is on a distinguished road
افتراضي رد: مساعدة لحل مشكلة عدم عمل الاردوينو

اخي الكريم جرب هذا الكود
كود:
int ledPin = 13;  
int inPin = 2;  
int val = 0;
boolean stute=false; 
void setup() {
 pinMode(ledPin, OUTPUT); 
 pinMode(inPin, INPUT); 
} 
void loop()
{ 
val = digitalRead(inPin);  
if (val == HIGH) 
  { 
    stute=~stute;
    }
   digitalWrite(ledPin, stute); 
    delay(300); 
    

 }
رد مع اقتباس
إضافة رد

مواقع النشر (المفضلة)

الكلمات الدلالية (Tags)
اردوينو

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

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة



الساعة الآن 09:00 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
الحقوق محفوظة لمنتديات الاليكترونيات العصرية

Security team

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77