विषयसूची:

7 खंड के साथ प्रोटीन में Pic18f4520 का उपयोग कर स्टॉपवॉच: 6 कदम
7 खंड के साथ प्रोटीन में Pic18f4520 का उपयोग कर स्टॉपवॉच: 6 कदम

वीडियो: 7 खंड के साथ प्रोटीन में Pic18f4520 का उपयोग कर स्टॉपवॉच: 6 कदम

वीडियो: 7 खंड के साथ प्रोटीन में Pic18f4520 का उपयोग कर स्टॉपवॉच: 6 कदम
वीडियो: गाय भैंस को पीक पर लाकर दुध की नदियां बहाने वाला फॉर्मूला जो बच्चा देने के 15 दिन बाद देना है 2024, नवंबर
Anonim
7 सेगमेंट के साथ प्रोटीन में Pic18f4520 का उपयोग करके स्टॉपवॉच
7 सेगमेंट के साथ प्रोटीन में Pic18f4520 का उपयोग करके स्टॉपवॉच

मैंने अभी-अभी पिक कंट्रोलर के साथ काम करना शुरू किया है, मेरे एक दोस्त ने मुझसे एक स्टॉपवॉच बनाने का अनुरोध किया। इसलिए मेरे पास साझा करने के लिए हार्डवेयर छवि नहीं है, मैंने कोड लिखा है और इसे प्रोटीन सॉफ्टवेयर पर सिम्युलेटेड किया है।

यहाँ मैंने उसी के लिए योजनाबद्ध साझा किया है।

तीन चर मिलीसेकंड, सेकंड, मिनट परिभाषित हैं

यहां हमने 10 एमएस के टाइमर इंटरप्ट का उपयोग किया है, प्रत्येक 1000 मिलीसेकंड के लिए, सेकंड वेरिएबल बढ़ जाएगा, हर 60 सेकंड मिनट के लिए वैरिएबल बढ़ेगा।

चरण 1: आवश्यक चीज़ें

1 pic18f4520 नियंत्रक

2 सात खंड प्रदर्शित करता है

3 बीसी547 ट्रांजिस्टर

स्टार्ट/स्टॉप/रीसेट के लिए 4 स्विच

5 प्रतिरोधक 330E, 10K, 1K

6 तस्वीर के लिए mikroC डाउनलोड करें

7 प्रोटीस डाउनलोड करें

चरण 2: कोड तर्क और प्रदर्शन

कोड तर्क और प्रदर्शन
कोड तर्क और प्रदर्शन
कोड तर्क और प्रदर्शन
कोड तर्क और प्रदर्शन

सेवन सेगमेंट डिस्प्ले क्या है? सेवन सेगमेंट डिस्प्ले (SSD) सबसे आम, सस्ता और उपयोग में आसान डिस्प्ले में से एक है। यह ऊपर जैसा दिखता है।

यहां हमें सामान्य कैथोड प्रकार के 7 सेगमेंट डिस्प्ले का उपयोग करना है - सामान्य कैथोड प्रकार एसएसडी में, सभी एल ई डी का -वे टर्मिनल आमतौर पर 'COM' पिन से जुड़ा होता है। एक खंड को तब रोशन किया जा सकता है जब संबंधित एलईडी खंड को '1' दिया जाता है और जमीन को आम से जोड़ा जाता है। आंतरिक चित्र 2 में दिए गए हैं।

चरण 3: माइक्रोकंट्रोलर के साथ ड्राइविंग डिस्प्ले

माइक्रोकंट्रोलर के साथ ड्राइविंग डिस्प्ले
माइक्रोकंट्रोलर के साथ ड्राइविंग डिस्प्ले

अपने सर्किट में, मैंने NPN BC547 ट्रांजिस्टर का उपयोग किया है।

एक स्विच के रूप में बीजेटी के सरल उपयोग के लिए, बेस टर्मिनल पर इनपुट सिग्नल होने पर एमिटर-कलेक्टर जंक्शन छोटा हो जाता है, अन्यथा यह कट-ऑफ रहता है। इनपुट एक उपयुक्त रोकनेवाला के माध्यम से दिया जाना चाहिए।

चरण 4: मल्टीप्लेक्सिंग क्यों?

अक्सर हमें दो, तीन या अधिक एसएसडी का उपयोग करने की आवश्यकता होती है और वह भी केवल एक एमसीयू का उपयोग करते हुए, लेकिन एक समस्या जिसका हम सामना करते हैं वह एमसीयू में आई/ओ पिन की कमी है, क्योंकि एक एसएसडी 8 पिन लेता है, और इसलिए तीन एसएसडी 24 पिन लेगा। Pic18 में, हमारे पास केवल 48 I/O पिन हैं। तो समाधान क्या है?

एक संभावना यह है कि हम अधिक I/O पिन वाले बड़े MCU का उपयोग करते हैं। लेकिन फिर भी हम अधिकतम 3 एसएसडी तक ही सीमित हैं जिनका उपयोग किया जा सकता है। इस समस्या का एक और बेहतर और अनुशंसित समाधान सेवन सेगमेंट डिस्प्ले को मल्टीप्लेक्स करना है।

विकिपीडिया कहता है 'दूरसंचार और कंप्यूटर नेटवर्क में, मल्टीप्लेक्सिंग (मक्सिंग के रूप में भी जाना जाता है) एक ऐसी विधि है जिसके द्वारा एक साझा माध्यम पर कई एनालॉग संदेश सिग्नल या डिजिटल डेटा स्ट्रीम को एक सिग्नल में जोड़ा जाता है। उद्देश्य एक महंगे संसाधन को साझा करना है। सात-खंड डिस्प्ले के मल्टीप्लेक्सिंग से हमारा मतलब यह है कि हम सभी एसएसडी पर डिस्प्ले देने के लिए केवल 7 आउटपुट पोर्ट का उपयोग करेंगे।

चरण 5: इसे कैसे प्राप्त करें?

यहां, हम 'दृढ़ता की दृष्टि' का उपयोग करेंगे। अब आपके पास पहले से ही इस अवधि के पार होना चाहिए। हाँ, यह वही तकनीक है जिसका उपयोग सिनेमैटोग्राफी में किया जाता है (छवियों को इतनी तेज़ी से प्रदर्शित करें कि हमारा मस्तिष्क लगातार दो छवियों के बीच किसी भी अंतराल को भेद न सके)। इसी तरह, जब हम एक से अधिक एसएसडी को मिलाते हैं, तो हम एक समय में केवल एक एसएसडी प्रदर्शित करते हैं, और हम उनके बीच इतनी तेजी से स्विच करते हैं कि हमारा दिमाग उनके बीच अंतर नहीं कर सकता।

मान लें कि प्रत्येक डिस्प्ले एक बार में केवल 5 मिलीसेकंड के लिए सक्रिय है, यानी यह एक सेकंड में 1/0.0045 बार प्रकाश करता है, जो लगभग 222 गुना/सेकंड के बराबर है। हमारी आंखें इतनी तेजी से किसी बदलाव को महसूस नहीं कर पाती हैं और इस तरह हम जो देखते हैं वह यह है कि सभी डिस्प्ले एक साथ काम कर रहे हैं। हार्डवेयर में वास्तव में क्या हो रहा है कि MCU पिन को '1' देता है (याद रखें, BJT के आधार को '1' देकर कलेक्टर और एमिटर जंक्शन को छोटा करता है?), जो ट्रांजिस्टर के आधार से जुड़ा है संबंधित डिस्प्ले, पोर्ट को 5 मिलीसेकंड के लिए 'चालू' रखता है, और फिर इसे फिर से बंद कर देता है। इस प्रक्रिया को एक अंतहीन लूप में रखा जाता है, ताकि हम डिस्प्ले को लगातार देखें।

चरण 6: बहुसंकेतन एल्गोरिथ्म

बहुसंकेतन एल्गोरिथ्म
बहुसंकेतन एल्गोरिथ्म

कोड में दो पोर्ट परिभाषित करें, एक सेगमेंट डेटा पोर्ट और सेगमेंट कंट्रोल पोर्ट के लिए।

ट्रिक यहाँ है कि आप सभी 7 सेगमेंट पर डेटा प्रदर्शित करते हैं। और उस एक कंट्रोल पिन को सक्रिय करें जिस पर आपको वह डेटा प्रदर्शित करना है। डेटा और शिफ्ट कंट्रोल पिन बदलें।

यहाँ इस निर्देश में हमने ६ अंकों के मल्टीप्लेक्सिंग का उपयोग किया है, बस संलग्न सी फ़ाइल के माध्यम से जाएँ और आप इसे साफ़ कर देंगे।

सिफारिश की: