विषयसूची:

रास्पबेरी पाई - PCA9536 इनपुट / आउटपुट विस्तारक पायथन ट्यूटोरियल: 4 कदम
रास्पबेरी पाई - PCA9536 इनपुट / आउटपुट विस्तारक पायथन ट्यूटोरियल: 4 कदम

वीडियो: रास्पबेरी पाई - PCA9536 इनपुट / आउटपुट विस्तारक पायथन ट्यूटोरियल: 4 कदम

वीडियो: रास्पबेरी पाई - PCA9536 इनपुट / आउटपुट विस्तारक पायथन ट्यूटोरियल: 4 कदम
वीडियो: Raspberry Pi PCA9536 Digital I/O Buzzer Python Tutorial 2024, नवंबर
Anonim
Image
Image

PCA9536 एक 8-पिन CMOS डिवाइस है जो I2C-bus/SMBus अनुप्रयोगों के लिए सामान्य प्रयोजन समानांतर इनपुट/आउटपुट (GPIO) विस्तार के 4 बिट प्रदान करता है। इसमें इनपुट या आउटपुट चयन के उद्देश्य को पूरा करने के लिए 4-बिट कॉन्फ़िगरेशन रजिस्टर, 4-बिट इनपुट पोर्ट रजिस्टर, 4-बिट आउटपुट पोर्ट रजिस्टर और 4-बिट पोलारिटी इनवर्जन रजिस्टर सक्रिय उच्च या सक्रिय कम ऑपरेशन शामिल हैं। यहाँ अजगर कोड का उपयोग करके रास्पबेरी पाई के साथ इसका प्रदर्शन है।

चरण 1: आपको क्या चाहिए..

जिसकी आपको जरूरत है..!!
जिसकी आपको जरूरत है..!!

1. रास्पबेरी पाई

2. पीसीए9536

3. आई²सी केबल

4. रास्पबेरी पाई के लिए I²C शील्ड

5. ईथरनेट केबल

चरण 2: कनेक्शन:

सम्बन्ध
सम्बन्ध
सम्बन्ध
सम्बन्ध
सम्बन्ध
सम्बन्ध
सम्बन्ध
सम्बन्ध

रास्पबेरी पाई के लिए एक I2C शील्ड लें और इसे रास्पबेरी पाई के gpio पिन पर धीरे से धकेलें।

फिर I2C केबल के एक सिरे को PCA9536 सेंसर से और दूसरे सिरे को I2C शील्ड से कनेक्ट करें।

ईथरनेट केबल को पीआई से भी कनेक्ट करें या आप वाईफाई मॉड्यूल का उपयोग कर सकते हैं।

ऊपर की तस्वीर में कनेक्शन दिखाए गए हैं।

चरण 3: कोड:

कोड
कोड

PCA9536 के लिए पायथन कोड हमारे जीथब रिपॉजिटरी- डीसीयूबीई स्टोर से डाउनलोड किया जा सकता है।

लिंक यहां दिया गया है

हमने अजगर कोड के लिए SMBus लाइब्रेरी का उपयोग किया है, रास्पबेरी पाई पर SMBus स्थापित करने के चरणों का वर्णन यहाँ किया गया है:

pypi.python.org/pypi/smbus-cffi/0.5.1

आप यहां से भी कोड कॉपी कर सकते हैं, यह इस प्रकार दिया गया है:

# फ्री-विल लाइसेंस के साथ वितरित।

# इसे किसी भी तरह से उपयोग करें, लाभ या मुफ्त, बशर्ते यह इसके संबंधित कार्यों के लाइसेंस में फिट बैठता है।

# पीसीए9536

# यह कोड PCA9536_I2CIO I2C मिनी मॉड्यूल के साथ काम करने के लिए डिज़ाइन किया गया है #

आयात smbus

आयात समय

# I2C बस प्राप्त करें

बस = smbus. SMBus(1)

# PCA9536 पता, 0x41(65)

# कॉन्फ़िगरेशन रजिस्टर चुनें, 0x03(03)

# 0xFF(255) इनपुट के रूप में कॉन्फ़िगर किए गए सभी पिन

बस.राइट_बाइट_डेटा (0x41, 0x03, 0xFF)

# स्क्रीन पर आउटपुट

प्रिंट "सभी पिन स्टेट हाई हैं"

समय सो जाओ (0.5)

# PCA9536 पता, 0x41(65)

# 0x00 (00), 1 बाइट से डेटा वापस पढ़ें

डेटा = बस.read_byte_data(0x41, 0x00)

# डेटा को 4-बिट्स में बदलें

डेटा = (डेटा और 0x0F)

मैं के लिए सीमा में (0, 4):

अगर (डेटा और (2 ** i)) == 0:

प्रिंट "I/O Pin %d State is Low" %i

अन्यथा:

प्रिंट "I/O Pin %d State is High" %i

समय सो जाओ (0.5)

चरण 4: अनुप्रयोग:

PCA9536 को I/O विस्तारक के रूप में नियोजित किया जा सकता है। अतिरिक्त इनपुट/आउटपुट की आवश्यकता होने पर यह एक सरल समाधान प्रदान करता है। आमतौर पर इसका उपयोग उन प्रणालियों में किया जाता है जिनमें एसीपीआई पावर स्विच, सेंसर, पुश बटन, एलईडी, पंखे आदि के लिए विस्तार की आवश्यकता होती है।

सिफारिश की: