تم تطويره بواسطة Philips في الثمانينيات ، أصبح I2C (بدلاً من ذلك I2C) أحد أكثر بروتوكولات الاتصال التسلسلي شيوعًا في مجال الإلكترونيات. تسهل I2C الاتصال بين المكونات الإلكترونية أو الدوائر المتكاملة ، سواء كانت المكونات على نفس PCB أو متصلة بكابل.
ما هو بروتوكول I2C؟
I2C هو بروتوكول اتصال تسلسلي لا يتطلب سوى خطي إشارة. تم تصميمه للتواصل بين الرقائق على لوحة الدوائر المطبوعة (PCB). تم تصميم I2C في الأصل للاتصال بسرعة 100 كيلوبت في الثانية. ومع ذلك ، فقد تم تطوير أوضاع نقل بيانات أسرع على مر السنين لتحقيق سرعات تصل إلى 3.4 ميجابت.
الميزة الرئيسية لـ I2C هي القدرة على الحصول على العديد من المكونات في ناقل اتصال واحد بسلكين فقط ، مما يجعل I2C مثاليًا للتطبيقات البسيطة. تم إنشاء بروتوكول I2C كمعيار رسمي ، مما يسمح بالتوافق مع الإصدارات السابقة بين تطبيقات I2C.
إشارات I2C
يستخدم بروتوكول I2C خطي إشارة ثنائي الاتجاه للتواصل مع الأجهزة الموجودة على ناقل الاتصال. الإشارتان المستخدمتان هما:
- خط البيانات التسلسلي (SDL)
- ساعة البيانات التسلسلية (SDC)
السبب في أن I2C يمكنه استخدام إشارتين فقط للتواصل مع العديد من الأجهزة الطرفية هو كيفية التعامل مع الاتصالات على طول الناقل. يبدأ كل اتصال I2C بعنوان 7 بت (أو 10 بت) يستدعي عنوان الجهاز الطرفي.
يسمح هذا لأجهزة متعددة على ناقل I2C بلعب دور الجهاز الأساسي حسب احتياجات النظام.لمنع تصادم الاتصالات ، يشتمل بروتوكول I2C على إمكانات تحكيم واكتشاف الاصطدام ، مما يسمح بالاتصال السلس على طول الناقل.
فوائد I2C
كبروتوكول اتصال ، يتمتع I2C بالمزايا التالية:
- معدلات نقل البيانات المرنة.
- اتصالات عن بعد أطول من SPI.
- يمكن معالجة كل جهاز في الحافلة بشكل مستقل.
- الأجهزة لها علاقة أساسية / ثانوية بسيطة.
- يتطلب فقط خطي إشارة.
- قادر على التعامل مع العديد من الاتصالات الأولية من خلال توفير التحكيم واكتشاف تصادم الاتصالات.
حدود I2C
مع كل هذه المزايا ، فإن I2C لديها أيضًا بعض القيود التي قد تحتاج إلى التصميم حولها. تشمل أهم قيود I2C ما يلي:
- نظرًا لأن 7 بت فقط (أو 10 بت) متوفرة لعنونة الجهاز ، يمكن للأجهزة الموجودة على نفس الناقل مشاركة نفس العنوان. يمكن لبعض الأجهزة تكوين الأجزاء القليلة الأخيرة من العنوان ، لكن هذا يفرض قيودًا على الأجهزة الموجودة على نفس الناقل.
- يتوفر فقط عدد قليل من سرعات الاتصال المحدودة ، والعديد من الأجهزة لا تدعم الإرسال بسرعات أعلى. مطلوب دعم جزئي لكل سرعة على الحافلة لمنع الأجهزة الأبطأ من التقاط الإرسالات الجزئية التي قد تؤدي إلى حدوث خلل في التشغيل.
- يمكن أن تؤدي الطبيعة المشتركة لناقل I2C إلى تعليق الحافلة بالكامل عند توقف جهاز واحد في الحافلة عن العمل. تدوير الطاقة إلى الحافلة يمكن أن يعيد التشغيل الصحيح.
- نظرًا لأن الأجهزة تحدد سرعة الاتصال الخاصة بها ، يمكن للأجهزة التشغيلية الأبطأ تأخير تشغيل الأجهزة الأسرع.
- I2C تستقطب طاقة أكبر من حافلات الاتصالات التسلسلية الأخرى بسبب طوبولوجيا الصرف المفتوح لخطوط الاتصال.
- قيود ناقل I2C عادةً ما تحد من عدد الأجهزة في الحافلة إلى حوالي اثني عشر.
تطبيقات I2C
I2C هو خيار رائع للتطبيقات التي تتطلب تكلفة منخفضة وتنفيذ بسيط بدلاً من السرعة العالية. على سبيل المثال ، تتضمن الاستخدامات الشائعة لبروتوكول الاتصال I2C ما يلي:
- قراءة ICs ذاكرة معينة.
- الوصول إلى DACs و ADCs.
- إرسال والتحكم في الإجراءات التي يوجهها المستخدم.
- قراءة أجهزة الاستشعار.
- التواصل مع وحدة تحكم دقيقة متعددة.