آی۲‌سی: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
SadiSheriff (بحث | مشارکت‌ها)
حذف لینک اضافی (به خود این صفحه).
برچسب‌ها: ویرایش همراه ویرایش از برنامهٔ همراه ویرایش با برنامهٔ اندروید
جز ←‏top: تمیزکاری با استفاده از AWB
خط ۴:
{{ویکی‌سازی|تاریخ=نوامبر ۲۰۱۹}}
{{Infobox connector
|name = [[I۲C | I<sup>۲</sup>C]]
|type = [[گذرگاه داده]]
|image = [[Image:I²C bus logo.svg|frameless]]
خط ۴۱:
}}
 
[[پروتکل ارتباطات]] [[I۲C| '''I<sup>۲</sup>C]]''' در سال ۱۹۸۰ توسط شرکت فیلیپس ساخته شد. از ۱۰ اکتبر ۲۰۰۶، هیچ گونه هزینه مجوزی برای اجرای پروتکل [[I۲C | '''I<sup>۲</sup>C]]''' لازم نیست. با این حال، برای به دست آوردن آدرس های Slave [[I۲C | '''I<sup>۲</sup>C]]''' اختصاص داده شده توسط NXP، هزینه لازم است <ref> http://www.nxp.com/documents/application_note/AN10216.pdf </ref>.
[[I۲C | '''I<sup>۲</sup>C]]''' یک قرارداد [[سریال]] برای [[رابط TWI]] ([[رابط دو سیمه]])، اتصال ها کم سرعت مانند ریزکنترلگرها، [[EEPROM | E<sup>۲</sup>PROM]]، [[مبدل سیگنال‌های آنالوگ به دیجیتال]] و [[مبدل دیجیتال به آنالوگ]]، رابط های I/O (خروجی/ورودی) و سایر لوازم جانبی مشابه در سیستم های تعبیه شده است <ref>https://i2c.info</ref>.
 
پروتکل [[I۲C | '''I<sup>۲</sup>C]]''' در واقع ادغام شده از بهترین ویژگی های [[SPI]] و [[UART]] می باشد. توسط [[I۲C | '''I<sup>۲</sup>C]]''' امکان اتصال چند slave به یک master (مانند [[SPI]]) و یا استفاده از چند master برای کنترل یک یا چند slave وجود دارد. این ویژگی زمانی که شما می خواهید از چند ریزکنترلگر برای ارسال داده به یک کارت حافظه و یا نمایش بر روی [[صفحه نمایش کریستال مایع | LCD]] استفاده کنید، بسیار مناسب می باشد.
 
مانند روش [[UART]] در [[I۲C | '''I<sup>۲</sup>C]]''' نیز از دو سیم برای انتقال اطلاعات استفاده می شود.
اکنون، تقریبا در تمامی شرکت های طراحی تراشه به کار گرفته می شود. [[I۲C | '''I<sup>۲</sup>C]]''' یک گذرگاه داده محبوب است زیرا استفاده از آن ساده است، می تواند بیش از یک [[Master]] داشته باشد، فقط سرعت گذرگاه فوقانی تعریف شده است و برای اتصال تقریباً نامحدود دستگاه های [[I۲C | '''I<sup>۲</sup>C]]''' به دو سیم با [[مقاومت بالاکش]] ([[Pull-Up]]) نیاز است. [[I۲C | '''I<sup>۲</sup>C]]''' حتی می تواند از ریزکنترلگرهای آهسته تر با پایه های [[ورودی/خروجی]] برای اهداف کلی استفاده کند، زیرا آن ها علاوه بر توابع خواندن و نوشتن یک بایت، به ایجاد وضعیت صحیح Start و Stop نیاز دارند <ref>https://learn.sparkfun.com/</ref>.
 
هر دستگاه [[Slave]] ،[[I۲C | '''I<sup>۲</sup>C]]''' به یک آدرس نیاز دارد. هر دستگاه [[Slave]] دارای یک آدرس منحصر به فرد است. انتقال از دستگاه اصلی به صورت [[سریال]] است و به بسته های ۸ بیتی تقسیم می شود. همه این نیازمندی های خیلی ساده برای اجرای رابط [[I۲C | '''I<sup>۲</sup>C]]''' حتی با ریزکنترلگرهای ارزان قیمت که هیچ کنترل کننده سخت افزاری ویژه [[I۲C | '''I<sup>۲</sup>C]]''' ندارند، بسیار ساده موفق می سازد.
 
برای ارسال و دریافت دستورها شما فقط به ۲ پایه ورودی/خروجی و چند روال ساده [[I۲C | '''I<sup>۲</sup>C]]''' نیاز دارید.
 
[[I۲C | '''I<sup>۲</sup>C]]''' یک پروتکل ارتباطی سریال می باشد، لذا داده ها به صورت بیت به بیت از طریق خط SDA منتقل خواهند شد.
 
همانند [[SPI]]، پروتکل [[I۲C | '''I<sup>۲</sup>C]]''' نیز به صورت همزمان می باشد، لذا بیت های خروجی با بیت های نمونه توسط سیگنال کلاک همزمان می باشند. سیگنال کلاک توسط master کنترل می شود <ref>http://www.sanatbazar.com/</ref>.
 
== منابع ==