हर इलेक्ट्रॉनिक्स इंजीनियर को इलेक्ट्रॉनिक्स चीजों को तोड़ना और यह पता लगाना पसंद है कि इसके अंदर क्या मौजूद है। हाल ही में मैंने एक एलईडी टीवी खोला और इसके अंदर एआरएम चिप पाया । एआरएम आधारित माइक्रोकंट्रोलर का उपयोग विभिन्न प्रकार के एम्बेडेड उत्पादों और प्रणालियों में किया जाता है। उनमें कई उन्नत सुविधाएँ शामिल हैं जो उन्हें 8051, AVR और PIC जैसे अन्य माइक्रोकंट्रोलरों से शक्तिशाली और श्रेष्ठ बनाती हैं। LPC2148 सबसे अधिक इस्तेमाल किए जाने वाले ARM आधारित माइक्रोकंट्रोलर में से एक है, इसलिए हम LPC2148 ट्यूटोरियल और प्रोजेक्ट की एक श्रृंखला बनाएंगे और आगामी लेखों में साझा करेंगे। यहाँ इस श्रृंखला में पहला ट्यूटोरियल है जिसमें LPC2148 के साथ शुरुआत हो रही है और इसे एलईडी ब्लिंक करने का कार्यक्रम दिया गया है ।
तो इस ट्यूटोरियल में हम ARM7 स्टिक - LPC2148 के बारे में जानेंगे और सीखेंगे कि इसे सॉफ्टवेयर Keil uVision और Flash मैजिक के साथ कैसे प्रोग्राम किया जाए। हम एक एलईडी ब्लिंक करने के लिए हमारे LPC2148 कार्यक्रम करेंगे।
एआरएम माइक्रोकंट्रोलर
चरण 17: अब उत्पादन टैब के अंतर्गत टिक हेक्स फ़ाइल बनाने और उसके बाद 'ठीक'
Step 18: अब BUILD आइकन पर क्लिक करें या हेक्स फाइल बनाने के लिए F7 दबाएं।
चरण 19: अब हेक्स फ़ाइल बनाई गई है और हम इसे नीचे की ओर नोट कर सकते हैं। इस छवि के नीचे जैसा कि यह इंगित करता है कि हेक्स फ़ाइल बनाई गई है।
चरण 20: अब एआरएम 7 स्टिक में हेक्स फ़ाइल को फ्लैश करने का समय है । इसलिए फ्लैश मैजिक खोलें
फ्लैश मैजिक टूल ऊपर दिखाई देता है।
नीचे एआरएम LPC2148 चमकती के लिए कदम हैं:
- LPC2148 का चयन करें
- डिवाइस मैनेजर के अनुसार COM पोर्ट नंबर दें (मेरा COM7 था)
- 38400 के रूप में बॉड रेट दें
- 12 मेगाहर्ट्ज के रूप में थरथरानवाला
- टिक "फर्मवेयर द्वारा उपयोग किए गए ब्लॉक मिटाएं"
- अब हेक्स फ़ाइल पथ का चयन करें
- प्रोग्रामिंग चेकबॉक्स के बाद टिक को सत्यापित करें।
- और START पर क्लिक करें
सेकंड में सफलतापूर्वक चमकने के बाद, समाप्त (हरे रंग में) नीचे दिखाई देता है जैसा कि नीचे की छवि में दिखाया गया है
अब आप देख सकते हैं कि एलईडी ब्रेडबोर्ड पर झपकी लेना शुरू कर देता है
कोडिंग स्पष्टीकरण
LPC2148 के साथ निमिष एलईडी के लिए पूरा कोड नीचे दिया गया है। कोड सरल है और आसानी से समझा जा सकता है।
इस हेडर फ़ाइल में माइक्रोकंट्रोलर्स की LPC214x श्रृंखला की सभी फाइलें शामिल हैं।
#शामिल
जैसा कि हमने आउटपुट को P0.10 से जोड़ा है, यह आईओडीआईआर रजिस्टर का उपयोग करता है और आउटपुट के रूप में पिन पोर्ट 0 पिन 10 बनाता है।
IO0DIR = (1 << 10);
यह रजिस्टर P0.10 को हाई ऑन एलईडी बनाने के लिए सेट करता है।
IO0SET = (1 << 10);
यह रजिस्टर P0.10 को एलओयू बनाने वाले एलओयू को साफ करता है
IO0CLR = (1 << 10);
कोड को लगातार निष्पादित करने के लिए लूप जबकि नीचे कथन मौजूद हैं
जबकि (1) { IO0SET = (1 << 10); delay_ms (1000); IO0CLR = (1 << 10); delay_ms (1000); }
1 सेकंड के अंतराल में एलईडी को ब्लिंक करने के लिए SET और CLR के बीच देरी का समय बनाने के लिए Functions delay_ms का उपयोग किया जाता है।
एक प्रदर्शन वीडियो के साथ पूरा कोड नीचे दिया गया है।