2012-01-12 11 views
6

में Arduino मैंने Arduino पुस्तकालयों को अपनी खुद की स्टैंडअलोन लाइब्रेरी में संकलित करके और ग्रहण में एक परियोजना से जुड़कर इसे स्वयं का प्रयास किया है, लेकिन रास्ते में कुछ समस्याएं हैं।शुद्ध सी

क्या यह उठाने और चलाने के तरीके पर एक सभ्य मार्गदर्शिका है? मुझे वास्तव में काम करने वाले एक ऑनलाइन को खोजने के लिए कड़ी मेहनत की गई है ... arduino.cc मार्गदर्शिका में कुछ त्रुटियां हैं, और समस्या निवारण ने मुझे पागल कर दिया है।

मै मैक   ओएस   एक्स 10.5 पर Uno बोर्ड के साथ हूं।

संपादित करें: यह ध्यान देने योग्य हो सकता है कि अधिकांश आर्डिनो सी गाइड आवश्यक बॉड दर निर्दिष्ट नहीं करते हैं, केवल एमसीएलके आवृत्ति (16   मेगाहर्ट्ज)। सुनिश्चित करें कि आपने इसे बदल दिया है या AVRDude समझ नहीं पाएगा कि आपके आईसी को कैसे फ्लैश करें।

उत्तर

0

Arduino शुद्ध सी सेटअप में काम नहीं करेगा क्योंकि इसे एक सी ++ कंपाइलर की आवश्यकता है। हालांकि यदि आप अपनी परियोजना के अंदर Arduino कोर और अन्य पुस्तकालयों को शामिल करना चाहते हैं तो पढ़ें। यहां हम देख सकते हैं कि हमारे कोड के साथ Arduino ईथरनेट लाइब्रेरी का उपयोग कैसे करें।

चरण दर चरण गाइड

  1. Arduino कोर और वेरिएंट/फ़ाइलें प्राप्त करें।
  2. प्रासंगिक पुस्तकालय प्राप्त करें, उदा। Arduino ईथरनेट पुस्तकालय
  3. निर्देशिका संरचना

    • /
      • lib/arduino/कोर है
      • lib/arduino/वेरिएंट // pins_arduino.h
      • lib/arduino/makefile
      • lib/arduino/build
      • lib/
  4. नमूना बना फ़ाइल से डाउनलोड किया जा सकता: https://gist.github.com/rjha/b7cda6312552c3e15486

  5. पहले एक स्थिर पुस्तकालय के रूप में Arduino कोर पैदा करते हैं। lib/arduino फ़ोल्डर में

    • $ सीडी
    • $ स्वच्छ
    • $ बनाने lib
  6. यह/lib/arduino पैदा करेगा/libarduino.a स्थिर पुस्तकालय का निर्माण कर ऐसा करने के लिए फ़ाइल।

  7. अगला हम मुख्य परियोजना मेकफ़ाइल प्राप्त कर चुके हैं। वहां हम किसी भी Arduino लाइब्रेरी को परिभाषित कर सकते हैं, उदाहरण के लिए। Arduino एसपीआई या Arduino ईथरनेट एक लक्ष्य लक्ष्य के रूप में जो Arduino कोर पुस्तकालय के खिलाफ संकलित।

  8. अपने स्वयं के लक्ष्य के अंदर, हम Arduino लक्ष्य शामिल कर सकते हैं जिसमें बदले में Arduino कोर शामिल है।

के लिए (7) और (8) उदाहरण के लिए, इस सार

देख

https://gist.github.com/rjha/e7b123d3dc4346b5830c

(9) हेक्स और सामान्य जोड़ने, लिंक बनाते समय -larduino का उपयोग कर और में libarduino.a रखने खोज पाथ। उदाहरण के लिए गिस्ट के ऊपर @see।

(10) इस संरचना का उपयोग करके आप अपने कोड के अंदर किसी भी Arduino पुस्तकालयों का उपयोग कर सकते हैं।

अधिकांश आर्डिनो पुस्तकालय एक गड़बड़ निर्भरता के अनुसार हैं और कोड की गुणवत्ता भी खराब है। एकमात्र लाभ यह है कि आप अपने कोड के खिलाफ लिंक करने के लिए कुछ तैयार किए गए पुस्तकालय प्राप्त कर सकते हैं।

संबंधित मुद्दे