ट्रांजिस्टर से बाहर एक XOR गेट बनाओ

ट्रांजिस्टर से बाहर एक XOR गेट बनाएं: 6 कदम

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

आपूर्ति:

चरण 1: डिजाइन

एक्सओआर व्यवहार को प्राप्त करने का एक तरीका नियमित ओआर या गेट लेना है, फिर उस मामले से निपटें जहां दोनों इनपुट सकारात्मक हैं। यदि हम इनपुट्स के लिए AND गेट टाई करते हैं, तो हम एक संकेत प्राप्त कर सकते हैं जब वह मामला दिखाता है। फिर हम उस सिग्नल को ले सकते हैं, उसे उल्टा कर सकते हैं, फिर उस और OR गेट के आउटपुट को दूसरे AND गेट से बाँध सकते हैं।यह ऐसा कर देगा ताकि जब भी ऐसा न हो कि दोनों इनपुट चालू हैं, तो OR गेट बस दूसरे AND गेट से होकर गुजरेगा, लेकिन जब दोनों इनपुट हाई जाएंगे, तो पहला और गेट दूसरा और गेट बंद कर देगा और रख देगा OR गेट की स्थिति की परवाह किए बिना आउटपुट बंद।

एक समायोजन जो मैंने अंतिम सर्किट में किया था, वह एक नंद द्वार के लिए AND / NOT संयोजन को बदल रहा है, जो सिर्फ एक औंधा और द्वार है। जिस तरह से यह काम बाद में स्पष्ट हो जाएगा।

अब उसी योजनाबद्ध को लिखने की सुविधा देता है, लेकिन ट्रांजिस्टर और प्रतिरोधों के साथ। ट्रांजिस्टर का प्रकार मैंने उपयोग किया 2N2222 BJT, जो काफी सामान्य है (2N4401 और 2N3904 भी काम करते हैं)। मैंने 6 ट्रांजिस्टर, 3 20k ओम रेसिस्टर्स, 3 47k ओम रेसिस्टर्स, 1 510 ओम रेसिस्टर, दो पुशबटन और एक एलईडी का उपयोग किया। मैंने अपने 5v शक्ति स्रोत, और 0.1mA, या 0.0001A 2N2222 के लिए न्यूनतम वर्तमान के आधार पर इन अवरोधक मूल्यों को चुना। यदि आप ओम के नियम का उपयोग उन मूल्यों के लिए सही प्रतिरोध की गणना करने के लिए करते हैं जो आपको 50,000 ओम मिलते हैं। 47k ओम लोअर नंद गेट के लिए पर्याप्त है, लेकिन OR गेट के लिए कम मूल्य और दूसरा एंड गेट का पहला इनपुट क्यों है? इसका कारण यह है कि OR गेट को बनाने वाले ट्रांजिस्टर के उत्सर्जक को दूसरे ट्रांजिस्टर के आधार के माध्यम से ऊपर झुका दिया जाता है इसलिए सीधे दूसरे ग्राउंडर के माध्यम से चलता है, सीधे जमीन पर नहीं। (एलईडी का वर्तमान सीमित रोकनेवाला एक पर्याप्त पर्याप्त मूल्य है जो इस गणना में महत्वहीन है)।

चरण 2: ट्रांजिस्टर, बटन और एलईडी जोड़ना

चरण 3: प्रतिरोधों को जोड़ना

चरण 4: तारों को जोड़ना

जिस तरह से मैं अपने बोर्ड को पावर कर रहा हूं, वह 5v और 500mA अधिकतम करंट पर सेट होने वाली लैब बेंच पावर सप्लाई के लिए पावर रेल को हुक कर रहा है। एक Arduino के 5V और GND पिंस को पावर अप करके उसी तरह के इनपुट को प्राप्त किया जा सकता है, लेकिन वास्तव में 5v पावर सप्लाई का काम करता है (हालांकि घटकों को उड़ाने के जोखिम को कम करने के लिए वर्तमान सीमित सिफारिश की जाती है)।

चरण 5: परीक्षण और समस्या निवारण

अब जब कि यह झुका हुआ है, तो मैं आपको अपना परीक्षण करने दूँगा। यदि एक या दूसरे बटन को धक्का दिया जाता है, तो एलईडी को प्रकाश देना चाहिए। हालांकि, दोनों को धक्का दिया जाता है, तो एलईडी बंद हो जाएगी।

सामान्य समस्यायें

  1. यदि एक इनपुट ऐसा नहीं लगता है जैसे उसे काम करना चाहिए, और वह मामला जहां दोनों इनपुट अभी भी एक शून्य प्रदान करते हैं, तो उस बटन को धक्का दिए जाने पर OR गेट के आने वाले गेट के इनपुट पर वोल्टेज की जांच करें। यदि यह कम (<2V) है, तो OR से AND गेट तक जाने वाले अवरोधक के प्रतिरोध को कम करें।
  2. यदि गेट अभी भी एक OR गेट की तरह काम करता है, तो इसका मतलब है कि जब दोनों इनपुट आउटपुट पर हैं, तो NAND गेट से आने वाले AND गेट के इनपुट में आने वाले वोल्टेज की जांच करें। यदि दोनों बटन दबाए जाने पर यह अधिक होता है, तो सुनिश्चित करें कि AND गेट में आपके ट्रांजिस्टर काम कर रहे हैं, और दोनों बटन दबाए जाने पर वहां से प्रतिरोध की जाँच करें। यदि वह प्रतिरोध अधिक है, और / या वह वोल्टेज कम है, तो उन दो ट्रांजिस्टर को बदलें, या NAND गेट्स के इनपुट के प्रतिरोध को कम करें।

चरण 6: अधिक चाहते हैं?

अगर आपको यह निर्देश पसंद आया है तो आगे बढ़ें और अमेज़ॅन पर मेरी किताब देखें "द बिगिनर्स गाइड टू अरुडिनो।" यह मूल सर्किटरी सिद्धांतों के साथ-साथ Arduino को प्रोग्राम करने के लिए उपयोग किए जाने वाले C ++ कोड पर भी जाता है।