1980 के दशक में फिलिप्स द्वारा विकसित, I2C (वैकल्पिक रूप से वर्तनी I2C) इलेक्ट्रॉनिक्स में सबसे अधिक इस्तेमाल किए जाने वाले सीरियल संचार प्रोटोकॉल में से एक बन गया है। I2C इलेक्ट्रॉनिक घटकों या एकीकृत सर्किट के बीच संचार की सुविधा प्रदान करता है, चाहे घटक एक ही पीसीबी पर हों या केबल से जुड़े हों।
I2C प्रोटोकॉल क्या है?
I2C एक सीरियल संचार प्रोटोकॉल है जिसमें केवल दो सिग्नल लाइनों की आवश्यकता होती है। यह एक मुद्रित सर्किट बोर्ड (पीसीबी) पर चिप्स के बीच संचार के लिए डिज़ाइन किया गया था। I2C को मूल रूप से 100 Kbps संचार के लिए डिज़ाइन किया गया था। हालाँकि, 3 तक की गति प्राप्त करने के लिए वर्षों में तेज़ डेटा ट्रांसमिशन मोड विकसित किए गए हैं।4 एमबीटी.
I2C की प्रमुख विशेषता केवल दो तारों के साथ एक संचार बस में कई घटकों को रखने की क्षमता है, जो I2C को सरल अनुप्रयोगों के लिए एकदम सही बनाती है। I2C प्रोटोकॉल को एक आधिकारिक मानक के रूप में स्थापित किया गया है, जिससे I2C कार्यान्वयन के बीच पश्च संगतता की अनुमति मिलती है।
I2C सिग्नल
I2C प्रोटोकॉल संचार बस में उपकरणों के साथ संचार करने के लिए दो द्वि-दिशात्मक सिग्नल लाइनों का उपयोग करता है। इस्तेमाल किए गए दो सिग्नल हैं:
- सीरियल डेटा लाइन (एसडीएल)
- सीरियल डेटा क्लॉक (एसडीसी)
कई बाह्य उपकरणों के साथ संचार करने के लिए I2C केवल दो संकेतों का उपयोग कर सकता है इसका कारण यह है कि बस के साथ संचार कैसे संभाला जाता है। प्रत्येक I2C संचार 7-बिट (या 10-बिट) पते से शुरू होता है जो परिधीय के पते को कॉल करता है।
यह I2C बस में कई उपकरणों को प्राथमिक उपकरण की भूमिका निभाने की अनुमति देता है क्योंकि सिस्टम की जरूरतें तय करती हैं।संचार टकराव को रोकने के लिए, I2C प्रोटोकॉल में मध्यस्थता और टकराव का पता लगाने की क्षमता शामिल है, जो बस के साथ सहज संचार की अनुमति देता है।
I2C के लाभ
एक संचार प्रोटोकॉल के रूप में, I2C के निम्नलिखित फायदे हैं:
- लचीला डेटा संचरण दर।
- SPI से लंबी दूरी का संचार।
- बस में प्रत्येक उपकरण स्वतंत्र रूप से पता करने योग्य है।
- डिवाइस का एक साधारण प्राथमिक/द्वितीयक संबंध है।
- इसके लिए केवल दो सिग्नल लाइनों की आवश्यकता होती है।
- यह मध्यस्थता और संचार टकराव का पता लगाकर कई प्राथमिक संचारों को संभालने में सक्षम है।
I2C की सीमाएं
इन सभी लाभों के साथ, I2C की कुछ सीमाएँ भी हैं जिन्हें डिज़ाइन करने की आवश्यकता हो सकती है। सबसे महत्वपूर्ण I2C सीमाओं में शामिल हैं:
- चूंकि डिवाइस एड्रेसिंग के लिए केवल 7-बिट्स (या 10-बिट्स) उपलब्ध हैं, एक ही बस के डिवाइस एक ही एड्रेस शेयर कर सकते हैं। कुछ डिवाइस पते के अंतिम कुछ बिट्स को कॉन्फ़िगर कर सकते हैं, लेकिन यह एक ही बस में उपकरणों की एक सीमा लगाता है।
- केवल कुछ सीमित संचार गति उपलब्ध हैं, और कई उपकरण उच्च गति पर संचरण का समर्थन नहीं करते हैं। धीमे उपकरणों को आंशिक प्रसारण को पकड़ने से रोकने के लिए बस में प्रत्येक गति के लिए आंशिक समर्थन की आवश्यकता होती है जिसके परिणामस्वरूप परिचालन गड़बड़ियां हो सकती हैं।
- I2C बस की साझा प्रकृति के परिणामस्वरूप पूरी बस हैंग हो सकती है जब बस में एक भी उपकरण काम करना बंद कर देता है। साइकिल से बिजली बस को चलाने से उचित संचालन बहाल हो सकता है।
- चूंकि डिवाइस अपनी खुद की संचार गति निर्धारित करते हैं, धीमे परिचालन वाले डिवाइस तेज उपकरणों के संचालन में देरी कर सकते हैं।
- I2C संचार लाइनों की खुली नाली टोपोलॉजी के कारण अन्य धारावाहिक संचार बसों की तुलना में अधिक शक्ति खींचता है।
- I2C बस की सीमाएं आमतौर पर बस में उपकरणों की संख्या को लगभग एक दर्जन तक सीमित कर देती हैं।
I2C अनुप्रयोग
I2C उन अनुप्रयोगों के लिए एक बढ़िया विकल्प है जिन्हें उच्च गति के बजाय कम लागत और सरल कार्यान्वयन की आवश्यकता होती है। उदाहरण के लिए, I2C संचार प्रोटोकॉल के सामान्य उपयोगों में शामिल हैं:
- कुछ मेमोरी आईसी पढ़ना।
- डीएसी और एडीसी तक पहुंचना।
- उपयोगकर्ता द्वारा निर्देशित कार्रवाइयों को प्रसारित और नियंत्रित करना।
- हार्डवेयर सेंसर पढ़ना।
- कई माइक्रो-कंट्रोलर के साथ संचार करना।