विषयसूची:

AVR माइक्रोकंट्रोलर प्रोग्रामिंग के लिए एक्सट्रीम बर्नर का उपयोग करना: 8 कदम
AVR माइक्रोकंट्रोलर प्रोग्रामिंग के लिए एक्सट्रीम बर्नर का उपयोग करना: 8 कदम

वीडियो: AVR माइक्रोकंट्रोलर प्रोग्रामिंग के लिए एक्सट्रीम बर्नर का उपयोग करना: 8 कदम

वीडियो: AVR माइक्रोकंट्रोलर प्रोग्रामिंग के लिए एक्सट्रीम बर्नर का उपयोग करना: 8 कदम
वीडियो: Tutorial:How to burn/program a hex file to a AVR microcontroller using AVR Studio,USBasp,Burn-O-Mat 2024, जुलाई
Anonim
AVR माइक्रोकंट्रोलर प्रोग्रामिंग के लिए चरम बर्नर का उपयोग करना
AVR माइक्रोकंट्रोलर प्रोग्रामिंग के लिए चरम बर्नर का उपयोग करना

आप सभी AVR उपयोगकर्ता बिरादरी, और जो अभी स्ट्रीम में प्रवेश कर रहे हैं, आप में से कुछ ने PIC माइक्रोकंट्रोलर के साथ शुरुआत की और कुछ ने ATMEL AVR के साथ शुरुआत की, यह आपके लिए लिखा गया है!

तो आपने एक USBASP खरीदा क्योंकि यह आपके Atmega डिवाइस, या शायद ATTINY रेंज पर ROM को फ्लैश करने के लिए सस्ता और प्रभावी है। इन्हें ओपन सोर्स यूएसबी-एएसपी के चीनी क्लोन के रूप में 5 डॉलर से कम में प्राप्त किया जा सकता है! AVRdude उन्हें प्रोग्राम करने का सॉफ्टवेयर है।

आप निस्संदेह जानते हैं कि एटमेल स्टूडियो का उपयोग करके एक हेक्स फ़ाइल कैसे उत्पन्न की जाती है (मैं अभी भी नवीनतम v7 के बजाय एवीआर स्टूडियो v4.19 का उपयोग करता हूं क्योंकि इसका स्नैपियर और मेरे लाइट सिंगल कोर सीपीयू लैपटॉप पर तेज़ है) / नेटबुक और WINAVR इंस्टॉल करें यदि आप इसे पढ़ रहे हैं डॉटनेट में लिखा कुछ भी धीमा चलता है! और बाद के संस्करणों को आपके लैपटॉप को कछुए की तरह चलाने के लिए डिज़ाइन किया गया है! आप AVR माइक्रोकंट्रोलर के लिए ATMEL से स्टूडियो के सबसे बड़े संस्करण स्टूडियो v4.19 का उपयोग कर सकते हैं, जब आपको बाद के चिप्स के लिए वास्तव में इसकी आवश्यकता हो तो संस्करण 7 पर स्विच कर सकते हैं, और प्रतीक्षा करने के बजाय काम करते हुए लैपटॉप पर अपना समय अधिक उत्पादक बना सकते हैं! मैं यही अनुशंसा करता हूं।

एक हेक्स फ़ाइल के साथ एटमेगा प्रोग्राम करने के लिए एक सामान्य एवीआर दोस्त कमांड लाइन, इस तरह चलती है:

फ्लैश के लिए लिखें: AVRdude -s -c avrisp -p t44 -P usb -U "flash:w:D:\ARDUINO\pwmeg1.hex:a"

यहां pwmeg1.hex इंटेल हेक्स फ़ाइल है जिसे माइक्रोकंट्रोलर लिंगो में "लक्षित एमसीयू" में "बर्न" या "फ्लैश" किया जाना है।

यह याद करने के लिए एक कौर है! आप बैच फ़ाइल लिख सकते हैं और इसे विंडोज़ में कमांड लाइन में चला सकते हैं, इसे write_flash.bat नाम दे सकते हैं। इसी तरह फ़्यूज़ पढ़ने के लिए, एक और कौर याद रखने वाली पंक्ति ! यह थकाऊ हो जाता है।

फ्लैश पढ़ने के लिए + eeprom:AVRdude -s -c avrisp -p t44 -P usb -U "flash:r:D:\ARDUINO\pwmeg1.hex:i" -U "eeprom:r::i"

इसका समाधान बिटबर्नर, खज़ामा प्रोग्रामर जैसे एवीआरड्यूड के लिए उपयोगकर्ता के अनुकूल जीयूआई फ्रंट-एंड टूल्स में से एक का उपयोग करना है, जो योग्यता में लगभग समान हैं। चरम बर्नर। मैंने फ्री टू यूज़ टूल का उपयोग किया है: एक्स्ट्रीम बर्नर बहुत, इसका बहुमुखी, विश्वसनीय, और यह ट्यूटोरियल उसी के बारे में है। यह न केवल आपकी हेक्स फ़ाइल/प्रोग्राम को एमपीयू में फ्लैश कर सकता है, पृष्ठभूमि में AVRdude को जारी किए गए आदेशों का उपयोग करके, यह आपको FUSES सेट करने में भी मदद कर सकता है जो एक जटिल विषय है जो अक्सर शुरुआती को AVR प्रोग्रामिंग में भ्रमित करता है। यहां FUSES के विषय पर एक उत्कृष्ट ट्यूटोरियल का लिंक दिया गया है जिसे आप पढ़ सकते हैं या उस पर ब्रश कर सकते हैं। सावधानी का एक शब्द: ATMEL अपनी 'डिफ़ॉल्ट' स्थिति (अनसेट या अनप्रोग्राम्ड स्टेट) को इंगित करने के लिए FUSE बिट की '1' स्थिति का उपयोग करता है और इसके प्रोग्राम या सेट या सक्रिय स्थिति को इंगित करने के लिए '0' का उपयोग करता है! यह PIC माइक्रोकंट्रोलर में FUSE बिट्स के साथ आप जो करते हैं, उसके ठीक विपरीत है। सावधान रहें जब आप क्लॉक फ़्यूज़ बिट्स को संशोधित करते हैं जैसे आंतरिक आरसी घड़ी को बाहरी क्रिस्टल में बदलना क्योंकि यह बाहरी क्रिस्टल सेट-अप के बिना चिप से कनेक्ट करने में समस्या पैदा करेगा। इसी तरह सावधान रहें जब आप महत्वपूर्ण फ़्यूज़ बिट्स जैसे SPIEN और RESET DISABLE की स्थिति बदलते हैं (इन्हें हमेशा SPIEN = 0 और RESET DISABLE = 1 पर सेट किया जाना चाहिए यदि आप ISP / SPI मोड में अपने USB-ASP के साथ MCU के साथ संचार जारी रखना चाहते हैं) यदि आप इसे विफल करते हैं तो आपको अपने AVR को 'अनब्रिक' करने के लिए एक उच्च वोल्टेज प्रोग्रामर की आवश्यकता होगी।

यदि आप सोच रहे हैं कि "क्या फ़्यूज़ हैं" और "वे क्या करते हैं"? इस उत्कृष्ट लेखन को पढ़ें:

एक अन्य संबंधित विषय यह है कि अपने एवीआर एमपीयू की घड़ी की गति कैसे सेट करें जो 1 मेगाहर्ट्ज से 16 या 20 मेगाहर्ट्ज तक की गति में सक्षम है। एक एलस्पेशल ओउ पावर लो फ़्रीक्वेंसी क्रिस्टल विकल्प 31.25kHz भी है जिसे अगर ठीक से डिज़ाइन किया जाए तो आपका AVR 3 महीने के लिए AA बैटरी को चला सकता है!

ये दोनों, क्लॉक फ्यूज बिट्स (फ्रीक्वेंसी और टाइप ऑफ क्लॉक इंटरनल आरसी/एक्सटर्नल क्रिस्टल, और अन्य फ्यूज बिट्स) को एक्सट्रीम बर्नर में FUSES टैब के जरिए सेट किया जा सकता है। पहले हम आपको दिखाएंगे कि आप रोम पढ़ते हैं, और फिर एक्सट्रीम बर्नर का उपयोग करके हेक्स फ़ाइल को कैसे फ्लैश करें। बेशक, आप ऑनलाइन AVR फ़्यूज़ वेबसाइटों का भी उपयोग कर सकते हैं, लेकिन मेरे द्वारा समझाए गए विकल्प का उपयोग तब भी किया जा सकता है जब आप ऑफ़लाइन हों, कहीं भी।

चरण 1: बनाई जाने वाली सेटिंग्स:

बनाई जाने वाली सेटिंग्स
बनाई जाने वाली सेटिंग्स
बनाई जाने वाली सेटिंग्स
बनाई जाने वाली सेटिंग्स
बनाई जाने वाली सेटिंग्स
बनाई जाने वाली सेटिंग्स
बनाई जाने वाली सेटिंग्स
बनाई जाने वाली सेटिंग्स

चित्र आपके काम शुरू करने से पहले की जाने वाली सेटिंग्स को दिखाते हैं। (इसका केवल एक बार)। 'हार्डवेयर सेटिंग्स' सब-मेन्यू आइटम के तहत, हम 375Hz का चयन करते हैं क्योंकि ATMEL फैक्ट्री के अधिकांश MCU आंतरिक RC ऑसिलेटर पर 1 Mhz CPU घड़ी की डिफ़ॉल्ट सेटिंग्स पर सेट होते हैं। ISP की गति F_cpu का एक चौथाई है। इससे हमें 375 किलोहर्ट्ज़ निकटतम गति मिलती है, आप कम गति पर भी जा सकते हैं, इससे कोई खास फर्क नहीं पड़ेगा। आप इसे इसके डिफ़ॉल्ट पर छोड़कर कनेक्ट करने का प्रयास कर सकते हैं, और 'सभी पढ़ें' जारी कर सकते हैं, यदि यह विफल हो जाता है तो आप यहां आ सकते हैं और गति को कम कर सकते हैं।

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

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

चरण 2: अपना डिवाइस प्रकार सेट करना

अपना डिवाइस प्रकार सेट करना
अपना डिवाइस प्रकार सेट करना
अपना डिवाइस प्रकार सेट करना
अपना डिवाइस प्रकार सेट करना
अपना डिवाइस प्रकार सेट करना
अपना डिवाइस प्रकार सेट करना

स्क्रीनशॉट देखें, Pic 1, हमने "ATTINY44A" सेट किया है। यह UART के बिना 14 पिन वाला माइक्रोकंट्रोलर है। मैं हाल ही में इसका उपयोग कर रहा हूं, एसएसयू संस्करण। यदि आपने एक्सट्रीम बर्नर स्टॉक संस्करण स्थापित किया है, तो आपको डिवाइस चयन ड्रॉप डाउन सूची में Attiny44A दिखाई नहीं देगा, आपको एक Attiny44 दिखाई देगा, जिसका उपयोग हम सभी उद्देश्यों के लिए Attiny44A को प्रोग्राम करने के लिए भी कर सकते हैं, इस ड्रॉप डाउन सूची में सूचीबद्ध नहीं किए गए किसी भी उपकरण को पेश करने के लिए।, मेरे अन्य निर्देशयोग्य "हैकिंग एक्सट्रीम बर्नर" को पढ़ें।

मैं Atmega88PA-AU का उपयोग eXtreme बर्नर के साथ भी कर रहा हूं, लेकिन इस निर्देश में हम हर जगह "Attiny44A" का उल्लेख करते हैं। अब आप छोटे 7mm स्क्वायर SMD चिप का ब्रेडबोर्ड संस्करण कैसे बनाते हैं और अपने प्रोग्राम के साथ इसका परीक्षण कैसे करते हैं? (चिप के आकार को इंगित करने वाले चित्र देखें), इसके लिए, मेरे अन्य निर्देश योग्य देखें जहां मैं प्रदर्शित करता हूं कि कैसे Attiny44A-SSU और ATmega88PA-AU का उपयोग करके ब्रेडबोर्ड को प्लग-इन मॉड्यूल के अनुकूल बनाया जाए

