विषयसूची:
- चरण 1: सीरियल बनाम। समानांतर संचार
- चरण 2:
- चरण 3:
- चरण 4: एसपीआई संचार का परिचय
- चरण 5:
- चरण 6:
- चरण 7:
- चरण 8: एसपीआई कैसे काम करता है
- चरण 9:
- चरण 10:
- चरण 11:
- चरण 12:
- चरण 13: एसपीआई के लाभ और नुकसान
वीडियो: एसपीआई संचार प्रोटोकॉल की मूल बातें: १३ कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:22
जब आप माइक्रोकंट्रोलर को सेंसर, डिस्प्ले या अन्य मॉड्यूल से कनेक्ट करते हैं, तो क्या आपने कभी सोचा है कि दोनों डिवाइस एक दूसरे से कैसे बात करते हैं? वे वास्तव में क्या कह रहे हैं? वे एक दूसरे को कैसे समझ पा रहे हैं?
इलेक्ट्रॉनिक उपकरणों के बीच संचार मनुष्यों के बीच संचार की तरह है। दोनों पक्षों को एक ही भाषा बोलने की जरूरत है। इलेक्ट्रॉनिक्स में, इन भाषाओं को संचार प्रोटोकॉल कहा जाता है। सौभाग्य से हमारे लिए, केवल कुछ संचार प्रोटोकॉल हैं जिन्हें हमें अधिकांश DIY इलेक्ट्रॉनिक्स परियोजनाओं का निर्माण करते समय जानने की आवश्यकता है। लेखों की इस श्रृंखला में, हम तीन सबसे सामान्य प्रोटोकॉल की मूल बातों पर चर्चा करेंगे: सीरियल पेरिफेरल इंटरफ़ेस (SPI), इंटर-इंटीग्रेटेड सर्किट (I2C), और यूनिवर्सल एसिंक्रोनस रिसीवर / ट्रांसमीटर (UART) संचालित संचार। सबसे पहले, हम इलेक्ट्रॉनिक संचार के बारे में कुछ बुनियादी अवधारणाओं के साथ शुरू करेंगे, फिर विस्तार से बताएंगे कि एसपीआई कैसे काम करता है। अगले लेख में, हम UART द्वारा संचालित संचार पर चर्चा करेंगे, और तीसरे लेख में, हम I2C में गोता लगाएँगे। SPI, I2C और UART USB, ईथरनेट, ब्लूटूथ और वाईफाई जैसे प्रोटोकॉल की तुलना में काफी धीमे हैं, लेकिन वे बहुत अधिक सरल हैं और कम हार्डवेयर और सिस्टम संसाधनों का उपयोग करते हैं। SPI, I2C, और UART माइक्रोकंट्रोलर के बीच और माइक्रोकंट्रोलर और सेंसर के बीच संचार के लिए आदर्श हैं जहां बड़ी मात्रा में उच्च गति डेटा को स्थानांतरित करने की आवश्यकता नहीं होती है।
चरण 1: सीरियल बनाम। समानांतर संचार
इलेक्ट्रॉनिक उपकरण उपकरणों के बीच भौतिक रूप से जुड़े तारों के माध्यम से डेटा के बिट्स भेजकर एक दूसरे से बात करते हैं। बिट एक शब्द में एक अक्षर की तरह है, 26 अक्षरों (अंग्रेजी वर्णमाला में) के बजाय, बिट बाइनरी है और केवल 1 या 0 हो सकता है। वोल्टेज में त्वरित परिवर्तन द्वारा बिट्स को एक डिवाइस से दूसरे डिवाइस में स्थानांतरित किया जाता है। 5 वी पर काम करने वाले सिस्टम में, 0 बिट को 0 वी की छोटी पल्स के रूप में संचार किया जाता है, और 1 बिट को 5 वी की छोटी पल्स द्वारा संचार किया जाता है।
डेटा के बिट्स को समानांतर या सीरियल रूप में प्रेषित किया जा सकता है। समानांतर संचार में, डेटा के बिट्स एक ही समय में, प्रत्येक एक अलग तार के माध्यम से भेजे जाते हैं। निम्नलिखित आरेख बाइनरी (01000011) में "सी" अक्षर के समानांतर संचरण को दर्शाता है:
चरण 2:
धारावाहिक संचार में, बिट्स को एक तार के माध्यम से एक-एक करके भेजा जाता है। निम्नलिखित आरेख बाइनरी (01000011) में "सी" अक्षर के सीरियल ट्रांसमिशन को दर्शाता है:
चरण 3:
चरण 4: एसपीआई संचार का परिचय
SPI एक सामान्य संचार प्रोटोकॉल है जिसका उपयोग कई अलग-अलग उपकरणों द्वारा किया जाता है। उदाहरण के लिए, एसडी कार्ड मॉड्यूल, आरएफआईडी कार्ड रीडर मॉड्यूल, और 2.4 गीगाहर्ट्ज वायरलेस ट्रांसमीटर/रिसीवर सभी माइक्रोकंट्रोलर के साथ संचार करने के लिए एसपीआई का उपयोग करते हैं।
SPI का एक अनूठा लाभ यह है कि डेटा बिना किसी रुकावट के स्थानांतरित किया जा सकता है। निरंतर स्ट्रीम में कितने भी बिट्स भेजे या प्राप्त किए जा सकते हैं। I2C और UART के साथ, डेटा पैकेट में भेजा जाता है, जो एक विशिष्ट संख्या में बिट्स तक सीमित होता है। स्टार्ट और स्टॉप की स्थिति प्रत्येक पैकेट की शुरुआत और अंत को परिभाषित करती है, इसलिए ट्रांसमिशन के दौरान डेटा बाधित होता है। SPI के माध्यम से संचार करने वाले उपकरण एक मास्टर-दास संबंध में हैं। मास्टर कंट्रोलिंग डिवाइस (आमतौर पर एक माइक्रोकंट्रोलर) होता है, जबकि स्लेव (आमतौर पर एक सेंसर, डिस्प्ले या मेमोरी चिप) मास्टर से निर्देश लेता है। SPI का सबसे सरल विन्यास सिंगल मास्टर, सिंगल स्लेव सिस्टम है, लेकिन एक मास्टर एक से अधिक स्लेव को नियंत्रित कर सकता है (इस पर और अधिक)।
चरण 5:
चरण 6:
MOSI (मास्टर आउटपुट / स्लेव इनपुट) - मास्टर के लिए दास को डेटा भेजने के लिए लाइन।
MISO (मास्टर इनपुट / स्लेव आउटपुट) - दास के लिए मास्टर को डेटा भेजने के लिए लाइन।
SCLK (घड़ी) - घड़ी संकेत के लिए लाइन।
एसएस/सीएस (स्लेव सेलेक्ट/चिप सेलेक्ट) - मास्टर के लिए लाइन चुनने के लिए कि किस दास को डेटा भेजना है
चरण 7:
* व्यवहार में, सिस्टम के लोड कैपेसिटेंस द्वारा दासों की संख्या सीमित होती है, जो मास्टर की वोल्टेज स्तरों के बीच सटीक रूप से स्विच करने की क्षमता को कम कर देता है।
चरण 8: एसपीआई कैसे काम करता है
घड़ी
क्लॉक सिग्नल मास्टर से डेटा बिट्स के आउटपुट को स्लेव द्वारा बिट्स के सैंपलिंग के लिए सिंक्रोनाइज़ करता है। प्रत्येक घड़ी चक्र में एक बिट डेटा स्थानांतरित किया जाता है, इसलिए डेटा स्थानांतरण की गति घड़ी संकेत की आवृत्ति से निर्धारित होती है। एसपीआई संचार हमेशा मास्टर द्वारा शुरू किया जाता है क्योंकि मास्टर घड़ी संकेत को कॉन्फ़िगर और उत्पन्न करता है।
कोई भी संचार प्रोटोकॉल जहां डिवाइस एक घड़ी संकेत साझा करते हैं, सिंक्रोनस के रूप में जाना जाता है। SPI एक सिंक्रोनस कम्युनिकेशन प्रोटोकॉल है। अतुल्यकालिक तरीके भी हैं जो घड़ी के संकेत का उपयोग नहीं करते हैं। उदाहरण के लिए, UART संचार में, दोनों पक्ष एक पूर्व-कॉन्फ़िगर बॉड दर पर सेट होते हैं जो डेटा ट्रांसमिशन की गति और समय को निर्धारित करता है।
SPI में क्लॉक सिग्नल को क्लॉक पोलरिटी और क्लॉक फेज़ के गुणों का उपयोग करके संशोधित किया जा सकता है। ये दो गुण एक साथ यह परिभाषित करने के लिए काम करते हैं कि बिट्स कब आउटपुट होते हैं और कब उनका नमूना लिया जाता है। घड़ी चक्र के बढ़ते या गिरते किनारे पर बिट्स को आउटपुट और नमूना करने की अनुमति देने के लिए मास्टर द्वारा घड़ी की ध्रुवीयता निर्धारित की जा सकती है। घड़ी चक्र के पहले किनारे या दूसरे किनारे पर आउटपुट और सैंपलिंग के लिए क्लॉक चरण सेट किया जा सकता है, भले ही वह बढ़ रहा हो या गिर रहा हो।
गुलाम चयन
दास की CS/SS लाइन को निम्न वोल्टेज स्तर पर सेट करके स्वामी चुन सकता है कि वह किस दास से बात करना चाहता है। निष्क्रिय, गैर-संचारण स्थिति में, दास चयन लाइन को उच्च वोल्टेज स्तर पर रखा जाता है। मास्टर पर एकाधिक सीएस/एसएस पिन उपलब्ध हो सकते हैं, जो समानांतर में एकाधिक दासों को तारित करने की अनुमति देता है। यदि केवल एक सीएस/एसएस पिन मौजूद है, तो कई दासों को डेज़ी-चेनिंग द्वारा मास्टर को तार दिया जा सकता है।
एकाधिक दास SPI
एक मास्टर और एक गुलाम के साथ काम करने के लिए स्थापित किया जा सकता है, और इसे एक ही मास्टर द्वारा नियंत्रित कई दासों के साथ स्थापित किया जा सकता है। कई दासों को गुरु से जोड़ने के दो तरीके हैं। यदि मास्टर के पास कई दास चुनिंदा पिन हैं, तो दासों को इस तरह समानांतर में तार-तार किया जा सकता है:
चरण 9:
चरण 10:
मोसी और मिसो
मास्टर MOSI लाइन के माध्यम से धीरे-धीरे दास को डेटा भेजता है। दास मास्टर से भेजे गए डेटा को MOSI पिन पर प्राप्त करता है। मास्टर से दास को भेजा गया डेटा आमतौर पर सबसे महत्वपूर्ण बिट के साथ पहले भेजा जाता है। दास भी सीरियल में MISO लाइन के माध्यम से मास्टर को डेटा वापस भेज सकता है। दास से वापस मास्टर को भेजा गया डेटा आमतौर पर कम से कम महत्वपूर्ण बिट के साथ पहले भेजा जाता है। SPI डेटा ट्रांसमिशन के चरण 1. मास्टर क्लॉक सिग्नल को आउटपुट करता है:
चरण 11:
यदि केवल एक दास चयन पिन उपलब्ध है, तो दासों को इस तरह से डेज़ी-जंजीर किया जा सकता है:
चरण 12:
मोसी और मिसो
मास्टर MOSI लाइन के माध्यम से धीरे-धीरे दास को डेटा भेजता है। दास मास्टर से भेजे गए डेटा को MOSI पिन पर प्राप्त करता है। मास्टर से दास को भेजा गया डेटा आमतौर पर सबसे महत्वपूर्ण बिट के साथ पहले भेजा जाता है।
दास भी सीरियल में MISO लाइन के माध्यम से मास्टर को डेटा वापस भेज सकता है। दास से वापस मास्टर को भेजा गया डेटा आमतौर पर कम से कम महत्वपूर्ण बिट के साथ पहले भेजा जाता है।
एसपीआई डेटा ट्रांसमिशन के चरण
*नोट छवियां सूचीबद्ध हैं ओबे आप आसानी से भेद कर सकते हैं
1. मास्टर क्लॉक सिग्नल को आउटपुट करता है:
2. मास्टर एसएस / सीएस पिन को कम वोल्टेज की स्थिति में बदल देता है, जो दास को सक्रिय करता है:
3. मास्टर एक बार में डेटा को MOSI लाइन के साथ दास को भेजता है। दास बिट्स को पढ़ता है जैसे वे प्राप्त होते हैं:
4. यदि किसी प्रतिक्रिया की आवश्यकता है, तो दास MISO लाइन के साथ मास्टर को एक बार में एक बिट डेटा लौटाता है। मास्टर बिट्स को पढ़ता है जैसे वे प्राप्त होते हैं:
चरण 13: एसपीआई के लाभ और नुकसान
एसपीआई का उपयोग करने के कुछ फायदे और नुकसान हैं, और यदि विभिन्न संचार प्रोटोकॉल के बीच विकल्प दिया जाता है, तो आपको पता होना चाहिए कि आपकी परियोजना की आवश्यकताओं के अनुसार एसपीआई का उपयोग कब करना है:
फायदे
कोई स्टार्ट और स्टॉप बिट्स नहीं, इसलिए डेटा को बिना किसी रुकावट के लगातार स्ट्रीम किया जा सकता है I2C जैसी कोई जटिल स्लेव एड्रेसिंग सिस्टम नहीं I2C की तुलना में उच्च डेटा ट्रांसफर दर (लगभग दो बार तेज) अलग MISO और MOSI लाइनें, इसलिए डेटा उसी पर भेजा और प्राप्त किया जा सकता है समय
नुकसान
चार तारों का उपयोग करता है (I2C और UARTs दो का उपयोग करते हैं) कोई पावती नहीं है कि डेटा सफलतापूर्वक प्राप्त किया गया है (I2C में यह है) UART में समता बिट की तरह त्रुटि जाँच का कोई रूप नहीं केवल एक मास्टर के लिए अनुमति देता है उम्मीद है कि इस लेख ने आपको बेहतर समझ दी है एसपीआई की। UART द्वारा संचालित संचार के बारे में जानने के लिए, या भाग तीन में जहाँ हम I2C प्रोटोकॉल पर चर्चा करते हैं, इस श्रृंखला के भाग दो पर जारी रखें।
यदि आपके कोई प्रश्न हैं, तो बेझिझक इसे टिप्पणी अनुभाग में पूछें, हम यहाँ मदद करने के लिए हैं। और फॉलो जरूर करें
सादर: एम.जुनैद
सिफारिश की:
होल घटकों के माध्यम से सोल्डरिंग - टांका लगाने की मूल बातें: 8 कदम (चित्रों के साथ)
होल घटकों के माध्यम से सोल्डरिंग | सोल्डरिंग बेसिक्स: इस इंस्ट्रक्शनल में मैं सर्किट बोर्ड में थ्रू-होल कंपोनेंट्स को सोल्डर करने के बारे में कुछ बेसिक्स पर चर्चा करूंगा। मैं मान रहा हूँ कि आपने मेरी सोल्डरिंग बेसिक्स सीरीज़ के लिए पहले 2 इंस्ट्रक्शंस को पहले ही देख लिया है। यदि आपने मेरा चेक आउट नहीं किया है
सोल्डरिंग वायर टू वायर - सोल्डरिंग मूल बातें: 11 कदम
सोल्डरिंग वायर टू वायर | टांका लगाने की मूल बातें: इस निर्देश के लिए, मैं अन्य तारों को टांका लगाने के सामान्य तरीकों पर चर्चा करूँगा। मैं मान रहा हूँ कि आपने मेरी सोल्डरिंग बेसिक्स सीरीज़ के लिए पहले 2 इंस्ट्रक्शंस को पहले ही देख लिया है। यदि आपने मेरे निर्देशों का उपयोग करने पर जाँच नहीं की है
टाइनी एच-ब्रिज ड्राइवर्स - मूल बातें: 6 कदम (चित्रों के साथ)
टाइनी एच-ब्रिज ड्राइवर्स | मूल बातें: नमस्कार और एक और इंस्ट्रक्शनल में आपका स्वागत है! पिछले एक में, मैंने आपको दिखाया कि कैसे मैंने एक पायथन लिपि का उपयोग करके KiCad में कॉइल बनाया। फिर मैंने कॉइल के कुछ रूपों का निर्माण और परीक्षण किया, यह देखने के लिए कि कौन सा सबसे अच्छा काम करता है। मेरा उद्देश्य विशाल को बदलना है
यूएआरटी संचार की मूल बातें: 16 कदम
यूएआरटी संचार की मूल बातें: याद रखें जब प्रिंटर, चूहों और मोडेम में उन विशाल क्लंकी कनेक्टरों के साथ मोटी केबल होती थी? जिन्हें सचमुच आपके कंप्यूटर में खराब कर देना था? वे डिवाइस शायद आपके कंप्यूटर के साथ संचार करने के लिए यूएआरटी का उपयोग कर रहे थे। जबकि USB में अल्मोस
प्रारंभिक* पाई पर एसपीआई: रास्पबेरी पाई का उपयोग करते हुए एसपीआई 3-अक्ष एक्सेलेरोमीटर के साथ संचार करना: 10 कदम
प्रारंभिक* पाई पर एसपीआई: रास्पबेरी पाई का उपयोग करके एसपीआई 3-अक्ष एक्सेलेरोमीटर के साथ संचार बहुत प्रारंभिक… मुझे भौतिक हुकअप की बेहतर तस्वीरें जोड़ने और कुछ अजीब कोड के माध्यम से काम करने की आवश्यकता है