विषयसूची:
- चरण 1: अपना कंपाइलर और अन्य उपकरण प्राप्त करना
- चरण 2: एक टेम्पलेट बनाना।
- चरण 3: एक नई फ़ाइल बनाएँ।
- चरण 4: चलो भागो
- चरण 5: निष्कर्ष
वीडियो: लिनक्स पर AVR प्रोग्रामिंग वातावरण कैसे सेटअप करें: 5 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:21
यदि आप विंडोज़ पर एवीआर माइक्रोकंट्रोलर प्रोग्राम करना चाहते हैं तो आपके पास स्टूडियो है लेकिन लिनक्स पर हमारे पास एक दोस्त है।
AVRDUDE AVR चिप्स को प्रोग्राम करने के लिए कमांड लाइन इंटरफ़ेस है, इसे पहले सेटअप करना थोड़ा मुश्किल हो सकता है। इस निर्देश में, मैं AVRDUDE की स्थापना करूँगा और लिनक्स टर्मिनल के लिए AVR प्रोग्रामिंग वातावरण भी बनाऊँगा।
पहले मैं सभी AVRDUDE और सभी आवश्यक निर्भरताएँ स्थापित करूँगा फिर मैं एक BASH स्क्रिप्ट तैयार करूँगा जो प्रोग्रामिंग में मदद करेगी
चरण 1: अपना कंपाइलर और अन्य उपकरण प्राप्त करना
AVR चिप्स को प्रोग्राम करने के लिए आपको एक विशेष कंपाइलर की आवश्यकता होती है जिसे gcc-avr के रूप में जाना जाता है और अन्य उपकरण जैसे binutils-avr, avr-libc, gdb-avr last लेकिन कम से कम avrdude नहीं।
sudo apt-gcc-avr binutils-avr avr-libc gdb-avr avrdude इंस्टॉल करें
चरण 2: एक टेम्पलेट बनाना।
यदि आप arduino में एक नया स्केच खोलते हैं तो आपको एक कोड टेम्प्लेट मिलता है जिसमें दो फ़ंक्शन होते हैं, इससे आपका बहुत समय बचता है।
AVRDUDE C का उपयोग करता है और हर बार जब आप कोड करना चाहते हैं तो हमेशा एक मुख्य विधि बनाना थोड़ा कष्टप्रद हो सकता है, इसलिए मैं एक AVR टेम्पलेट बनाऊंगा।
स्पर्श करें ~/टेम्पलेट्स/AVR.c
टेम्प्लेट फ़ोल्डर में एक खाली फ़ाइल बनाने के लिए टच कमांड का उपयोग करें।
vi ~/टेम्पलेट्स/AVR.c
अपने पसंदीदा टेक्स्ट एडिटर के साथ फाइल खोलें, मैं vi का उपयोग कर रहा हूं।
#F_CPU 16000000L परिभाषित करें
#include #include int main(){ जबकि(){ } रिटर्न 0; }
ऊपर दिए गए कोड को टाइप करें और फाइल को सेव करें। यह कोड हमारे टेम्पलेट के रूप में काम करेगा।
नोट: मैंने अपनी घड़ी की आवृत्ति 16000000 के रूप में सेट की है, आप अपनी किसी अन्य आवृत्ति के रूप में सेट कर सकते हैं शायद 8000000।
चरण 3: एक नई फ़ाइल बनाएँ।
अब हमारे पास हमारे एवीआर कोड के लिए एक टेम्प्लेट है, हमें बस एक नई फाइल बनाने की जरूरत है। मैं एक बैश कमांड बनाउंगा जो एक तर्क (फ़ाइल नाम) में ले जाएगा और फिर उस फ़ाइल को एवीआर टेम्पलेट वाला बना देगा।
चलो "बनाएँ" नामक एक खाली फ़ाइल बनाते हैं
टच क्रिएट
फ़ाइल अनुमति बदलें क्योंकि यह एक BASH स्क्रिप्ट होगी
chmod 755 क्रिएट
अपने टेक्स्ट एडिटर के साथ "क्रिएट" खोलें। अब "क्रिएट" को एडिट करते हैं, निम्न कमांड लाइन को लाइन से जोड़ते हैं।
#!/बिन/बैश
यह "बनाने" के लिए दुभाषिया का मार्ग है जो बैश है।
cp ~/टेम्पलेट्स/AVR.c /home/$USER
यह हमारी टेम्पलेट फ़ाइल को उपयोक्ता होम निर्देशिका में कॉपी करता है।
एमवी ~/एवीआर.सी $1
याद रखें कि मैंने कहा था कि "बनाएं" एक तर्क में लेता है, $ 1 का अर्थ है हमारे आदेश का पहला तर्क यह तर्क इच्छित फ़ाइल नाम है, आखिरी चीज जो हम चाहते हैं वह एक ही फ़ाइल नाम वाली कई फाइलें हैं। आदेश फ़ाइल नाम को हमारे तर्क में बदल देता है।
vi $1
यह वैकल्पिक है लेकिन हमारी फ़ाइल बनाने के तुरंत बाद इसे खोलना अच्छा होगा।
हम संपादन बनाने, इसे सहेजने और इसे बंद करने के साथ कर रहे हैं।
यहाँ क्रिया में बनाएँ का एक उदाहरण दिया गया है।
./blink.c. बनाएं
यह एक फ़ाइल बनाता है जिसे blink.c कहा जाता है, इस फ़ाइल में AVR.c का टेम्प्लेट होना चाहिए।
चरण 4: चलो भागो
हमें एक और बैश स्क्रिप्ट बनानी होगी जिसे "रन" के रूप में जाना जाता है, यह स्क्रिप्ट 3 तर्क (एवीआर माइक्रोकंट्रोलर जिसका हम उपयोग कर रहे हैं, फ़ाइल नाम और प्रोग्रामर) लेगी।
आइए इसे लाइन दर लाइन लेते हैं।
#!/बिन/बैश
हमारा शेबंग
avr-gcc -वॉल -g -0s -mmcu=$1 -o $2.bin $2.c
उपरोक्त आदेश हमारे कोड को संकलित करता है, '$1' हमारा पहला तर्क है जो कि माइक्रोकंट्रोलर है जिसे हम प्रोग्रामिंग कर रहे हैं। $2 हमारा दूसरा तर्क है जो फ़ाइल नाम है।
avr-objcopy -j.text -j.data -O ihex $2.bin $2.hex
यह हमारी अनुपालन फ़ाइल को हेक्स में परिवर्तित करता है।
avrdude -p $1 -c $3 -U Flash:w:$2.hex -P usb
अब avrdude कोड को AVR चिप में बर्न करता है। $3 हमारा तीसरा तर्क है जो प्रोग्रामर है जिसका हम उपयोग कर रहे हैं।
फ़ाइल "रन" सहेजें
इसे निष्पादित करने की अनुमति दें
चामोद 755 रन
आइए अब इसका परीक्षण करें। मान लीजिए कि हम blink.c अपलोड करना चाहते हैं और हम सीधे एक arduino बोर्ड का उपयोग कर रहे हैं, हम एक usbasp प्रोग्रामर का भी उपयोग कर रहे हैं। इस प्रकार हम "रन" स्क्रिप्ट का उपयोग करते हैं।
./run atmega328p ब्लिंक USBasp
Arduino बोर्ड में atmega328p चिप है, आप अपनी पसंद के किसी भी AVR माइक्रोकंट्रोलर का उपयोग कर सकते हैं।
दूसरा तर्क आपका फ़ाइल नाम है, लेकिन इस बार उस फ़ाइल एक्सटेंशन को न जोड़ें जिसे स्क्रिप्ट संभालती है।
फिर हमारे पास तीसरा तर्क है जो प्रोग्रामर आप उपयोग कर रहे हैं, मैं एक यूएसबीएएसपी प्रोग्रामर का उपयोग कर रहा हूं।
चरण 5: निष्कर्ष
यह आपके एवीआर प्रोग्रामिंग अनुभव को स्वचालित करने का एक शानदार तरीका है, आप बैश फाइलों को "क्रिएट" और "रन" को "~/.लोकल/बिन" में स्थानांतरित कर सकते हैं ताकि आप अपनी पसंद की किसी भी फाइल डायरेक्टरी से स्क्रिप्ट का उपयोग कर सकें।
सिफारिश की:
रास्पबेरी पाई कैसे सेटअप करें और इसका उपयोग करना शुरू करें: 4 कदम
रास्पबेरी पाई कैसे सेटअप करें और इसका उपयोग करना शुरू करें: भविष्य के पाठकों के लिए, हम 2020 में हैं। वह वर्ष जहां, यदि आप स्वस्थ रहने के लिए भाग्यशाली हैं और कोविड -19 से संक्रमित नहीं हैं, तो आप अचानक , जितना आपने कभी सोचा था उससे कहीं अधिक खाली समय मिला। तो मैं अपने आप को एक बहुत ही मूर्ख तरीके से कैसे व्यस्त रख सकता हूँ? ओह हां
लिनक्स बूट ड्राइव कैसे बनाएं (और इसका उपयोग कैसे करें): 10 कदम
लिनक्स बूट ड्राइव कैसे बनाएं (और इसका उपयोग कैसे करें): यह एक सरल परिचय है कि कैसे लिनक्स के साथ शुरुआत करें, विशेष रूप से उबंटू
लिनक्स कैसे स्थापित करें (शुरुआती यहां से शुरू करें!): 6 कदम
लिनक्स कैसे स्थापित करें (शुरुआती यहां से शुरू करें!): वास्तव में लिनक्स क्या है? ठीक है, प्रिय पाठक, लिनक्स पूरी नई संभावनाओं की दुनिया का प्रवेश द्वार है। OSX के कंप्यूटर के मालिक होने का मज़ा लेने के दिन गए। विंडोज 10 के बावजूद सुरक्षा की मूर्खतापूर्ण धारणाएं चली गईं। अब, आपकी बारी है
कैसे करें: अपने विंडोज होस्ट की सुरक्षा के लिए आईपीकॉप वर्चुअल मशीन फ़ायरवॉल सेटअप करें (मुफ्त में!): 5 कदम
कैसे करें: अपने विंडोज होस्ट की सुरक्षा के लिए आईपीकॉप वर्चुअल मशीन फ़ायरवॉल सेटअप करें (मुफ्त में!): सारांश: इस परियोजना का उद्देश्य किसी भी नेटवर्क पर विंडोज होस्ट सिस्टम की सुरक्षा के लिए वर्चुअल मशीन में आईपीकॉप (फ्री लिनक्स वितरण) का उपयोग करना है। आईपीकॉप उन्नत कार्यों के साथ एक बहुत शक्तिशाली लिनक्स आधारित फ़ायरवॉल है जैसे: वीपीएन, एनएटी, घुसपैठ का पता
लिनक्स का उपयोग कैसे करें (और इसे प्यार करें): 8 कदम
लिनक्स का उपयोग कैसे करें (और इसे प्यार करें): यह मेरा पहला निर्देश है। लिनक्स एक महान ऑपरेटिंग सिस्टम है - यदि आप इसका उपयोग करना जानते हैं- और अधिकांश लोग वास्तव में इंस्टॉल करने से परेशान नहीं होना चाहते हैं, और क्या नहीं, लेकिन इसे स्थापित करना वास्तव में कठिन नहीं है, और यदि आप इसे अक्सर उपयोग करते हैं, तो यह होना शुरू करो