تعلم برمجة الأردوينو : ما هي بروتوكولات التواصل الشائعة Communication protocols I2C SPI UART

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ก.ค. 2024
  • قناتي على التلغرام.لتحميل المخططات ولتبادل الافكار في كل ما يخص البرمجة
    t.me/+h93CaMzQPf9jMTg0
    00:00 مقدمة عن ماهية بروتوكولات التواصل
    00:58 بروتوكول التواصل I2C وامثلة تطبيقية لاكواد برمجية
    05:31 بروتوكول التواصل SPI
    07:15 بروتوكول التواصل UART
    في هذا الفيديو، سنتحدث عن بروتوكولات التواصل للأردوينو. تعد البروتوكولات أدوات حاسمة لنقل البيانات والتواصل بين مكونات الأردوينو والأجهزة الأخرى. دعونا نستعرض بعض البروتوكولات الشائعة:
    بروتوكول التسلسل المتسلسل (Serial Protocol): يعتبر بروتوكول التسلسل المتسلسل من أبسط البروتوكولات وأكثرها استخدامًا. يتم استخدام مخرج الـSerial في الأردوينو لتوصيله بجهاز الكمبيوتر أو أجهزة أخرى، ويمكن للأردوينو إرسال واستقبال البيانات عبر هذا البروتوكول.
    بروتوكول I2C: يعتبر بروتوكول I2C أحد البروتوكولات القوية والمستخدمة بشكل واسع في الأردوينو. يتيح هذا البروتوكول توصيل العديد من الأجهزة ببعضها البعض باستخدام عنوان فريد لكل جهاز، ويتميز بفاعلية عالية في استخدام الأسلاك.
    بروتوكول SPI: يعتبر بروتوكول SPI من بروتوكولات التواصل السريعة جدًا والمستخدمة في الأردوينو. يستخدم هذا البروتوكول مدخلات ومخارج محددة لنقل البيانات بين الأجهزة المتصلة، ويمكن تحقيق نقل بيانات ثنائي الاتجاه بسرعة عالية
    بروتوكول UART: يستخدم بروتوكول UART في الأردوينو لتوصيل الأجهزة المختلفة. يتميز هذا البروتوكول بتوفير قناة اتصال بسيطة تستخدم سلكين لنقل البيانات بين الأجهزة، ويعمل بنظام التسلسل والتوقيت لتنظيم البيانات.
    بالإضافة إلى هذه البروتوكولات الشائعة، يوجد المزيد من البروتوكولات مثل بروتوكولات الإنترنت (TCP/IP) وبروتوكولات الاتصال اللاسلكي مثل بلوتوث وواي فاي.
    في هذا الفيديو، سنستعرض أمثلة عملية لاستخدام هذه البروتوكولات في مشاريع الأردوينو، بالإضافة إلى شرح طرق الاتصال وتوصيل الأجهزة. ستتعلم كيفية استخدام تلك البروتوكولات لنقل البيانات والتحكم في المكونات المختلفة.

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

  • @pro-creativity4471
    @pro-creativity4471  ปีที่แล้ว

    // i2c_scanner
    //
    // Version 1
    // This program (or code that looks like it)
    // can be found in many places.
    // For example on the Arduino.cc forum.
    // The original author is not known.
    // Version 2, Juni 2012, Using Arduino 1.0.1
    // Adapted to be as simple as possible by Arduino.cc user Krodal
    // Version 3, Feb 26 2013
    // V3 by louarnold
    // Version 4, March 3, 2013, Using Arduino 1.0.3
    // by Arduino.cc user Krodal.
    // Changes by louarnold removed.
    // Scanning addresses changed from 0...127 to 1...119,
    // according to the i2c scanner by Nick Gammon
    // www.gammon.com.au/forum/?id=10896
    // Version 5, March 28, 2013
    // As version 4, but address scans now to 127.
    // A sensor seems to use address 120.
    // Version 6, November 27, 2015.
    // Added waiting for the Leonardo serial communication.
    //
    //
    // This sketch tests the standard 7-bit addresses
    // Devices with higher bit address might not be seen properly.
    //
    #include
    void setup() {
    Wire.begin();
    Serial.begin(9600);
    while (!Serial); // Leonardo: wait for Serial Monitor
    Serial.println("
    I2C Scanner");
    }
    void loop() {
    int nDevices = 0;
    Serial.println("Scanning...");
    for (byte address = 1; address < 127; ++address) {
    // The i2c_scanner uses the return value of
    // the Wire.endTransmission to see if
    // a device did acknowledge to the address.
    Wire.beginTransmission(address);
    byte error = Wire.endTransmission();
    if (error == 0) {
    Serial.print("I2C device found at address 0x");
    if (address < 16) {
    Serial.print("0");
    }
    Serial.print(address, HEX);
    Serial.println(" !");
    ++nDevices;
    } else if (error == 4) {
    Serial.print("Unknown error at address 0x");
    if (address < 16) {
    Serial.print("0");
    }
    Serial.println(address, HEX);
    }
    }
    if (nDevices == 0) {
    Serial.println("No I2C devices found
    ");
    } else {
    Serial.println("done
    ");
    }
    delay(5000); // Wait 5 seconds for next scan
    }

  • @abdoabdo-fr1gy
    @abdoabdo-fr1gy 7 หลายเดือนก่อน +1

    احسنت..تحياتى من مصر❤

  • @Alisachit617
    @Alisachit617 9 หลายเดือนก่อน

    شرح عملاق
    ابدعت

  • @rabahchouihi5467
    @rabahchouihi5467 9 หลายเดือนก่อน +1

    خير كلام ماقل ومادل شرحك مبسط وممتاز جزاك الله خيرا ❤

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

    Merci

  • @user-so5uo1xx5t
    @user-so5uo1xx5t ปีที่แล้ว +1

    مشكور اخي الكريم كثيرا

  • @user-ib3zu9tg8d
    @user-ib3zu9tg8d 7 หลายเดือนก่อน

    كيف ممكن تعمل مشروع بروتوكول اتصال بمتحكم غير الاردوينو