चेतावनी, एक लंबी-घुमावदार व्याख्या आगामी है। मैं कुछ गलत धारणाओं को दूर करना चाहूंगा जो मुझे लगता है कि आप कर रहे हैं।
Arduino वास्तव में दो चीजें हैं।
- C / C ++ पुस्तकालयों का एक संग्रह avr-gcc और के साथ संकलित किया गया
- एक छोटा बूटलोडर फर्मवेयर प्रोग्राम जो पहले कारखाने से चिप पर प्रोग्राम किया गया था।
हां, Arduino IDE मूल रूप से avr-gcc - AVR C कंपाइलर को लपेटता है। आपकी परियोजनाएं, या "रेखाचित्र", उल्लेखित Arduino पुस्तकालयों को शामिल करती हैं और avr-gcc के साथ संकलित की जाती हैं। हालाँकि, बोर्ड के पास कुछ भी नहीं लिखा है कि इसमें से कुछ भी नहीं है। इन स्केच को कैसे तैनात किया जाता है, यह सामान्य से थोड़ा अलग है।
Arduino IDE बोर्ड पर usb-to-serial चिप पर आपके Arduino के साथ संचार करता है और यह एक प्रोग्रामिंग मोड को आरंभ करता है जिसे बूटलोडर समझता है और आपके नए प्रोग्राम को चिप में भेजता है जहां बूटलोडर इसे किसी ज्ञात स्थान पर रखेगा और फिर इसे चलाएगा। । कोई "एवीआर लाइब्रेरी नहीं है जो वास्तविक लेखन करता है" - यह सिर्फ एक सीरियल पोर्ट खोलना और बूटलोडर के साथ बात करने वाला अरुडिनो आईडीई है - यह है कि आपके डिबग संदेश आईडीई को रनटाइम के दौरान भी प्रिंट होते हैं।
किसी भी वैकल्पिक आईडीई को बूटलोडर के साथ एक ही धारावाहिक संचार करने में सक्षम होना होगा। Arduino उन सभी पुस्तकालयों के कारण आसान है जो वे पहले से ही आपको प्रदान करते हैं और IDE से एक-स्पर्श प्रोग्राम और रन करते हैं। मैं ईमानदारी से नहीं लगता कि यह किसी भी आसान, या अधिक उपयोगकर्ता के अनुकूल हो जाता है। उन्होंने AVR माइक्रो-कंट्रोलर और बिल्डिंग / तैनाती प्रक्रिया के सभी विवरणों को सार कर दिया है।
इसका विकल्प कुछ ऐसा होगा जैसे avr-studio (जो अपने संकलक के लिए avr-gcc का भी उपयोग करता है) और ICSP प्रोग्रामर (जो कि हार्डवेयर का एक अतिरिक्त टुकड़ा है जिसे आपको खरीदना है)। आपको कुछ रजिस्टर डेफिनिशन हेडर फ़ाइलों और कुछ उपयोगी मैक्रो की तुलना में बहुत अधिक प्रदान नहीं किया गया है। आप अपने AVR चिप पर किसी भी बूटलोडर के साथ प्रदान नहीं कर रहे हैं, यह सिर्फ एक खाली स्लेट है। कुछ भी आप माइक्रोकंट्रोलर के साथ करना चाहते हैं, आपको गहराई में जाना होगा और इसके हार्डवेयर परिधीयों और रजिस्टरों के बारे में सीखना होगा और सी में बाइट्स को स्थानांतरित करना होगा। पीसी पर एक डिबग संदेश वापस प्रिंट करना चाहते हैं? प्रिंट के लिए UART रूटीन लिखें () पहले और अपने कंप्यूटर पर एक टर्मिनल खोलें।
इससे एक कदम कम आप एक टेक्स्ट एडिटर में कोड लिख रहे हैं और एक मेकफाइल या कमांड-लाइन से avr-gcc और avr-dude (प्रोग्रामिंग कमांड लाइन टूल) कॉल कर रहे हैं।
उससे एक कदम कम और आप एक टेक्स्ट एडिटर में असेंबली लिख रहे हैं और एवर-असेंबलर और एवीआर-दोस्त को बुला रहे हैं।
मुझे यकीन है कि जहां मैं इस के साथ जा रहा हूँ नहीं कर रहा हूँ, मुझे लगता है कि मौजूदा आईडीई और Arduino बिल्कुल प्रतिभाशाली और अभी शुरुआत के लिए एकदम सही है - प्रसिद्धि के लिए अपने दावे है उपयोगकर्ता के अनुकूल सत्ता। हो सकता है कि आप जिस उत्तर की तलाश कर रहे हैं, वह काम का प्रवाह न हो और इसके साथ कुछ ठंडा करें।