SPI، یک پروتکل ارتباط سریال همزمان که در اصل توسط موتورولا (اکنون Freescale) توسعه یافته است، در سیستمهای تعبیهشده برای اتصال میکروکنترلرها با لوازم جانبی مانند حسگرها، ماژولهای حافظه و نمایشگرها، همهجا حاضر شده است. محبوبیت آن ناشی از انعطافپذیری، قابلیت سرعت بالا و پیادهسازی سختافزاری ساده آن است.
پروتکل SPI استاندارد از چهار خط سیگنال اصلی استفاده میکند:
SPI در یک پیکربندی اصلی-برده کار میکند که در آن اصلی تمام ارتباطات را آغاز میکند. در حالی که از نظر تئوری از ارتباطات دوطرفه کامل پشتیبانی میکند، اکثر برنامههای LCD/OLED از حالت نیمهدوپلکس استفاده میکنند. عملکرد شیفت-رجیستر مانند پروتکل، انتقال دادههای همزمان دوطرفه را امکانپذیر میکند، اگرچه پیادهسازیهای عملی اغلب به فازهای فرمان و داده متوالی نیاز دارند.
کنترلکنندههای نمایشگر معمولاً دو نوع SPI را پیادهسازی میکنند: «SPI 3-سیمه» و «SPI 4-سیمه»، که در درجه اول با رویکردشان برای تمایز دستورات از دادهها متمایز میشوند.
پیکربندی 4-سیمه سنتی شامل موارد زیر است:
این معماری آینهای از کنترلکنندههای رابط موازی است که رجیسترهای فرمان و داده جداگانه را حفظ میکردند و از خط C/D (که گاهی A0 نامیده میشود) برای جابجایی بین آنها استفاده میکردند.
نسخه 3-سیمه سادهشده، خط C/D اختصاصی را حذف میکند، در عوض این اطلاعات را در جریان داده رمزگذاری میکند:
در اینجا، یک بیت اضافی (معمولاً MSB) نشان میدهد که آیا انتقال شامل دستورات (1) یا داده (0) است، که در واقع انتقالهای 9 بیتی را به جای انتقالهای 8 بیتی استاندارد ایجاد میکند.
برخی از کنترلکنندهها از رمزگذاری داده 3-سیمه استفاده میکنند در حالی که از نظر فیزیکی از چهار سیم استفاده میکنند (افزودن MISO برای عملیات خواندن). انواع پیچیدهتر ممکن است یک بیت دهم را برای رمزگذاری عملکرد خواندن/نوشتن ترکیب کنند و ارتباط دوطرفه را از طریق یک خط داده واحد ایجاد کنند.
در حالی که SPI 3-سیمه اتصالات فیزیکی را کاهش میدهد، طول انتقال غیر استاندارد آن میتواند پیادهسازیهای سختافزاری SPI را پیچیده کند. پردازندههای مدرن با کنترلکنندههای SPI انعطافپذیر ممکن است انتقالهای 9 بیتی را در خود جای دهند، اما بسیاری از سیستمهای سنتی، SPI 4-سیمه را سادهتر میدانند.
معماری شیفت-رجیستر مانند SPI آن را برای دستگاههای زنجیرهای مناسب میکند:
این رویکرد سیستمهای چند دستگاهی را ساده میکند اما تأخیری متناسب با طول زنجیره ایجاد میکند و نیاز دارد که همه دستگاهها از زنجیرهسازی پشتیبانی کنند.
تسلط بر پیادهسازیهای SPI برای توسعهدهندگان تعبیهشده که با فناوریهای نمایشگر کار میکنند ضروری است. انتخاب بین SPI 3-سیمه و 4-سیمه به قابلیتهای سختافزاری خاص و الزامات کنترلکننده بستگی دارد. در حالی که 3-سیمه، صرفهجویی در اتصال را ارائه میدهد، 4-سیمه سازگاری را با سختافزار SPI استاندارد حفظ میکند. درک این تفاوتها، ادغام بهینه نمایشگر را در پروژههای تعبیهشده تضمین میکند.