6- أردوينو: Serial.read - لقراءة البيانات

แชร์
ฝัง
  • เผยแพร่เมื่อ 4 ม.ค. 2025

ความคิดเห็น •

  • @mahmoudbaaqeil
    @mahmoudbaaqeil 4 ปีที่แล้ว

    كفيت و وفيت جزاك الله خير

  • @tamerewimer6483
    @tamerewimer6483 10 ปีที่แล้ว

    السيد ياسر المحترم ... إسلوب شرحك رائع جدا

  • @hudahashim2341
    @hudahashim2341 9 ปีที่แล้ว

    السيد ياسر اسلوبك جدا ممتاز بالشرح ياريت لو تستمر

  • @ahmadahmad-qj9cx
    @ahmadahmad-qj9cx 11 ปีที่แล้ว

    والله انك مبدع شرح جدا جميل وياليت تفيدنا بعد عن دروس الاردينو وشكرا لك

  • @rusulaltaie1040
    @rusulaltaie1040 2 ปีที่แล้ว

    استاذ ياسر شرحك جميل جدا واكثر من رائع ، لكن كيف يمكن قراءة ملف نصي فيه مجموعة من الحروف في الاردوينو. شكرا لك

  • @yassineyassine4979
    @yassineyassine4979 8 ปีที่แล้ว

    مبدع الله يحفظك

  • @ftyufutf4015
    @ftyufutf4015 9 ปีที่แล้ว

    اخي كتبت نفس الكود لكن يطلع غلط دوخني كثير

    • @Et8an
      @Et8an  9 ปีที่แล้ว

      +Ftyu Futf
      أرجو كتابة رسالة الخطأ هنا أو التقاط صورة لها حتى أتمكن من مساعدتك يا غالي

    • @ftyufutf4015
      @ftyufutf4015 9 ปีที่แล้ว

      بارك الله بك اخي لقد تمكنت من ايجاد الخطأ لكن بعد معاناة تسلم يا اخي على اهتمامك

    • @ftyufutf4015
      @ftyufutf4015 9 ปีที่แล้ว

      اخي ممكن مساعدتك اخي اريد اشغل كودين كود steepmotor وكود led فلاش لكن كيف اجعل الكودين يعملون بدون توقف المشكله عندما اشغل الكود يعمل الليد ومن ثم يعمل الماتور وعندما يكتمل كود الماتور بعدئذ يعمل الليد اي متسلسل
      #include
      Servo myservo; // create servo object to control a servo
      // twelve servo objects can be created on most boards
      int led=13;
      int pos = 0; // variable to store the servo position
      void setup() {
      myservo.attach(9);
      pinMode(led,OUTPUT);// attaches the servo on pin 9 to the servo object
      }
      void loop() {
      digitalWrite(led,HIGH);
      delay(500);
      digitalWrite(led,LOW);
      delay(500);
      for (pos = 0; pos = 0; pos -= 1) { // goes from 180 degrees to 0 degrees
      myservo.write(pos); // tell servo to go to position in variable 'pos'
      delay(15); // waits 15ms for the servo to reach the position
      }
      }

    • @Et8an
      @Et8an  9 ปีที่แล้ว

      +Ftyu Futf
      الجزء التالي من الكود يقوم بتشغيل وإطفاء ليد:
      digitalWrite(led,HIGH);
      delay(500);
      digitalWrite(led,LOW);
      delay(500);
      بينما الجزء التالي يقوم بتحريك المحرك:
      for (pos = 0; pos = 0; pos -= 1) { // goes from 180 degrees to 0 degrees
      myservo.write(pos); // tell servo to go to position in variable 'pos'
      delay(15); // waits 15ms for the servo to reach the position
      }
      سؤالك هو كيف تقوم بتشغيل الإثنين مع بعض في آن واحد. حتى تستطيع عمل ذلك لابد من تجنب إستخدام دالة
      delay
      وكذلك
      for loop
      حيث أنها تقوم بالاستحواذ على التحكم بشكل كامل وهو ما يسمى بـ
      blocking
      فعلى سبيل المثال، عندما تقوم بإستدعاء:
      delay(500)
      سوف يقوم الأردوينو بالانتظار لمدة نصف ثانية ولن يفعل شيء آخر.
      في المقابل يمكنك عمل طريقة أخرى تكون
      non-blocking
      حيث تقوم بالتأكد إذا ما تم تجاوز نصف ثانية أو لا بشكل دوري
      لتحقيق ذلك في الأردوينو يمكنك إستخدام مكتبة
      Metro
      وهنا مثال لكيفية إستخدامها:
      github.com/thomasfredericks/Metro-Arduino-Wiring/blob/master/Metro/examples/blinking/blinking.ino

    • @ftyufutf4015
      @ftyufutf4015 9 ปีที่แล้ว

      اخي بارك الله بك اخي احتمل جهلي عليك لكن وجدت صعوبه بالفهم ممكن تكتب لي الكود حتى افهم اكثر جزاك الله خير وان الله في عون العبد ما دام العبد في عون اخي . اخي انا من العراق وهنا نجد صعوبه في ايجاد المعلومه اعتمد على الله ثم عليك

  • @Ahmed_Elsaadany
    @Ahmed_Elsaadany 11 ปีที่แล้ว +1

    الفقره الاولى غلط لان الحرف = 1 Bit وليس 1 Byte , والبايت = 8 بت :)

    • @Moni7amody
      @Moni7amody 10 ปีที่แล้ว

      :) كلامك انت اللي غلط
      الحرف 8 بت 0 او 1