रास्पबेरी पीआई जीपीआईओ का एक दौरा

09 का 01

रास्पबेरी पीआई पिन के लिए एक परिचय

रास्पबेरी पीआई जीपीआईओ। रिचर्ड Saville

शब्द 'जीपीआईओ' (सामान्य प्रयोजन इनपुट आउटपुट) रास्पबेरी पीआई के लिए विशिष्ट नहीं है। इनपुट और आउटपुट पिन अधिकांश माइक्रोकंट्रोलर जैसे आर्डिनो, बीगलबोन और अधिक पर पाए जा सकते हैं।

जब हम रास्पबेरी पी के साथ जीपीआईओ के बारे में बात करते हैं, तो हम बोर्ड के ऊपरी-बाएं कोने में पिन के लंबे ब्लॉक का जिक्र कर रहे हैं। पुराने मॉडल में 26 पिन थे, हालांकि हम में से अधिकांश 40 के साथ मौजूदा मॉडल का उपयोग करेंगे।

आप इन पिनों में घटकों और अन्य हार्डवेयर उपकरणों को जोड़ सकते हैं, और वे क्या करते हैं इसे नियंत्रित करने के लिए कोड का उपयोग कर सकते हैं। यह रास्पबेरी पीई का एक महत्वपूर्ण हिस्सा है और इलेक्ट्रॉनिक्स के बारे में जानने का एक शानदार तरीका है।

कुछ सॉफ्टवेयर प्रोजेक्ट्स के बाद, आप शायद इन पिनों के साथ प्रयोग कर पाएंगे, जो आपके वास्तविक कोड को 'वास्तविक जीवन' में करने के लिए हार्डवेयर के साथ मिश्रण करने के लिए उत्सुक हैं।

यह प्रक्रिया भयभीत हो सकती है यदि आप दृश्य में नए हैं, और इस बात पर विचार करते हुए कि एक झूठी चाल आपके रास्पबेरी पी को नुकसान पहुंचा सकती है, तो यह समझ में आता है कि शुरुआती लोगों के लिए यह एक घबराहट क्षेत्र है।

यह आलेख बताएगा कि प्रत्येक प्रकार का जीपीआईओ पिन क्या करता है और उनकी सीमाएं क्या होती हैं।

02 में से 02

जीपीआईओ

जीपीआईओ पिन 1 से 40 गिने जाते हैं, और विभिन्न कार्यों के तहत समूहित किया जा सकता है। रिचर्ड Saville

सबसे पहले, पूरी तरह से जीपीआईओ को देखें। पिन एक जैसा दिख सकते हैं लेकिन उनके सभी अलग-अलग कार्य हैं। उपर्युक्त छवि इन कार्यों को विभिन्न रंगों में दिखाती है जिन्हें हम निम्नलिखित चरणों में समझाएंगे।

प्रत्येक पिन को नीचे बाईं ओर से 1 से 40 तक गिना जाता है। ये भौतिक पिन नंबर हैं, हालांकि, 'बीसीएम' जैसे संख्यात्मक / लेबलिंग सम्मेलन भी हैं जो कोड लिखते समय उपयोग किए जाते हैं।

03 का 03

पावर एंड ग्राउंड

रास्पबेरी पाई कई पावर और ग्राउंड पिन प्रदान करता है। रिचर्ड Saville

हाइलाइट लाल, 3.3V या 5V के लिए '3' या '5' लेबल वाले पावर पिन हैं।

ये पिन आपको किसी भी कोड की आवश्यकता के बिना किसी डिवाइस को सीधे बिजली भेजने की अनुमति देते हैं। इन्हें बंद करने का कोई तरीका नहीं है।

2 पावर रेल हैं - 3.3 वोल्ट और 5 वोल्ट। इस लेख के मुताबिक, 3.3 वी रेल 50 एमए वर्तमान ड्रॉ तक सीमित है, जबकि पीवी ने जो भी जरूरत है उसे लेने के बाद 5 वी रेल आपकी बिजली आपूर्ति से जो भी मौजूदा क्षमता छोड़ी जा सकती है, प्रदान कर सकती है।

हाइलाइटेड ब्राउन ग्राउंड पिन (जीएनडी) हैं। ये पिन ठीक वही हैं जो वे कहते हैं - ग्राउंड पिन - जो किसी भी इलेक्ट्रॉनिक्स प्रोजेक्ट का एक महत्वपूर्ण हिस्सा हैं।

(5 वी जीपीआईओ पिन भौतिक संख्या 2 और 4. 3.3 वी जीपीआईओ पिन भौतिक संख्या 1 और 17. हैं। ग्राउंड जीपीआईओ पिन भौतिक संख्या 6, 9, 14, 20, 25, 30, 34 और 3 9 हैं)

04 का 04

इनपुट / आउटपुट पिन

इनपुट और आउटपुट पिन आपको सेंसर और स्विच जैसे हार्डवेयर कनेक्ट करने की अनुमति देते हैं। रिचर्ड Saville

हरे रंग के पिन होते हैं जिन्हें मैं 'जेनेरिक' इनपुट / आउटपुट पिन कहते हैं। I2C, SPI या UART जैसे अन्य कार्यों के साथ संघर्ष करने के बारे में किसी भी चिंता के बिना इन्हें इनपुट या आउटपुट के रूप में आसानी से उपयोग किया जा सकता है।

ये पिन हैं जो एलईडी, बजर, या अन्य घटकों को बिजली भेज सकते हैं, या सेंसर, स्विच या अन्य इनपुट डिवाइस को पढ़ने के लिए इनपुट के रूप में उपयोग किए जा सकते हैं।

इन पिनों की आउटपुट पावर 3.3V है। प्रत्येक पिन वर्तमान में 16 एमए से अधिक नहीं होनी चाहिए, या तो डूबने या सोर्सिंग, और जीपीआईओ पिन का पूरा सेट किसी भी समय 50 एमए से अधिक नहीं होना चाहिए। यह प्रतिबंधित हो सकता है, इसलिए आपको कुछ परियोजनाओं में रचनात्मक होना पड़ सकता है।

(जेनेरिक जीपीआईओ पिन भौतिक संख्या 7, 11, 12, 13, 15, 16, 18, 22, 2 9, 31, 32, 33, 35, 36, 37, 38 और 40) हैं

05 में से 05

I2C पिन

I2C आपको अन्य डिवाइसों को केवल कुछ पिन के साथ अपने पीआई से कनेक्ट करने की अनुमति देता है। रिचर्ड Saville

पीले रंग में, हमारे पास I2C पिन हैं। I2C एक संचार प्रोटोकॉल है जो सरल शब्दों में उपकरणों को रास्पबेरी पीआई के साथ संवाद करने की अनुमति देता है। इन पिनों को 'जेनेरिक' जीपीआईओ पिन के रूप में भी इस्तेमाल किया जा सकता है।

I2C का उपयोग करने का एक अच्छा उदाहरण बहुत लोकप्रिय एमसीपी 23017 पोर्ट एक्सपेंडर चिप है, जो आपको इस I2C प्रोटोकॉल के माध्यम से अधिक इनपुट / आउटपुट पिन दे सकता है।

(आई 2 सी जीपीआईओ पिन भौतिक पिन नंबर 3 और 5 हैं)

06 का 06

यूएआरटी (सीरियल) पिन

यूआरएटी पिन के साथ एक सीरियल कनेक्शन पर अपने पीआई से कनेक्ट करें। रिचर्ड Saville

ग्रे में, यूएआरटी पिन हैं। ये पिन एक और संचार प्रोटोकॉल हैं जो सीरियल कनेक्शन प्रदान करता है, और इसे 'जेनेरिक' जीपीआईओ इनपुट / आउटपुट के रूप में भी इस्तेमाल किया जा सकता है।

यूएआरटी के लिए मेरा पसंदीदा उपयोग यूएसबी पर अपने पीसी से अपने लैपटॉप से ​​सीरियल कनेक्शन सक्षम करना है। यह ऐड-ऑन बोर्ड या सरल केबल्स का उपयोग करके हासिल किया जा सकता है और आपके पीआई तक पहुंचने के लिए स्क्रीन या इंटरनेट कनेक्शन की आवश्यकता को हटा देता है।

(यूएआरटी जीपीआईओ पिन भौतिक पिन नंबर 8 और 10 हैं)

07 का 07

एसपीआई पिन

एसपीआई पिन - एक और उपयोगी संचार प्रोटोकॉल। रिचर्ड Saville

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

दूसरों की तरह, इन पिनों को 'जेनेरिक' जीपीआईओ इनपुट / आउटपुट के रूप में भी इस्तेमाल किया जा सकता है।

(एसपीआई जीपीआईओ पिन भौतिक पिन नंबर 1 9, 21, 23, 24 और 26 हैं)

08 का 08

डीएनसी पिन

यहां देखने के लिए कुछ भी नहीं - डीएनसी पिन कोई काम नहीं करते हैं। रिचर्ड Saville

आखिरकार नीले रंग में दो पिन हैं, वर्तमान में, डीएनसी के रूप में लेबल किए गए हैं जो 'डॉट कनेक्ट नहीं' के लिए खड़े हैं। यदि भविष्य में रास्पबेरी पी फाउंडेशन बोर्ड / सॉफ्टवेयर को बदलता है तो यह भविष्य में बदल सकता है।

(डीएनसी जीपीआईओ पिन भौतिक पिन संख्या 27 और 28 हैं)

09 में से 09

जीपीआईओ नंबरिंग सम्मेलन

पोर्ट्सप्लस जीपीआईओ पिन नंबरों की जांच के लिए एक आसान उपकरण है। रिचर्ड Saville

जीपीआईओ के साथ कोडिंग करते समय, आपके पास जीपीआईओ लाइब्रेरी को दो तरीकों से आयात करने का विकल्प होता है - बीसीएम या बोर्ड।

मैं पसंद विकल्प जीपीआईओ बीसीएम है। यह ब्रॉडकॉम नंबरिंग सम्मेलन है और मुझे लगता है कि यह परियोजनाओं और हार्डवेयर ऐड-ऑन में अधिक सामान्य रूप से उपयोग किया जाता है।

दूसरा विकल्प जीपीआईओ बोर्ड है। यह विधि भौतिक पिन नंबरों का उपयोग करती है, जो पिन की गिनती करते समय आसान होती है, लेकिन आप पाएंगे कि यह प्रोजेक्ट उदाहरणों में कम उपयोग किया जाता है।

जीपीआईओ मोड जीपीआईओ लाइब्रेरी आयात करते समय सेट किया गया है:

बीसीएम के रूप में आयात करने के लिए:

GPIO GPIO.setmode (GPIO.BCM) के रूप में RPi.GPIO आयात करें

बोर्ड के रूप में आयात करने के लिए:

GPIO GPIO.setmode (GPIO.BOARD) के रूप में RPi.GPIO आयात करें

इन दोनों विधियों में बिल्कुल वही काम है, यह केवल वरीयता की संख्या का मामला है।

मैं नियमित रूप से आसान जीपीआईओ लेबल बोर्डों का उपयोग करता हूं जैसे कि रसपी पोर्ट्सप्लस (चित्रित) यह जांचने के लिए कि मैं कौन से पिन तारों को जोड़ रहा हूं। एक तरफ बीसीएम नंबरिंग सम्मेलन दिखाता है, दूसरा बोर्ड दिखाता है - इसलिए आप जो भी प्रोजेक्ट ढूंढते हैं उसके लिए कवर किया जाता है।