תוכן עניינים:

יסודות פרוטוקול תקשורת SPI: 13 שלבים
יסודות פרוטוקול תקשורת SPI: 13 שלבים

וִידֵאוֹ: יסודות פרוטוקול תקשורת SPI: 13 שלבים

וִידֵאוֹ: יסודות פרוטוקול תקשורת SPI: 13 שלבים
וִידֵאוֹ: הנדסת אלקטרוניקה חשמל ומחשבים 2024|אדואינו אונו- מבוא והסבר כללי|מפרט טכני|פרטוקולי תקשורת|תכונות| 2024, יולי
Anonim
יסודות פרוטוקול תקשורת SPI
יסודות פרוטוקול תקשורת SPI

כאשר אתה מחבר מיקרו -בקר לחיישן, לתצוגה או למודול אחר, האם אתה חושב פעם כיצד שני המכשירים מדברים זה עם זה? מה בדיוק הם אומרים? כיצד הם מסוגלים להבין זה את זה?

תקשורת בין מכשירים אלקטרוניים היא כמו תקשורת בין בני אדם. שני הצדדים צריכים לדבר באותה שפה. באלקטרוניקה, שפות אלו נקראות פרוטוקולי תקשורת. למזלנו, ישנם רק כמה פרוטוקולי תקשורת שעלינו לדעת בעת בניית רוב הפרויקטים האלקטרוניים של DIY. בסדרת מאמרים זו נדון ביסודות של שלושת הפרוטוקולים הנפוצים ביותר: ממשק היקפי סידורי (SPI), מעגל אינטגרטיבי (I2C) ותקשורת מונעת אסינכרוני/משדר אוניברסלי (UART). ראשית, נתחיל בכמה מושגי יסוד אודות תקשורת אלקטרונית, ולאחר מכן נסביר בפירוט כיצד פועל SPI. במאמר הבא נדון בתקשורת מונעת על ידי UART, ובמאמר השלישי נצלול אל I2C. SPI, I2C ו- UART הם לאט לאט יותר מפרוטוקולים כמו USB, Ethernet, Bluetooth ו- WiFi, אבל הם הרבה יותר פשוטים ומשתמשים בפחות משאבי חומרה ומערכת. SPI, I2C ו- UART הם אידיאליים לתקשורת בין בקרי מיקרו ובין מיקרו -בקרים וחיישנים שבהם אין צורך להעביר כמויות גדולות של נתונים במהירות גבוהה.

שלב 1: סדרה VS. תקשורת מקבילה

סדרה VS. תקשורת מקבילה
סדרה VS. תקשורת מקבילה

מכשירים אלקטרוניים מדברים ביניהם על ידי שליחת פיסות נתונים דרך חוטים המחוברים פיזית בין מכשירים. קצת הוא כמו אות במילה, למעט במקום 26 האותיות (באלפבית האנגלי), קצת הוא בינארי ויכול להיות רק 1 או 0. סיביות מועברות ממכשיר אחד למשנהו על ידי שינויים מהירים במתח. במערכת הפועלת על 5 V, 0 ביט מתקשר כדופק קצר של 0 V, ו- 1 bit מתקשר על ידי דופק קצר של 5 V.

ניתן להעביר את נתוני הנתונים בצורה מקבילה או סדרתית. בתקשורת מקבילה, נתחי הנתונים נשלחים בבת אחת, כל אחד באמצעות חוט נפרד. התרשים הבא מציג את השידור המקביל של האות "C" בינארית (01000011):

שלב 2:

בתקשורת סדרתית, הביטים נשלחים אחד אחד באמצעות חוט אחד. התרשים הבא מציג את השידור הטורי של האות "C" בינארית (01000011):

שלב 3:

תמונה
תמונה

שלב 4: מבוא לתקשורת SPI

מבוא לתקשורת SPI
מבוא לתקשורת SPI

SPI הוא פרוטוקול תקשורת נפוץ המשמש מכשירים רבים ושונים. לדוגמה, מודולי כרטיסי SD, מודולי קוראי כרטיסי RFID ומשדרים/מקלטי אלחוטי 2.4 GHz משתמשים כולם ב- SPI כדי לתקשר עם מיקרו -בקרים.

יתרון ייחודי אחד של SPI הוא העובדה שניתן להעביר נתונים ללא הפרעה. ניתן לשלוח או לקבל כל מספר סיביות בזרם רציף. עם I2C ו- UART, הנתונים נשלחים במנות, מוגבל למספר ביטים ספציפי. תנאי ההתחלה והעצירה מגדירים את ההתחלה והסוף של כל מנה, כך שהנתונים נקטעים במהלך השידור. התקנים המתקשרים באמצעות SPI נמצאים במערכת יחסים של אמן-עבד. המאסטר הוא מכשיר השליטה (בדרך כלל מיקרו -בקר), בעוד שהעבד (בדרך כלל חיישן, תצוגה או שבב זיכרון) מקבל הוראות מהמאסטר. התצורה הפשוטה ביותר של SPI היא מערכת יחידה אחת, עבדים יחידה, אך מאסטר אחד יכול לשלוט ביותר מעבד אחד (עוד על כך בהמשך).

שלב 5:

תמונה
תמונה

שלב 6:

MOSI (פלט מאסטר/כניסת עבדים) - קו המאסטר לשלוח נתונים לעבד.

MISO (קלט מאסטר/פלט עבד) - קו עבור העבד לשלוח נתונים למאסטר.

SCLK (שעון) - קו לאות השעון.

SS/CS (בחירת עבדים/בחירת שבבים) - שורה עבור המאסטר לבחור לאיזה עבד לשלוח נתונים

שלב 7:

תמונה
תמונה

*בפועל, מספר העבדים מוגבל ביכולת הקיבולת של המערכת, מה שמקטין את יכולתו של המאסטר לעבור במדויק בין רמות המתח.

שלב 8: כיצד פועל SPI

השעון

אות השעון מסנכרן את הפלט של סיביות נתונים מהמאסטר לדגימת הביטים על ידי העבד. כל נתון מועבר בכל מחזור שעון, ולכן מהירות העברת הנתונים נקבעת על פי תדירות אות השעון. תקשורת SPI תמיד יוזמת על ידי המאסטר מכיוון שהמאסטר מגדיר ומייצר את אות השעון.

כל פרוטוקול תקשורת שבו התקנים חולקים אות שעון ידוע בשם סינכרוני. SPI הוא פרוטוקול תקשורת סינכרוני. ישנן גם שיטות אסינכרוניות שאינן משתמשות באות שעון. לדוגמה, בתקשורת UART, שני הצדדים מוגדרים לקצב שידור מוגדר מראש המכתיב את המהירות והתזמון של העברת הנתונים.

ניתן לשנות את אות השעון ב- SPI באמצעות המאפיינים של קוטביות השעון ושלב השעון. שני המאפיינים האלה פועלים יחד כדי להגדיר מתי הביטים יוצאים ומתי הם נדגמים. המאסטר יכול להגדיר את קוטביות השעון על מנת לאפשר להוציא ביטים ולדגום אותם בקצה העולה או היורד של מחזור השעון. ניתן להגדיר את שלב השעון כך שהפלט והדגימה יתרחשו בקצה הראשון או בקצה השני של מחזור השעון, ללא קשר אם הוא עולה או יורד.

SLAVE SELECT

המאסטר יכול לבחור עם איזה עבד הוא רוצה לדבר על ידי הגדרת קו ה- CS/SS של העבד לרמת מתח נמוכה. במצב סרק, שאינו משדר, קו בחירת העבדים נשמר ברמת מתח גבוהה. מספר סיכות CS/SS עשויות להיות זמינות במאסטר, מה שמאפשר לחווט מספר עבדים במקביל. אם קיים רק סיכת CS/SS אחת, ניתן לחבר אל עבדים מספר רב של מאסטר באמצעות שרשרת דייזי.

SPI מרובה סלבים