एक बार जब आप इस तकनीक को सीख लेते हैं तो आप किसी भी चिप की जांच करने में सक्षम होंगे, चाहे वह एसएमडी या डीआईएल पैकेज हो। उदाहरण के लिए, मैंने 32-पिन 0.8 मिमी पिन पिच क्वाड पैकेज (Atmega88A) में समान तरीके से आने वाली SMD चिप का भी उपयोग किया है!

. या आप इस निर्देश के लिए Attiny44A के 28pin DIL संस्करण का उपयोग कर सकते हैं या AVR प्रोग्रामिंग के लिए एक्स्ट्रीम बर्नर को आज़माने के लिए जो भी AVR आप इस समय उपयोग कर रहे हैं।

चरण 3: सभी पढ़ें या फ्लैश पढ़ें

सभी पढ़ें या फ्लैश पढ़ें
सभी पढ़ें या फ्लैश पढ़ें
सभी पढ़ें या फ्लैश पढ़ें
सभी पढ़ें या फ्लैश पढ़ें

अपने USBasp को अपने लैपटॉप के USB पोर्ट से कनेक्ट करें, मुझे लगता है कि आपने अपने प्रोग्रामर के साथ आए सही ड्राइवरों को पहले ही लोड कर दिया है और इसका सही पता चल गया है। यह विंडोज़ स्टार्ट मेन्यू में 'डिवाइसेस एंड प्रिंटर्स' के तहत दिखना चाहिए, अगर यह यूएसबी पोर्ट में प्लग किया गया था! अपने लक्ष्य चिप को अपने USBasp से कनेक्ट करें (6 पिन या 10 पिन केबल का उपयोग करके प्रासंगिक SDI // ISP पिन को दोनों के बीच जोड़ा जाना चाहिए, अर्थात् पिन: MOSI, RESET, MISO, SCK, Vcc, ग्राउंड)।

Xtreme Burner के MENU से एक READ ALL जारी करें। हमें प्राप्त तस्वीरें और संदेश देखें। प्रारंभ में आपकी स्क्रीन ने बर्नर के पहले टैब में ROM के लिए 'FF' दिखाया, यह सब पढ़ने के बाद यह चिप पर वास्तविक ROM सामग्री दिखाएगा। यदि आपने फ़ैक्टरी ताज़ा चिप या मिटाई गई चिप का उपयोग किया है तो आपको "सभी पढ़ें" के बाद सामग्री में FF दिखाई देगा। एक अनप्रोग्राम्ड चिप अपनी मेमोरी में 'FF' दिखाएगा, इसी तरह एक EEPROM (प्रोग्रामर में दूसरा टैब), अंतिम टैब FUSES दिखाता है।

एक रीड के बाद सभी 3 टैब चिप में निहित सही जानकारी दिखाएंगे। इससे पहले ऐसा नहीं होगा, इसलिए जैसे ही आप सब कुछ कनेक्ट करते हैं, पहले सभी पढ़ें जारी करें।

चरण 4: फ्लैश को लिखें (आपकी हेक्स फाइल चिप पर रोम में फ्लैश हुई)

फ्लैश पर लिखें (आपकी हेक्स फाइल चिप पर रोम में फ्लैश हुई)
फ्लैश पर लिखें (आपकी हेक्स फाइल चिप पर रोम में फ्लैश हुई)
फ्लैश पर लिखें (आपकी हेक्स फाइल चिप पर रोम में फ्लैश हुई)
फ्लैश पर लिखें (आपकी हेक्स फाइल चिप पर रोम में फ्लैश हुई)
फ्लैश पर लिखें (आपकी हेक्स फाइल चिप पर रोम में फ्लैश हुई)
फ्लैश पर लिखें (आपकी हेक्स फाइल चिप पर रोम में फ्लैश हुई)

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

अब सॉफ्टवेयर के मेन्यू से एक राइट फ्लैश जारी करें। संदेश आपको दिखाएंगे कि क्या हो रहा है। तस्वीरें देखें।

एक सफल लेखन के बाद, आप 'FF' देखेंगे जो आपके प्रोग्राम या हेक्स फ़ाइल में एक ताज़ा या मिटाए गए ROM परिवर्तन को चिह्नित करता है। रॉम में आपकी फ़ाइल के आकार या बाइट्स की संख्या इस स्क्रीन को देखकर आपको भी पता चल जाती है, जो आपको आपके लक्ष्य चिप की वास्तविक रॉम सामग्री दिखाती है जिसे आपने अभी फ्लैश किया था।

सत्यापन चरण भी चिप को पढ़कर किया जाता है, जैसा कि हमने पहले चरण में किया था। संदेशों में यह देखा गया है कि सत्यापन भी सफल रहा।

चरण 5: फ़्यूज़: उन्हें चरम बर्नर में कैसे सेट करें

फ़्यूज़: उन्हें चरम बर्नर में कैसे सेट करें
फ़्यूज़: उन्हें चरम बर्नर में कैसे सेट करें

जब आपने रीड जारी किया तो चिप से सभी फ़्यूज़ पढ़े गए। यह पहली तस्वीर है जिसमें दिखाया गया है fuse.jpg।

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

आप बस एक ऑनलाइन फ़्यूज़ कैलकुलेटर का उपयोग कर सकते हैं और उन्हें भर सकते हैं। जैसे कि पर स्थित है

eleccelerator.com/fusecalc/fusecalc.php?

या आप इसे आपके लिए करने के लिए एक्स्ट्रीम बर्नर का उपयोग कर सकते हैं। ऑफ़लाइन स्वयं कभी भी: ड्रॉप डाउन सूची से चयन करें जो तब दिखाई देती है जब आप विवरण बटन पर क्लिक करते हैं जो प्रत्येक प्रकार के फ्यूज बाइट के नीचे होता है। DETAILS स्क्रीन में किसी भी लाइन पर बस डबल क्लिक करें और इसे SET से CLEARED में बदलते हुए देखें और प्रत्येक लाइन पर अपने माउस क्लिक से इसकी स्थिति को टॉगल करें। इसके ऊपर के बॉक्स में फ्यूज बाइट तदनुसार बदल जाएगा।

यदि आप सोच रहे हैं कि "क्या फ़्यूज़ हैं" और "वे क्या करते हैं"? इस बेहतरीन रचना को पढ़ें:

www.instructables.com/id/Avr-fuse-basics-Running-an-avr-with-an-external-cl/

चरण 6: चरम बर्नर फ्यूज कैलकुलेटर का उपयोग करके फ़्यूज़ सेट करना

चरम बर्नर फ्यूज कैलकुलेटर का उपयोग करके फ़्यूज़ सेट करना
चरम बर्नर फ्यूज कैलकुलेटर का उपयोग करके फ़्यूज़ सेट करना
चरम बर्नर फ्यूज कैलकुलेटर का उपयोग करके फ़्यूज़ सेट करना
चरम बर्नर फ्यूज कैलकुलेटर का उपयोग करके फ़्यूज़ सेट करना
चरम बर्नर फ्यूज कैलकुलेटर का उपयोग करके फ़्यूज़ सेट करना
चरम बर्नर फ्यूज कैलकुलेटर का उपयोग करके फ़्यूज़ सेट करना

आप प्रत्येक फ़्यूज़ बाइट्स (लो, हाई, एक्सटेंडेड, लॉक और कैलिब्रेशन) के लिए दिखाई देने वाली विवरण स्क्रीन देख सकते हैं। कैलिब्रेशन बाइट को अपरिवर्तित छोड़ दिया जाना चाहिए क्योंकि यह एवीआर में कैलिब्रेशन डेटा बाइट दिखाता है जो आंतरिक आरसी ऑसीलेटर पर लागू होता है। LOCK बाइट आमतौर पर केवल FF है, (ऊपर चित्रों में चर्चा नहीं की गई है) क्योंकि आप सीखने के चरण में फ़्लैश या EEPROM को लॉक नहीं करेंगे। आप केवल LOW, HIGH और EXTENDED बाइट बदल रहे होंगे। सावधान रहे !

यदि आप SPIEN बिट को 1 में बदलते हैं (AVR माइक्रोकंट्रोलर में अप्रोग्राम की स्थिति 1 है) तो आप USBASP या किसी प्रोग्रामर का उपयोग करके अपनी चिप के साथ संचार करने में असमर्थ होंगे! प्रत्येक फ़्यूज़ बिट के लिए आपकी स्क्रीन में डिफ़ॉल्ट स्थिति भी दिखाई जाती है। यह आपको सचेत करता है कि आपको ISP प्रोग्रामिंग के लिए SPI मोड का उपयोग करने की अनुमति देने के लिए SPIEN डिफ़ॉल्ट हमेशा 0 (क्रमादेशित स्थिति) होता है। जब SPIEN को 0 पर सेट किया जाता है तो डीबग-वायर या DW बिट हमेशा 1 (अनप्रोग्राम्ड) रहता है। यह इसकी डिफ़ॉल्ट स्थिति भी है। इसके अलावा, विस्तारित फ्यूज बिट्स में 'सेल्फ प्रोग्रामिंग इनेबल' '1' (अनप्रोग्राम्ड) होना चाहिए यदि आप अपने लक्ष्य चिप को प्रोग्राम करने के लिए अपने USB-ASP का उपयोग कर रहे हैं (ARDUINO की तरह बूटलोडर ROM का उपयोग नहीं कर रहे हैं)।

आप आंतरिक RC या बाहरी क्रिस्टल का चयन करने के लिए CLOCK बिट्स (संख्या में 3) को बदल सकते हैं। मैं आम तौर पर इसे आंतरिक आरसी के लिए छोड़ देता हूं जो आपको 2 अतिरिक्त पिन प्राप्त करने की अनुमति देता है जो बाहरी क्रिस्टल को मुक्त करने के लिए आपके एवीआर परियोजनाओं के लिए पोर्ट पिन के रूप में उपयोग करने की आवश्यकता होती है। आमतौर पर बाहरी क्रिस्टल की आवश्यकता तब होती है जब आपको अपने प्रोजेक्ट में उच्च सटीकता समय की आवश्यकता होती है। शिक्षार्थियों के लिए आंतरिक आरसी पर्याप्त है।

आमतौर पर एक बार जब आप कुछ फ्यूज संयोजन पर समझौता कर लेते हैं तो आप इसे नहीं बदलेंगे। यह एक बार होगा। आप केवल ROM या कभी-कभी EEPROM को भी फ्लैश कर रहे होंगे। EEPROM को फ्लैश करने के लिए आपके WINAVR / ATMEL स्टूडियो द्वारा अलग.eep फाइल तैयार की जाती है यदि आपका प्रोग्राम डेटा स्टोर करने के लिए EEPROM का उपयोग करता है। अन्यथा EEPROM को अप्रयुक्त छोड़ दिया जाता है, जो 'FF' डेटा से भरा होता है जो EEPROM की 'NO DATA State' दिखाता है।

चरण 7: फ्यूज बिट्स का अंतिम मूल्य

फ्यूज बिट्स का अंतिम मूल्य
फ्यूज बिट्स का अंतिम मूल्य

सभी फ़्यूज़ बिट्स को सेट करने के बाद, और आपके द्वारा उपयोग किए गए विवरण बॉक्स को बंद करने के बाद, आप प्रोग्राम द्वारा गणना के अनुसार फ़्यूज़ बिट्स का मान देख सकते हैं (चित्र देखें)। जो कुछ बचा है वह मेनू का उपयोग करके "फ़्यूज़ लिखें" जारी करना है। और उन संदेशों को देखें जो एक सफल लेखन की रिपोर्ट करते हैं। बाद में, आप मेनू से एक रीड ऑल भी जारी कर सकते हैं और जांच सकते हैं कि बर्नर स्क्रीन के अंतिम टैब में पढ़ा गया फ़्यूज़ उस चीज़ से मेल खाता है जिसे आप चिप पर लिखना चाहते थे। (फ्यूज सत्यापन)।

आप देखेंगे कि इस निर्देश की शुरुआत में जब हमने एक रीड फ़्यूज़ किया था, तो स्क्रीन वही फ़्यूज़ मान दिखाती है जो हम यहाँ देखते हैं! ऐसा इसलिए है क्योंकि ये वे फ़्यूज़ हैं जिनका मैं अक्सर उपयोग करता हूं और जब तक मैं उन्हें अपने एमसीयू में सेट करता हूं, तब तक शायद ही कभी उन्हें बदलता हूं, जब तक कि मैं कुछ परियोजनाओं के लिए आवृत्ति को 1 मेगाहर्ट्ज से 4 मेगाहर्ट्ज तक नहीं बदलता। AVR को अधिकतम 20Mhz (कुछ चिप्स केवल 16Mhz तक) पर सेट किया जा सकता है। F_cpu के लिए आपके द्वारा सेट की गई आवृत्ति उस वोल्टेज पर भी निर्भर करती है जिसके साथ आप चिप की आपूर्ति करते हैं! उदाहरण के लिए यदि आपकी चिप Vcc के 1.8V से Vcc के 5.5V (डेटा शीट संदर्भ) तक संचालित होती है, तो आप अपने चिप को 20 मेगाहर्ट्ज पर चलाने की उम्मीद नहीं करेंगे यदि आप इसे केवल 1.8V की आपूर्ति करते हैं! आप इससे बहुत ज्यादा उम्मीद कर रहे हैं! डेटा शीट में एक तालिका आपको बताती है कि फ़्रीक किस वोल्टेज पर किस आंकड़े पर सबसे ऊपर है। आपके चिप के संचालन की आवृत्ति जितनी अधिक होगी, उतनी ही अधिक गर्मी और उतनी ही अधिक बिजली की खपत होगी। एक जानवर के दिल की धड़कन की तरह आवृत्ति के बारे में सोचो। दिल की धड़कन की उच्च दर वाले हमिंगबर्ड में बहुत कम दिल की धड़कन वाले व्हेल या हाथी की तुलना में प्रति मिनट अधिक ऊर्जा जलती है! लेकिन फिर यह कम समय में बहुत कुछ कर सकता है। एमसीयू ऐसा ही है।

चरण 8: समाप्त करें

अब आपने एक्सट्रीम बर्नर में सभी चरणों को पूरा कर लिया है, आपने एक चिप का रोम पढ़ा है, आपने एक हेक्स फ़ाइल खोली है और इसे चिप पर फ्लैश किया है और सत्यापित किया है कि फ्लैश ठीक था, आपने फ़्यूज़ सेट करना और उन्हें चिप पर फ्लैश करना भी सीखा।.

यदि आपके कोई प्रश्न हैं, तो मुझे ट्यूटोरियल को स्पष्ट करने के लिए उत्तर देने या संशोधित करने में खुशी होगी।

कुछ चिप्स के लिए आप पा सकते हैं कि मेनू में चिप चयन ड्रॉपडाउन सूची में इसकी प्रविष्टि गायब है। या आपको लेखन त्रुटियों का सामना करना पड़ सकता है और त्रुटियों को सत्यापित करना पड़ सकता है। ऐसे मामलों में कृपया समस्या को हल करने के लिए मेरे अन्य निर्देश योग्य "हैकिंग एक्सट्रीम बर्नर" को पढ़ें।

हैप्पी प्रोग्रामिंग।

सिफारिश की: