ओपन-ड्रेन माइक्रोकंटोलर पोर्ट


9

मैं 8051 माइक्रोकंट्रोलर के पोर्ट पी 0 जैसे ओपन-ड्रेन पोर्ट की अवधारणा को समझना चाहता हूं। हमें पोर्ट P0 पर प्रतिरोधों को खींचने के लिए कनेक्ट करने की आवश्यकता क्यों है?

मुझे MOSFETs और अन्य इलेक्ट्रॉनिक उपकरणों का बुनियादी ज्ञान है।


ठीक है तो मैं समझता हूं कि यह मूल रूप से किसी अन्य बंदरगाह की तरह काम करता है लेकिन हमें कुछ बाहरी स्रोत के माध्यम से बिजली की आपूर्ति देनी होगी। क्या मैं सही हू ?
abkds

जवाबों:


13

इनसाइड और आउटसाइज़ को अनदेखा करना कि कैसे काम करते हैं। आउटपुट ग्राउंड पर स्विच की तरह काम करता है। यह अपने आप में एक उच्च (+ 5 वी) सिग्नल का उत्पादन नहीं कर सकता है। पुल अप रोकनेवाला का उपयोग किया जाता है ताकि स्विच खुला रहने पर आउटपुट अधिक हो। जब स्विच बंद होता है तो आउटपुट कम (0V) होगा

यहां छवि विवरण दर्ज करें


9

बीजेटी के मामले में ओपन-ड्रेन (या ओपन-कलेक्टर) के दो सामान्य अनुप्रयोग हैं:

1) एक ही लाइन में एक से अधिक आउटपुट कनेक्ट करना। इसे वायर्ड-ओर कहा जाता है। उदाहरण के लिए, आपके पास एक डिवाइस पर सामान्य रूप से उच्च रीसेट पिन हो सकता है, जो कि एक माइक्रोकंट्रोलर पिन और एक अन्य स्रोत से रीसेट होता है, एक पुशबटन कहते हैं। रीसेट पिन एक पुल-अप रोकनेवाला के साथ उच्च बंधा हुआ है। माइक्रोकंट्रोलर एक ओपन-ड्रेन आउटपुट के रूप में कॉन्फ़िगर किया गया है। पुशबटन को धकेलने पर जमीन से बंधा होता है। यदि या तो माइक्रोकंट्रोलर अपने आउटपुट को 0 पर खींचता है, या पुशबटन को दबाया जाता है, तो डिवाइस रीसेट हो जाएगा।

ध्यान दें कि जब माइक्रोकंट्रोलर अपना आउटपुट पिन 1 पर सेट करता है, तो पिन लाइन से डिस्कनेक्ट हो जाता है। यह किसी भी वोल्टेज के साथ लाइन ("सोर्सिंग") नहीं चला रहा है, इसलिए जब पुशबटन लाइन को जमीन पर खींचता है, तो कोई कमी नहीं होती है।

चूँकि वायर्ड-या कॉन्फ़िगरेशन इतना उपयोगी है, यही कारण है कि पिन जैसे कि एक माइक्रोकंट्रोलर, रीसैप्ट लाइन्स, फ्लिप और फ्लॉप जैसे डिवाइसेज़ पर क्लियर और इनेबल्ड लाइन्स को रीसेट करते हैं, सभी "एक्टिव लो" होते हैं - जिसका अर्थ है कि वे आम तौर पर उच्च रूप से बंधे होते हैं (फिर से , एक पुल-अप रोकनेवाला के माध्यम से), और खुले-नाली के रूप में कॉन्फ़िगर किए गए कई उपकरणों में से कोई भी उन्हें कम खींच सकता है। इस तरह के इनपुट को आमतौर पर सिग्नल नाम के शीर्ष पर एक बार या एक अग्रणी के साथ सक्रिय-निम्न के रूप में नामित किया जाता है! (सीएलआर), या एक अनुगामी # चिह्न (सीएलआर #)।

2) विभिन्न आपूर्ति वोल्टेज से जुड़े उपकरणों को नियंत्रित करना। मान लें कि आपके पास एक रिले है जिसे 20 एमए की आवश्यकता है, लेकिन 5 वोल्ट का वोल्टेज। लेकिन आपका माइक्रोकंट्रोलर आउटपुट केवल 3.3v की पावर सप्लाई (VCC) वोल्टेज तक पिन चला सकता है। एक ओपन-ड्रेन आउटपुट के साथ, आप रिले के एक तरफ को 5 V से जोड़ सकते हैं, और दूसरे को माइक्रोकंट्रोलर के आउटपुट पिन से जोड़ सकते हैं। जब माइक्रोकंट्रोलर का आउटपुट 1 होता है, तो कुछ भी नहीं होता है (फिर से, पिन की तरह काम करता है) डिस्कनेक्ट हो जाता है। जब इसे 0 पर सेट किया जाता है, तो यह रिले सर्किट को पूरा करने और रिले को संचालित करने के निचले हिस्से को आधार बनाता है। इस तरह के एक आवेदन में, डिवाइस के डी-एनर्जेट होने पर माइक्रोकंट्रोलर को नुकसान से बचाने के लिए रिले कॉइल के पार "फ्लाई-बैक" डायोड रखना महत्वपूर्ण है।

ULN2803 (डार्लिंगटन ट्रांजिस्टर ऐरे) जैसे आउटपुट ड्राइवरों के लिए, आप 50 वी से अधिक के वोल्टेज से जुड़े भार को ड्राइव कर सकते हैं और एक लॉजिक संगत इनपुट के साथ उन्हें नियंत्रित कर सकते हैं।


a microcontroller can often sink more current (drive to ground) than it can source (drive to the VCC of the microcontroller)यह आधुनिक CMOS माइक्रोकंट्रोलर के साथ अब सच नहीं है
m.Alin

1
आपका दूसरा उपयोग मामला शायद ही कभी माइक्रोकंट्रोलर पर लागू होता है: ज्यादातर मामलों में उनके आईओ पिंस ग्राउंड-पावर अंतराल के बाहर वोल्टेज को बर्दाश्त नहीं कर सकते हैं (हालांकि कुछ लो-वोल्टेज चिप 5 वी सहिष्णु होने का दावा करते हैं)। कुछ माइक्रोचिप uc's पर RA4 पिन एक अपवाद था (है ??)। लेकिन 2003/2803 स्टाइल ड्राइवर चिप्स आपके दूसरे उपयोग के मामले का एक उत्कृष्ट उदाहरण है।
राउटर वैन Ooijen

MSP430, Atmel AVR, और Pic 16 / 18s के बीच, मुझे अभी तक एक आधुनिक माइक्रोकंट्रोलर देखना है जो वर्तमान की समान मात्रा को सिंक या स्रोत नहीं कर सकता है।
राहगीर

m.Alin, Wouter_van_Ooijen, Passerby - आपकी टिप्पणियों के लिए धन्यवाद, मैंने अपना उत्तर संपादित कर लिया है।
tcrosley

2

एक खुली नाली का उत्पादन केवल 0V से जुड़ा एक खुला-स्विच है। इसके माध्यम से करंट पास करने के लिए आपको इसमें करंट फीड करने की आवश्यकता होती है और इसे पुल-अप रेसिसटर के साथ किया जा सकता है। यदि आप पिन में करंट पास नहीं करते हैं तो आप वोल्टेज नहीं देख पाएंगे: -

यहां छवि विवरण दर्ज करें

यहां दो डिवाइस एक ही ओपन-ड्रेन आउटपुट साझा कर रहे हैं - पुल-अप रोकनेवाला को + 5 वी पर ध्यान दें। वास्तव में यह सर्किट तर्क करने के लिए "ओपन-ड्रेन" का उपयोग करता है - अगर या तो NAND गेट 1,1 के साथ "सक्रिय" है, तो वे बस को 0V तक खींच लेंगे। इस प्रकार बस को दिया गया तर्क है

इन्वर्ट ऑफ बस = एबी + सीडी

MOSFETs आमतौर पर खुले-नाली उपकरणों के रूप में उपयोग किए जाते हैं, हालांकि नियमित BJTs भी इस कार्य को कर सकते हैं। एक ओपन-ड्रेन आउटपुट एक नियमित सीएमओएस आउटपुट का सरलीकरण है - यह जमीन पर मुड़ने में तेज है, लेकिन यह परजीवी कैपेसिटर के चार्ज समय के कारण + लॉजिक के लिए वापसी यात्रा पर धीमा हो जाएगा।

विकी पर ओपन कलेक्टर एक अच्छा पढ़ा गया है - यह खुली नाली के समान है और लेख में उल्लेख किया गया है जैसा कि ऊपर दिखाया गया है।


0

1) tcrosley द्वारा जवाब में पहले बिंदु को सरल बनाने के लिए, एक आउटपुट के अंदर पुल-अप रोकनेवाला प्रदान नहीं करने का लाभ कई आउटपुट के बीच उस पुल-अप रोकनेवाला को साझा करने की क्षमता में है। तब आउटपुट समानांतर में वायर्ड हो जाते हैं और सभी साझा अवरोधक और जमीन से जुड़े होते हैं।

2) बिंदु "नीचे" रोकनेवाला (योजनाबद्ध में) वह जगह है जहां सर्किट के अन्य भागों द्वारा संयुक्त आउटपुट एकत्र किया जाता है। (बेशक, यह सब जमीन और आपूर्ति के संबंध में दूसरा तरीका हो सकता था।)

3) यदि आप कई आउटपुट से संयुक्त आउटपुट को इकट्ठा नहीं करना चाहते हैं (और सर्किट हर जगह एक ही वोल्टेज की आपूर्ति का उपयोग करता है), तो आप आउटपुट को बिना पुल-अप भागों के उपयोग नहीं करना चाहते हैं। अन्यथा, आपको "अपूर्ण" आउटपुट (एक तरह से) प्रदान किया जाता है, जिसे आप अपनी आवश्यकताओं के अनुसार अनुकूलित कर सकते हैं।


मैंने आपके पाठ की दीवार को गिने हुए पैराग्राफ में रखा है। आपके द्वारा किए गए कुछ हिस्सों या कथनों पर पढ़ते और टिप्पणी करते समय समझना आसान हो जाता है। ध्यान दें कि पैराग्राफ आपके उत्तर में संदर्भ के परिवर्तन से शुरू होते हैं।
Sparky256
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.