मैं Arduino के साथ I2C उपकरणों का उपयोग कैसे करूं?


12

मेरे पास कुछ उपयोगी I2C घटक हैं, जैसे कि 16-बिट पोर्ट एक्सपैंडर (MCP23017), जो मैं विभिन्न परियोजनाओं में उपयोग करना चाहता हूं।

Arduino के साथ ये काम करने के लिए मुझे क्या करने की आवश्यकता है? क्या यह किसी भी Arduino के साथ काम करेगा, या क्या मुझे एक विशिष्ट बोर्ड या ढाल की आवश्यकता है?

जवाबों:


9

Arduino में वायर लाइब्रेरी है जो I2C के साथ संचार करती है।

यह लाइब्रेरी आपको I2C / TWI उपकरणों के साथ संवाद करने की अनुमति देती है। R3 लेआउट (1.0 पिनआउट) के साथ Arduino बोर्डों पर, SDA (डेटा लाइन) और SCL (क्लॉक लाइन) areF पिन के करीब पिन हेडर पर हैं। Arduino ड्यू के पास दो I2C / TWI इंटरफेस हैं SDA1 और SCL1, अरे पिन के पास हैं और अतिरिक्त एक पिन 20 और 21 पर है। नीचे दिए गए तालिका के संदर्भ के अनुसार, जहां TWI पिन विभिन्न ल्यूडिनो बोर्ड पर स्थित हैं।

बोर्ड I2C / TWI पिन

  • ऊनो, ईथरनेट A4 (SDA), A5 (SCL)
  • मेगा2560 20 (एसडीए), 21 (एससीएल)
  • लियोनार्डो 2 (एसडीए), 3 (एससीएल)
  • कारण 20 (एसडीए), 21 (एससीएल), एसडीए 1, एससीएल 1

आप इस उदाहरण पर एक नज़र डाल सकते हैं।

जैसे @ TheDoctor ने कहा:

I2C डेटा लाइनों को 3.3V के लिए प्रतिरोधों की आवश्यकता होती है। यह उन्हें निष्क्रिय होने से रोकता है। एंडी रोकनेवाला मूल्य काम करना चाहिए, लेकिन इसे 10k ओम और 47k ओम के बीच एक का उपयोग करने की सिफारिश की जाती है।


1
I2C की तर्ज पर पुलअप
रेसिस्टर्स को

1
उस पर विस्तार करने के लिए, i2c डेटा लाइनों दोनों को 5v के लिए प्रतिरोधों की आवश्यकता होती है। यह उन्हें निष्क्रिय होने से रोकता है। एंडी रोकनेवाला मूल्य काम करना चाहिए, लेकिन इसे 10k ओम और 47k ओम के बीच एक का उपयोग करने की सिफारिश की जाती है
TheDoctor

यह कहा जाना चाहिए कि यदि आप Arduino पर 5V पुलअप का उपयोग करते हैं (जो उत्तर में नामित किया गया था) तो आपने बोर्ड को नुकसान पहुंचाया है। Arduino ड्यू 3.3V तर्क का उपयोग करता है और इसे 5V पुलअप की आवश्यकता नहीं होती है, साथ ही SDA और SCL को पहले ही बोर्ड द्वारा आंतरिक रूप से खींच लिया जाता है।
जॉन

3

अतिरिक्त ढाल की जरूरत नहीं है।

आपको डिवाइस को एसडीए और एससीएल से जोड़ने के लिए केवल वायर लाइब्रेरी और कुछ तारों की आवश्यकता है ।

इन पिनों की स्थिति विभिन्न Arduinos पर अलग है, कृपया यहां देखें


2

भविष्य के पाठकों के लिए: Adafruit_MCP23017 लाइब्रेरी का उपयोग करें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.