I۲C

از ویکی‌پدیا، دانشنامهٔ آزاد
I۲C
I²C bus logo.svg
نوع گذرگاه داده
طراح فیلیپس امروزه به عنوان ان‌ایکس‌پی شناخته می شود.
تاریخ طراحی ۱۹۸۲؛ ۳۸ سال پیش (۱۹۸۲)
سیگنال داده Open-collector or Open-drain
عرض خط داده SDA + خط کلاک SCL
Bitrate ۰/۱ / ۰/۴ / ۱/۰ / ۳/۴ / ۵/۰ Mbit/s
(به حالت کاری بستگی دارد)
پروتکل سریال و دوطرفه (مخابرات)

پروتکل ارتباطات I۲C در سال ۱۹۸۰ توسط شرکت فیلیپس ساخته شد. از ۱۰ اکتبر ۲۰۰۶، هیچ گونه هزینه مجوزی برای اجرای پروتکل I۲C لازم نیست. با این حال، برای به دست آوردن آدرس های Slave I۲C اختصاص داده شده توسط NXP، هزینه لازم است [۱]. I۲C یک قرارداد سریال برای رابط TWI (رابط دو سیمه)، اتصال ها کم سرعت مانند ریزکنترلگرها، E۲PROM، مبدل سیگنال‌های آنالوگ به دیجیتال و مبدل دیجیتال به آنالوگ، رابط های I/O (خروجی/ورودی) و سایر لوازم جانبی مشابه در سیستم های تعبیه شده است [۲].

پروتکل I۲C در واقع ادغام شده از بهترین ویژگی های SPI و UART می باشد. توسط I۲C امکان اتصال چند slave به یک master (مانند SPI) و یا استفاده از چند master برای کنترل یک یا چند slave وجود دارد. این ویژگی زمانی که شما می خواهید از چند ریزکنترلگر برای ارسال داده به یک کارت حافظه و یا نمایش بر روی LCD استفاده کنید، بسیار مناسب می باشد.

مانند روش UART در I۲C نیز از دو سیم برای انتقال اطلاعات استفاده می شود. اکنون، تقریبا در تمامی شرکت های طراحی تراشه به کار گرفته می شود. I۲C یک گذرگاه داده محبوب است زیرا استفاده از آن ساده است، می تواند بیش از یک Master داشته باشد، فقط سرعت گذرگاه فوقانی تعریف شده است و برای اتصال تقریباً نامحدود دستگاه های I۲C به دو سیم با مقاومت بالاکش (Pull-Up) نیاز است. I۲C حتی می تواند از ریزکنترلگرهای آهسته تر با پایه های ورودی/خروجی برای اهداف کلی استفاده کند، زیرا آن ها علاوه بر توابع خواندن و نوشتن یک بایت، به ایجاد وضعیت صحیح Start و Stop نیاز دارند [۳].

هر دستگاه Slave ،I۲C به یک آدرس نیاز دارد. هر دستگاه Slave دارای یک آدرس منحصر به فرد است. انتقال از دستگاه اصلی به صورت سریال است و به بسته های ۸ بیتی تقسیم می شود. همه این نیازمندی های خیلی ساده برای اجرای رابط I۲C حتی با ریزکنترلگرهای ارزان قیمت که هیچ کنترل کننده سخت افزاری ویژه I۲C ندارند، بسیار ساده موفق می سازد.

برای ارسال و دریافت دستورها شما فقط به ۲ پایه ورودی/خروجی و چند روال ساده I۲C نیاز دارید.

I۲C یک پروتکل ارتباطی سریال می باشد، لذا داده ها به صورت بیت به بیت از طریق خط SDA منتقل خواهند شد.

همانند SPI، پروتکل I۲C نیز به صورت همزمان می باشد، لذا بیت های خروجی با بیت های نمونه توسط سیگنال کلاک همزمان می باشند. سیگنال کلاک توسط master کنترل می شود [۴].

منابع[ویرایش]

پیوند به بیرون[ویرایش]