آموزش آردوینوالکترونیک

پروتکل ارتباطی SPI چیست؟

پروتکل چیست؟

آیا تا به حال فکر کرده اید هنگامی که یک میکروکنترلر را به سنسور، صفحه نمایش یا دیگر ماژول وصل می کنید، چگونه دو دستگاه با یکدیگر ارتباط برقرار میکنند؟ آنها دقیقا چه چه چیزی را انتقال میدهند؟
ارتباط بین دستگاه های الکترونیکی مانند ارتباط بین انسان ها است. هر دو طرف باید زبان یکسان صحبت کنند. در الکترونیک، این زبان ها پروتکل های ارتباطی نامیده می شوند. خوشبختانه برای استفاده آسان و کاربردی از دنیای الکترونیک، پروتکل های از قبل تعریف و تدوین شده اند . در این سری مقالات، ما مبانی سه پروتکل رایج را مطرح خواهیم کرد: رابط (SPI)، مدار (I2C) و ارتباطی (UART) انجام می شود. ابتدا، ما با برخی از مفاهیم پایه در ارتباطات الکترونیکی شروع می کنیم، سپس با جزئیات توضیح می دهیم که SPI چگونه کار می کند. در مقاله بعدی، ما درباره ارتباط UART بحث خواهیم کرد، و در مقاله سوم، ما به I2C خواهیم پرداخت. SPI، I2C و UART نسبت به پروتکل های مانند USB، Ethernet، بلوتوث و WiFi بسیار ساده تر هستند اما از سخت افزار و منابع سیستم استفاده می کنند. این پروتکل ها برای اتصال بین میکروکنترلرها و سنسورها، ایده آل هستند که در آن مقدارحجیمی از اطلاعات با سرعتی بالا انتقال داده نمیشوند.

ارتباط های سریال و موازی

دستگاه های الکترونیکی با فرستادن بیت داده ها از طریق سیم هایی که از لحاظ فیزیکی بین دستگاه ها متصل هستند با یکدیگر ارتباط برقرار میکنند می کنند. هر بیت مانند یک حرف در یک کلمه است، برای مثال به جای ۳۲ حرف (در الفبای فارسی)، بیت های باینری باشد که تنها می تواند مقداری ۱ یا ۰ داشته باشند. بیت ها از یک میکروکنترلر به دیگری، با تغییرات سریع در ولتاژ منتقل می شوند. در یک سیستم که با ولتاژ ۵ ولت عمل می کند، بیت ۰ به عنوان یک پالس کوتاه ۰ ولت و بیت ۱ با یک پالس کوتاه ۵ ولت ارتباط برقرار می شود. بیت های داده می توانند بصورت موازی یا سریال منتقل شوند. در ارتباط موازی، بیت داده ها همه در همان زمان، هر یک از طریق سیم جداگانه فرستاده می شود:

در ارتباطات سریال، بیت ها یک به یک از طریق سیم تک ارسال می شوند:

معرفی پروتکل SPI

SPI یک پروتکل ارتباطی مشترک است که توسط بسیاری از دستگاه های مختلف استفاده می شود. به عنوان مثال، ماژول های کارت SD، ماژول های کارت خوان RFID و فرستنده / گیرنده های بی سیم ۲.۴ گیگاهرتز از SPI برای ارتباط با میکروکنترلرها استفاده می کنند.

یکی از مزایای منحصر به فرد SPI این واقعیت است که داده ها بدون وقفه منتقل می شوند. هر تعداد بیت را می توان در جریان پیوسته ارسال یا دریافت کرد. با I2C و UART، داده ها در بسته ها ارسال می شوند و محدود به تعداد مشخصی از بیت ها هستند که هر بسته دارای یک بیت شروع و یک بیت پایان میباشد. بنابراین داده ها در هنگام انتقال متوقف می شوند.

دستگاه هایی که از طریق SPI ارتباط برقرار می کنند، در یک رابطه سرپرست قرار دارند. فرستنده دستگاه کنترل معمولا یک میکروکنترلر است، در حالی که گیرنده (معمولا یک سنسور، صفحه نمایش یا تراشه حافظه) دستورالعمل را از استاد دریافت می کند. ساده ترین پیکربندی SPI یک سیستم دارای فرستنده و گیرنده میباشد که هر فرستنده میتواند چند گیرنده را کنترل کند. به فرستنده ها در اصطلاح استاد و به گیرنده ها برده میگویند.

توضیحات پایه ها

MOSI (Master Output/Slave Input) خطی برای ارسال دیتا از فرستنده به گیرنده

خطی برای ارسال دیتا از گیرنده به فرستنده (MISO (Master Input/Slave Output

خطی برای کلاک سیگنال (SCLK (Clock 

برای انتخاب (SS/CS (Slave Select/Chip Select 

انتقال داده از فرستنده به گیرنده

فرستنده اطلاعات را به طورت بیت به بیت و سریال و از طریق خط MOSI ارسال میکند. گیرنده اطلاعاتی را که از استاد در پین MOSI فرستاده شده است دریافت می کند. برده همچنین می تواند اطلاعات را از طریق خط MISO در سریال ارسال کند. داده های فرستاده شده از برده به استاد معمولا با کمترین مقدار بیت اول ارسال می شود.

یک فرستنده و چند گیرنده

SPI را می توان برای کار با یک فرستنده اطلاعات و یک گیرنده استفاده کرد، و می توان آن را با برد های چندگانه کنترل شده توسط یک فرستنده تنظیم کرد. دو راه برای اتصال گیرنده ها چند به فرستنده وجود دارد. اگر فرستنده دارای پینهای انتخابی چندگانه است، بردگان میتوانند بصورت موازی به صورت زیر سیم کشی شوند:

گر تنها یک پین انتخاب برده ای در دسترس باشد، بردگان می توانند مانند زیر باشند:

مزایای SPI

بدون شروع و متوقف کردن بیت، بنابراین داده ها را می توان بدون وقفه به طور مداوم جریان داده است.
هیچ سیستم پیچیده اداری برده مانند I2C وجود ندارد.
نرخ انتقال داده بالاتر از I2C (تقریبا دو برابر سریع) جدا کردن خطوط MISO و MOSI، بنابراین داده ها می توانند همزمان ارسال و دریافت شوند.

این قسمت از آموزش نیز به پایان رسید، امیدواریم برای شما عزیزان مفید واثع شده باشد.

برچسب ها
نمایش بیشتر

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا
بستن