ניתן להגדיר אותו לפעול עם מאסטר יחיד ועבד יחיד, וניתן להגדיר אותו עם מספר עבדים הנשלטים על ידי מאסטר יחיד. ישנן שתי דרכים לחבר עבדים מרובים למאסטר. אם למאסטר מספר סיכות בחירה של עבדים, ניתן לחבר את העבדים במקביל כך:

שלב 9:

תמונה
תמונה

שלב 10:

מוזי ומיסו

המאסטר שולח נתונים לעבד טיפין טיפין, בסדרה באמצעות קו MOSI. העבד מקבל את הנתונים שנשלחו מהמאסטר בסיכת MOSI. נתונים שנשלחים מהמאסטר לעבד נשלחים בדרך כלל עם הביט המשמעותי ביותר תחילה. העבד יכול גם לשלוח נתונים בחזרה למאסטר באמצעות קו MISO בסידרה. הנתונים שנשלחים מהעבד בחזרה למאסטר נשלחים בדרך כלל עם המעט הפחות משמעותי קודם. שלבי העברת נתוני SPI 1. המאסטר מוציא את אות השעון:

שלב 11:

תמונה
תמונה

אם זמינה רק סיכת בחירה אחת של עבדים, ניתן לכבול את העבדים כך:

שלב 12:

תמונה
תמונה
תמונה
תמונה
תמונה
תמונה
תמונה
תמונה

מוזי ומיסו

המאסטר שולח נתונים לעבד טיפין טיפין, בסדרה באמצעות קו MOSI. העבד מקבל את הנתונים שנשלחו מהמאסטר בסיכת MOSI. נתונים שנשלחים מהמאסטר לעבד נשלחים בדרך כלל עם הביט המשמעותי ביותר תחילה.

העבד יכול גם לשלוח נתונים בחזרה למאסטר באמצעות קו MISO בסידרה. הנתונים שנשלחים מהעבד בחזרה למאסטר נשלחים בדרך כלל עם המעט הפחות משמעותי קודם.

שלבים של העברת נתוני SPI

*שימו לב לתמונות הם Oboe רשומים שתוכלו להבחין בקלות

1. המאסטר מוציא את אות השעון:

2. המאסטר מעביר את סיכת ה- SS/CS למצב מתח נמוך, המפעיל את העבד:

3. המאסטר שולח את הנתונים כל פעם קצת לעבד לאורך קו MOSI. העבד קורא את החלקים כשהם מתקבלים:

4. אם יש צורך בתגובה, העבד מחזיר נתונים פעם אחר פעם למאסטר לאורך קו MISO. המאסטר קורא את הביטים כשהם מתקבלים:

שלב 13: יתרונות ויתרונות של SPI

ישנם כמה יתרונות וחסרונות בשימוש ב- SPI, ואם ניתנת לך הבחירה בין פרוטוקולי תקשורת שונים, עליך לדעת מתי להשתמש ב- SPI בהתאם לדרישות הפרויקט שלך:

יתרונות

אין נתחי התחלה ועצירה, כך שניתן להזרים את הנתונים ברציפות ללא הפרעה אין מערכת פנייה לעבדים מסובכת כמו I2C קצב העברת נתונים גבוה יותר מ- I2C (כמעט פי שניים) קווים נפרדים של MISO ו- MOSI, כך שניתן לשלוח ולקבל נתונים באותו זמן זְמַן

חסרונות

משתמש בארבעה חוטים (I2C ו- UART משתמשים בשניים) אין אישור לכך שהנתונים התקבלו בהצלחה (ל- I2C יש את זה) שום צורה של בדיקת שגיאות כמו סיביות הזוגיות ב- UART רק מאפשרת מאסטר יחיד בתקווה שמאמר זה נתן לך הבנה טובה יותר של SPI. המשך לחלק השני בסדרה זו כדי ללמוד על תקשורת מונעת UART, או לחלק השלישי שבו אנו דנים בפרוטוקול I2C.

אם יש לך שאלות, אל תהסס לשאול זאת בקטע ההערות, אנחנו כאן כדי לעזור. והקפידו לעקוב

בברכה: מ 'ג'ונאיד

מוּמלָץ: