Arduino साठी लायब्ररी काय आहेत. Mac OSX साठी Arduino लायब्ररी स्थापित करत आहे. Arduino लायब्ररी कनेक्ट करताना त्रुटी

नोकिया 07.05.2019
नोकिया

हा दस्तऐवज Arduino साठी लायब्ररीच्या निर्मितीचे वर्णन करतो. LED वापरून मोर्स कोड प्रसारित करण्याचे स्केच लिहून स्पष्टीकरण सुरू होईल. त्यानंतर स्केचचे लायब्ररीमध्ये रूपांतर कसे करायचे ते दाखवले जाईल. हे इतर वापरकर्त्यांना तयार केलेला कोड सहजपणे वापरण्यास, अद्यतनित करण्यास आणि विस्तृत करण्यास अनुमती देईल.

मोर्स कोडचे पुनरुत्पादन करणारे स्केच:

इंट पिन = 13; व्हॉइड सेटअप() ( पिनमोड(पिन, आउटपुट); ) व्हॉइड लूप() ( डॉट(); डॉट(); डॉट(); डॅश(); डॅश(); डॉट(); डॉट(); dot(); delay(3000); void dot() (digitalWrite(pin, HIGH); delay(250); digitalwrite(pin, LOW); delay(250); ) void dash() (digitalWrite(pin, HIGH) ) विलंब (1000) डिजिटल राइट (पिन, लो);

हे स्केच पिन 13 वर एलईडी फ्लॅश करून SOS सिग्नल तयार करते.

स्केचमध्ये कोडचे अनेक तुकडे आहेत जे लायब्ररीमध्ये हस्तांतरित करणे आवश्यक आहे. प्रथम, ही कार्ये आहेत डॉट()आणि डॅश(), जे LED च्या ब्लिंकिंग नियंत्रित करते. दुसरे म्हणजे, ते एक चल आहे ledPin, कोणते I/O पोर्ट वापरायचे ते ठरवत आहे. आणि शेवटी, फंक्शन कॉल पिनमोड(), जे वापरल्या जात असलेल्या I/O पोर्टवर आउटपुट मोड सेट करते .

स्केचचे लायब्ररीमध्ये रूपांतर करण्याची प्रक्रिया.

लायब्ररीमध्ये दोन फाइल्स आहेत: एक हेडर फाइल (.h विस्तारासह) आणि अंमलबजावणी फाइल्स (.cpp विस्तारासह). शीर्षलेख फाइलमध्ये लायब्ररीची वैशिष्ट्ये आहेत, म्हणजे. त्यात समाविष्ट असलेल्या प्रत्येक गोष्टीची यादी. व्युत्पन्न केलेल्या शीर्षलेख फाइलला Morse.h म्हटले जाईल. हेडर फाइलसह पुढे काम करण्यासाठी, तुम्हाला अंमलबजावणी फाइलची सामग्री पाहणे आवश्यक आहे.

हेडर फाइलमध्ये एक वर्ग असतो ज्यामध्ये फंक्शन्स घोषित केले जातात आणि व्हेरिएबल्स वापरले जातात:

वर्ग मोर्स ( सार्वजनिक: मोर्स(इंट पिन); व्हॉइड डॉट(); व्हॉइड डॅश(); खाजगी: इंट _पिन;);

या प्रकरणात एक वर्ग म्हणजे एकाच ठिकाणी एकत्रित केलेल्या फंक्शन्स आणि व्हेरिएबल्सचा संच. फंक्शन्स आणि व्हेरिएबल्स सार्वजनिक असू शकतात ( सार्वजनिक), याचा अर्थ ते लायब्ररी वापरणाऱ्या प्रत्येकाद्वारे शेअर केले जातात किंवा खाजगी ( खाजगी), म्हणजे ते फक्त वर्गातच प्रवेश करू शकतात. प्रत्येक वर्गात एक विशेष कन्स्ट्रक्टर फंक्शन असते ज्याचा वापर वर्गाचे उदाहरण तयार करण्यासाठी केला जातो. कन्स्ट्रक्टरचे नाव क्लाससारखेच आहे, परंतु रिटर्न प्रकार नाही.

शीर्षलेख फाइलमध्ये काही अतिरिक्त ओळी देखील आहेत. प्रथम, हे एक निर्देश आहे #समाविष्ट करा, जे Arduino प्रोग्रामिंग भाषेच्या मानक प्रकार आणि स्थिरांकांमध्ये प्रवेश देते (डीफॉल्ट निर्देश प्रत्येक स्केचमध्ये जोडला जातो, परंतु लायब्ररीमध्ये नाही). निर्देश असे दिसते (आणि वर्ग घोषणाच्या वर स्थित आहे):

# "WProgram.h" समाविष्ट करा

Arduino 1.0 आणि उच्च आवृत्तीमध्ये तुम्हाला हे देखील जोडावे लागेल:

#Arduino.h समाविष्ट करा

हेडर फाईलची सामग्री खालील संरचनेत संलग्न करणे देखील सामान्य आहे:

#ifndef Morse_h #define Morse_h // #Include निर्देश आणि कोड येथे आहे #endif

जर एखाद्याने चुकून दोनदा निर्देशांसह लायब्ररी समाविष्ट केली तर हे आमची लायब्ररी पुन्हा समाविष्ट करण्यापासून प्रतिबंधित करते #समाविष्ट करा.

लायब्ररी कोडच्या सुरुवातीला त्याचा उद्देश, लेखक, तारीख आणि लायब्ररीसाठी परवाना याबद्दल टिप्पणी देण्याची प्रथा आहे.

तयार शीर्षलेख फाइलमध्ये हे समाविष्ट आहे:

/* Morse.h - मोर्स कोड फ्लॅश करण्यासाठी लायब्ररी. डेव्हिड ए. मेलिस यांनी तयार केले, 2 नोव्हेंबर 2007. सार्वजनिक डोमेनमध्ये रिलीझ केले. */ #ifndef Morse_h #define Morse_h #समाविष्ट करा "WProgram.h" वर्ग मोर्स ( सार्वजनिक: Morse(int pin); void dot(); void dash(); खाजगी: int _pin;); #endif

Morse.cpp अंमलबजावणी फाइल पाहू.

कोडच्या सुरुवातीला अनेक निर्देश आहेत #समाविष्ट करा. हे निर्देश हेड लायब्ररी फाइलमधील मानक Arduino फंक्शन्स आणि वैशिष्ट्यांमध्ये प्रवेश करण्यास अनुमती देतात:

# "WProgram.h" समाविष्ट करा # "Morse.h" समाविष्ट करा

कोडमध्ये पुढे कन्स्ट्रक्टर आहे. याचा वापर वर्ग तयार केल्याचे उदाहरण तयार करण्यासाठी केला जातो. या प्रकरणात, वापरकर्ता पॅरामीटरद्वारे वापरलेल्या I/O पोर्टची संख्या निर्दिष्ट करतो. पोर्ट आउटपुट मोडवर सेट केले आहे आणि नंबर इतर फंक्शन्समध्ये वापरण्यासाठी खाजगी व्हेरिएबलमध्ये संग्रहित केला आहे:

मोर्स::मोर्स(इंट पिन) ( पिनमोड(पिन, आउटपुट); _पिन = पिन; )

कोड मोर्स:: म्हणजे फंक्शन मोर्स क्लासचे आहे . व्हेरिएबलच्या नावाच्या सुरुवातीला कमी जागा _ पिनखाजगी चलांसाठी स्वीकृत नोटेशन आहे. सर्वसाधारणपणे, नाव काहीही असू शकते, परंतु स्वीकृत नामकरण नियमांनुसार, खाजगी व्हेरिएबल्ससाठी "_" उपसर्ग वापरण्याची प्रथा आहे. हे फंक्शन आर्ग्युमेंटपासून वेगळे करणे देखील शक्य करते (या प्रकरणात पिन).

व्हॉइड मोर्स::डॉट() (डिजिटल राइट(_पिन, उच्च); विलंब(250); डिजीटल राइट(_पिन, कमी); विलंब(250); ) शून्य मोर्स::डॅश() (डिजिटलराईट(_पिन, उच्च); विलंब( 1000; digitalWrite(_pin, LOW);

अंमलबजावणी फाइलमध्ये कोडच्या सुरुवातीला काही स्पष्टीकरणात्मक टिप्पण्या देणे सामान्य आहे. पूर्ण लायब्ररी कोड:

/* Morse.cpp - मोर्स कोड फ्लॅश करण्यासाठी लायब्ररी. डेव्हिड ए मेलिस यांनी तयार केले, 2 नोव्हेंबर 2007. सार्वजनिक डोमेनमध्ये रिलीज केले. */ # "WProgram.h" # समाविष्ट करा "Morse.h" Morse::Morse(int pin) ( pinMode(pin, OUTPUT); _pin = pin; ) void Morse::dot() ( digitalWrite(_pin, HIGH विलंब (250); विलंब मोर्स::डॅश() (डिजिटल राइट(_पिन, उच्च);

लायब्ररी वापरणे.

प्रथम, आपल्याला एक फोल्डर तयार करण्याची आवश्यकता आहे मोर्ससबफोल्डरमध्ये लायब्ररीनोटपॅड निर्देशिका. दुसरे म्हणजे, तुम्हाला Morse.h आणि Morse.cpp फाइल्स तयार केलेल्या फोल्डरमध्ये कॉपी करणे आवश्यक आहे. मेनूमध्ये Arduino प्रोग्राम लाँच केल्यानंतर स्केच > इंपोर्ट लायब्ररीमोर्स लायब्ररी स्थित असेल. लायब्ररी वापरणाऱ्या स्केचेससह संकलित केली जाईल. लायब्ररी संकलित करताना समस्या उद्भवल्यास, तुम्हाला त्याच्या फाइल्समध्ये .cpp आणि .h (कोणतेही अतिरिक्त विस्तार .pde आणि .txt नसावे) आहेत हे तपासावे लागेल.

प्रारंभिक स्केच, तयार केलेल्या लायब्ररीचा वापर करून पुन्हा लिहिलेले, असे दिसेल:

#समाविष्ट करा मोर्स मोर्स (13); void setup() ( ) void loop() ( morse.dot(); morse.dot(); morse.dot(); morse.dash(); morse.dash(); morse.dash(); morse.dot (); morse.dot();

मूळ स्केचमधील काही फरक:

प्रथम, निर्देश जोडले गेले आहेत #समाविष्ट करास्केचच्या सुरूवातीस. हे मोर्स लायब्ररीची उपलब्धता आणि त्याचे कनेक्शन निर्धारित करते. निर्देश काढून न वापरलेली लायब्ररी काढली जाऊ शकते #समाविष्ट करा.

दुसरे, मोर्स वर्गाचे एक उदाहरण तयार केले जाते, ज्याला म्हणतात मोर्स:

मोर्स मोर्स (13);

ही ओळ कार्यान्वित करताना (फंक्शन कार्यान्वित करण्यापूर्वी सेटअप()) मोर्स वर्गासाठी कन्स्ट्रक्टरला कॉल केला जातो आणि उदाहरणात दिलेला युक्तिवाद घेतो (13).

या प्रकरणात, कार्य सेटअप()काहीही समाविष्ट नाही, कारण पिनमोड() फंक्शन कॉल लायब्ररीमध्ये आला (जेव्हा वर्ग उदाहरण तयार केले होते).

तिसरे, कॉलिंग फंक्शन्ससाठी डॉट()आणि डॅश()उपसर्ग जोडणे आवश्यक आहे मोर्स. - वापरलेल्या उदाहरणाचे नाव. मोर्स क्लासची अनेक उदाहरणे असू शकतात, प्रत्येकाचा स्वतःचा पोर्ट क्रमांक स्थानिक व्हेरिएबलमध्ये संग्रहित केलेला असतो. _पिन. एखाद्या विशिष्ट उदाहरणावरील फंक्शन कॉल कॉल दरम्यान कोणते व्हेरिएबल्स वापरले जातात हे निर्धारित करते. खालील दोन ओळी दिल्या.

मोर्स मोर्स (13); मोर्स मोर्स2(12);

कॉलच्या आत morse2.dot(), चल _पिन 12 चे मूल्य असेल.

दुर्दैवाने, स्वयंचलित कोड हायलाइटिंग प्लग-इन लायब्ररीसह कार्य करत नाही. बॅकलाइट कार्य करण्यासाठी, आपल्याला नावाची फाइल तयार करणे आवश्यक आहे keywords.txt. उदाहरण:

मोर्स KEYWORD1 डॅश KEYWORD2 डॉट KEYWORD2

प्रत्येक ओळीच्या विरुद्ध, टॅबद्वारे विभक्त केलेला, एक राखीव शब्द आहे आणि पुन्हा, टॅबद्वारे विभक्त केलेला, शब्दाचा प्रकार. वर्ग आरक्षित शब्द KEYWORD1 शी संबंधित आहेत आणि रंगीत केशरी आहेत; फंक्शन्स KEYWORD2 आहेत आणि रंगीत तपकिरी आहेत. शब्द ओळखण्यासाठी, तुम्हाला Arduino विकास वातावरण रीस्टार्ट करणे आवश्यक आहे.

तयार केलेल्या लायब्ररीच्या वापराच्या उदाहरणासह नेहमी सोबत ठेवण्याचा सल्ला दिला जातो. यासाठी एक फोल्डर तयार केले आहे उदाहरणेनिर्देशिकेत मोर्स. नंतर पूर्वी तयार केलेले SOS स्केच या फोल्डरमध्ये कॉपी केले जाते. (स्केच फाईल मेनूद्वारे आढळू शकते स्केच > ShowSketchFolder). मेनूमध्ये Arduino रीस्टार्ट केल्यानंतर फाइल > स्केचबुक > उदाहरणेएक बिंदू असेल लायब्ररी-मोर्स,एक उदाहरण असलेले. तुम्ही लायब्ररीचा सर्वोत्तम वापर कसा करावा यावर टिप्पण्या देखील जोडल्या पाहिजेत.

अंगभूत फंक्शन्स वापरून तुम्ही Arduino सॉफ्टवेअरमध्ये सोयीस्कर असाल, तर तुम्ही अतिरिक्त लायब्ररी वापरून तुमच्या Arduino ची क्षमता वाढवू शकता.

लायब्ररी हा कोडचा एक संच आहे जो सेन्सर, स्क्रीन, शील्ड इत्यादी कनेक्ट करणे सोपे करतो. उदाहरणार्थ, अंगभूत लायब्ररी लिक्विड क्रिस्टलसंवाद साधणे सोपे करते. इंटरनेटवर तुम्हाला शेकडो भिन्न अतिरिक्त लायब्ररी सापडतील. या लायब्ररी वापरण्यासाठी, आपण प्रथम त्यांना स्थापित करणे आवश्यक आहे.

आम्ही वापरतो ग्रंथालय व्यवस्थापक

मध्ये नवीन लायब्ररी स्थापित करण्यासाठी Arduino IDE, आपण वापरू शकता ग्रंथालय व्यवस्थापक, जे मध्ये दिसले.

स्केच मेनूमधून, लायब्ररी समाविष्ट करा → लायब्ररी व्यवस्थापित करा... निवडा.

यानंतर, लायब्ररी व्यवस्थापक उघडेल आणि तुम्हाला लायब्ररींची यादी दिसेल जी आधीपासून स्थापित आहेत किंवा स्थापित करण्यासाठी तयार आहेत. आधीच स्थापित लायब्ररी म्हणून चिन्हांकित केले आहेत स्थापित.

या उदाहरणात आपण लायब्ररी स्थापित करू एन्कोडर. ते सूचीमध्ये शोधा आणि तुम्ही स्थापित करू इच्छित असलेली आवृत्ती निवडा. काही लायब्ररींमध्ये तुमच्यासाठी फक्त एक आवृत्ती उपलब्ध असेल, त्यामुळे तुम्हाला लायब्ररी आवृत्ती निवड मेनू दिसत नसल्यास काळजी करू नका.

यानंतर, इंस्टॉलेशन प्रक्रियेचा एक सूचक दिसेल आणि, पूर्ण झाल्यानंतर, लायब्ररीची स्थिती एन्कोडरमध्ये बदलेल स्थापित. आता हे लायब्ररी स्केच → इन्क्लूड लायब्ररी वापरून आमच्या प्रोग्राम्समध्ये जोडण्यासाठी उपलब्ध होईल.

फाइल म्हणून लायब्ररी आयात करणे .zip

लायब्ररी अनेकदा पॅक केलेले आढळू शकतात झिप- संग्रहण फोल्डर. या फोल्डरचे नाव लायब्ररीचे नाव आहे. फोल्डरमध्ये निश्चितपणे एक फाइल असेल .cppआणि शीर्षलेख .हफाइल आपण अनेकदा फाइल देखील शोधू शकता keywords.txt, ही लायब्ररी वापरण्याच्या उदाहरणांसाठी कोड असलेले फोल्डर आणि या लायब्ररीसाठी आवश्यक असलेल्या इतर फाइल्स.

फॉर्ममध्ये लायब्ररी डाउनलोड केल्यानंतर झिप- ते संग्रहित करा गरज नाहीअनपॅक झिप केलेली लायब्ररी स्थापित करण्यासाठी, स्केच → लायब्ररी समाविष्ट करा → .ZIP लायब्ररी जोडा मेनू वापरा.

यानंतर तुम्हाला मार्ग निर्दिष्ट करणे आवश्यक आहे झिप- लायब्ररी फाइल. या झिप- फाइल अनपॅक केली जाईल आणि फोल्डरमध्ये ठेवली जाईल लायब्ररीस्केचसह निर्देशिकेत अर्डिनो.

हे नोंद घ्यावे की स्थापनेनंतर, लायब्ररी स्केच → लायब्ररी समाविष्ट करा मेनूद्वारे उपलब्ध होते, परंतु या लायब्ररीच्या उदाहरण फाइल्स मेनू फाइल → नमुने वापरून उपलब्ध होण्यासाठी, तुम्हाला रीस्टार्ट करणे आवश्यक आहे. Arduino IDE.

मॅन्युअल लायब्ररी स्थापना

लायब्ररी व्यक्तिचलितपणे स्थापित करण्यासाठी, सर्वप्रथम तुम्हाला अनुप्रयोग बंद करणे आवश्यक आहे Arduino IDE. त्यानंतर डाउनलोड केलेली झिप फाईल काढा. उदाहरणार्थ, आम्हाला काल्पनिक लायब्ररी स्थापित करायची आहे RobotoshaArduino. फाइल अनपॅक करत आहे RobotoshaArduino.zip, आम्हाला फोल्डर मिळणे आवश्यक आहे RobotoshaArduinoसारख्या फाइल्ससह RobotoshaArduino.cppआणि RobotoshaArduino.hआत अनपॅक केल्यानंतर आम्हाला फोल्डरशिवाय फाइल्स मिळाल्या, तर आम्हाला व्यक्तिचलितपणे फोल्डर तयार करणे आवश्यक आहे RobotoshaArduino, परिणामी लायब्ररी फाइल्स आत ठेवून.

यानंतर तुम्हाला हे फोल्डर फोल्डरमध्ये हलवावे लागेल लायब्ररी, ज्याचे स्थान तुम्ही वापरत असलेल्या ऑपरेटिंग सिस्टमवर अवलंबून आहे.

विंडोजसाठी, डीफॉल्ट आहे:

माझे दस्तऐवज\Arduino\लायब्ररी

वापरकर्त्यांसाठी Mac OS X:

~/दस्तऐवज/Arduino/लायब्ररी

IN लिनक्सहे एक फोल्डर असेल लायब्ररीतुमच्या स्केचसह.

लायब्ररी फाइल्स हे खूप महत्वाचे आहे .cppआणि .हवेगळ्या फोल्डरमध्ये होते (उदाहरणार्थ RobotoshaArduino). फाइल्स ठेवल्यास .cppआणि .हफक्त एका फोल्डरमध्ये लायब्ररी, तर लायब्ररी काम करणार नाही.

रीस्टार्ट केल्यानंतर Arduino IDEजोडलेली लायब्ररी स्केच → लायब्ररी समाविष्ट करा या मेनूद्वारे तुमच्या प्रोग्रामशी कनेक्ट करण्यासाठी उपलब्ध होईल.

तुम्ही या प्रकाशनाला कसे रेट करता?

arduino ला लायब्ररी स्थापित करणे आणि कनेक्ट करणे हे एक सामान्य ऑपरेशन आहे जितक्या लवकर किंवा नंतर कोणत्याही विकासकाला ते अपरिहार्यपणे सामोरे जाईल; सर्व प्रोग्रामिंग भाषांमधील बाह्य प्लग-इन कोड वेळ वाचवण्यासाठी वापरला जातो. Arduino अपवाद नाही: बऱ्याच सेन्सर्स, मॉड्यूल, स्क्रीन आणि मोटर्सना आपल्या कोडमध्ये लागू करणे कठीण असलेल्या जटिल परस्पर योजनांची आवश्यकता असते. आवश्यक लायब्ररी डाउनलोड करणे खूप सोपे आणि जलद आहे, ते मॅन्युअली किंवा Arduino IDE वापरून पटकन कनेक्ट करा आणि नंतर ते तुमच्या सर्व स्केचमध्ये वापरा. या लेखात आपल्याला लायब्ररी कनेक्ट करणे आणि वापरण्याबद्दल लहान सूचना सापडतील.

Arduino मधील लायब्ररी हा बाह्य फायलींमधील प्रोग्राम कोड आहे जो स्थापित केला जाऊ शकतो आणि आपल्या स्केचशी कनेक्ट केला जाऊ शकतो. लायब्ररी सेन्सर्स, इंडिकेटर, मॉड्यूल आणि इतर घटकांसह कार्य सुलभ करण्यासाठी आवश्यक असलेल्या विविध पद्धती आणि डेटा संरचना संग्रहित करते. लायब्ररी वापरणे मोठ्या प्रमाणात प्रकल्पांवर काम करणे सोपे करते कारण आपण बऱ्याच छोट्या गोष्टींवर वेळ न घालवता प्रोग्रामच्या मुख्य तर्कावर लक्ष केंद्रित करू शकता. आज, इंटरनेटवर मोठ्या संख्येने लायब्ररी पोस्ट केल्या जातात, जिथे ते सहजपणे डाउनलोड केले जाऊ शकतात आणि पूर्णपणे विनामूल्य. आमच्या वेबसाइटवर आढळू शकते.

फाइल सिस्टमच्या दृष्टीकोनातून, लायब्ररी ही विशिष्ट फोल्डर्स असलेली निर्देशिका असते. प्रकल्प संकलित आणि तयार करताना, Arduino IDE आपोआप कोडमध्ये ते वर्ग, डेटा स्ट्रक्चर्स आणि लायब्ररीतील पद्धती समाविष्ट करते ज्यांचा स्केचमध्ये समावेश केला जातो आणि वापरला जातो. अशा प्रकारे, आवश्यक लायब्ररी स्थापित केल्याची खात्री केल्यानंतर, आमच्या कोडमध्ये योग्य सूचना टाकणे आवश्यक आहे.

Arduino IDE शी कनेक्ट केलेल्या लायब्ररींची यादी कशी शोधायची

प्रत्येक स्थापित लायब्ररीमध्ये कार्य करण्यासाठी एक किंवा अधिक उदाहरणे असतात. ते Arduino शी कनेक्ट केलेल्या उपकरणाच्या क्षमता प्रदर्शित करण्यासाठी वापरले जातात. म्हणून, सर्व स्थापित Arduino लायब्ररींची यादी मिळवण्याचा जलद मार्ग म्हणजे Arduino IDE मधील उदाहरणांची सूची वापरणे. हे करण्यासाठी, मुख्य मेनूमधून फाइल निवडा आणि नंतर उदाहरणे उपमेनू उघडा.

दुसरा मार्ग म्हणजे स्केच मेनू आणि सबमेनू - लायब्ररी समाविष्ट करणे. तेथे तुम्ही लायब्ररींची यादी देखील पाहू शकता:

हेडर h फाइल #include ऑपरेटरसह कनेक्ट करत आहे

लायब्ररी वापरणे सुरू करण्यासाठी, तुम्हाला एच हेडर फाइल प्रोग्रामच्या सुरुवातीला समाविष्ट निर्देशासह समाविष्ट करणे आवश्यक आहे. उदाहरणार्थ, LiquidCrystal.h लायब्ररीसह असे दिसेल: #include

तुम्ही लायब्ररी वापरून पूर्ण उदाहरण पाहू शकता.

लायब्ररीमध्ये आवश्यक फाइल्स

प्रत्येक लायब्ररीमध्ये किमान 2 फाइल्स असणे आवश्यक आहे - .h विस्तारासह शीर्षलेख फाइल आणि .cpp विस्तारासह स्त्रोत कोड फाइल. शीर्षलेख फाइलमध्ये वर्ग वर्णन, स्थिरांक आणि चल असतात. दुसऱ्या फाईलमध्ये पद्धत कोड आहेत. दोन मुख्य फायलींव्यतिरिक्त, त्यात मजकूर दस्तऐवज keywords.txt आणि लायब्ररी वापरण्याच्या उदाहरणांसाठी कोड असलेले उदाहरण फोल्डर असू शकते. h आणि cpp फाईल्स रूट मध्ये स्थित असणे आवश्यक नाही

Arduino IDE मध्ये फायली संपादित करणे शक्य नाही; सर्व बदल कोणत्याही मजकूर संपादक किंवा C++ विकास वातावरणात केले जाऊ शकतात. हे या वस्तुस्थितीमुळे आहे की Arduino IDE मध्ये आम्ही cpp फाइल्ससह काम करत नाही, कोड एडिटर "शुद्ध" C साठी डिझाइन केलेले नाही, ते फक्त Arduino भाषेसह कार्य करते.

आवश्यक लायब्ररी कुठे मिळेल

आवश्यक लायब्ररी इंटरनेटद्वारे डाउनलोड केली जाऊ शकते. बहुतेक लायब्ररी Github वर उपलब्ध आहेत. लायब्ररी डाउनलोड केल्यानंतर, ते योग्य फोल्डरमध्ये जोडणे महत्वाचे आहे जेणेकरून कंपाइलर ते शोधू शकेल आणि स्केच लोड करू शकेल. ज्या फोल्डरमध्ये सर्व कोड सेव्ह केले आहेत ते फोल्डर Arduino IDE स्थापित केल्यानंतर संगणकावर तयार केले जाते. लिनक्स ऑपरेटिंग सिस्टमसाठी, फोल्डरला "स्केचबुक" म्हटले जाते आणि ते Windows वर /home/ मध्ये स्थित आहे, "Arduino" फोल्डर "My Documents" विभागात आढळू शकते.

याव्यतिरिक्त स्थापित केलेल्या सर्व लायब्ररी "लायब्ररी" फोल्डरमध्ये स्थित आहेत. Arduino च्या पूर्वीच्या आवृत्त्यांसाठी, तुम्हाला स्वतः फोल्डर तयार करावे लागेल, परंतु आवृत्ती 1.0.2 पासून सुरू करून, Arduino IDE स्थापित करताना ते आपोआप जोडले जाईल.

लायब्ररी कशी स्थापित करावी. चरण-दर-चरण सूचना

एकदा लायब्ररी तुमच्या PC वर डाउनलोड झाली की, तुम्हाला ती इन्स्टॉल करणे सुरू करावे लागेल. लायब्ररी स्थापित करण्याचे दोन मार्ग आहेत - Arduino IDE वापरणे आणि व्यक्तिचलितपणे.

Arduino IDE वापरून कनेक्शन

लायब्ररी झिप संग्रहण म्हणून डाउनलोड केली जाते. ही पद्धत वापरून ते सक्षम करण्यासाठी, संग्रहण अनपॅक करण्याची आवश्यकता नाही. ते स्थापित करण्यासाठी, तुम्हाला स्केच मेनूवर जाणे आवश्यक आहे – लायब्ररी कनेक्ट करा – Add.Zip लायब्ररी.

जेव्हा विंडो उघडेल, तेव्हा तुम्हाला "हा पीसी" विभागात "डाउनलोड" फोल्डर निवडण्याची आवश्यकता आहे. जर, लायब्ररी डाउनलोड केल्यानंतर, ती दुसर्या ठिकाणी जतन केली गेली असेल, तर तुम्हाला ते निर्दिष्ट करणे आवश्यक आहे.

मग तुम्हाला डाउनलोड केलेली फाइल निवडावी लागेल आणि "उघडा" वर क्लिक करा.

लायब्ररी स्थापित केली जाईल आणि आपण ते वापरू शकता. उदाहरणे फाइल - उदाहरणे वापरणे सुरू करण्यासाठी, तुम्हाला Arduino विकास वातावरण रीस्टार्ट करावे लागेल.

झिप फाईलमधून लायब्ररी व्यक्तिचलितपणे स्थापित करणे

इंस्टॉलेशन सुरू करण्यापूर्वी, तुम्हाला Arduino IDE मधून बाहेर पडणे आवश्यक आहे. लायब्ररीसह डाउनलोड केलेली झिप फाइल अनपॅक करणे आवश्यक आहे. परिणामी, आम्हाला एक फोल्डर मिळेल ज्यामध्ये विस्तार .cpp आणि .h आणि निर्देशिका असलेल्या लायब्ररी फाइल्स असतील. परिणामी फोल्डर लायब्ररीमध्ये ठेवणे आवश्यक आहे.

Windows OS मध्ये, लायब्ररी फोल्डर My Documents – Arduino – libraries रूट अंतर्गत आढळू शकते. लिनक्सवर हे स्केचेस असलेले लायब्ररी फोल्डर असेल.

शेवटी, तुम्हाला Arduino IDE रीस्टार्ट करणे आवश्यक आहे, डाउनलोड केलेली लायब्ररी स्केच - कनेक्ट लायब्ररी द्वारे समाविष्ट करण्यासाठी उपलब्ध असेल.

Arduino लायब्ररी कनेक्ट करताना त्रुटी

खाली लायब्ररी स्थापित करताना संभाव्य त्रुटींची सूची आणि त्यांना सामोरे जाण्याचे मार्ग आहेत:

  • ‘xxxx’ प्रकाराला नाव देत नाही - जर लायब्ररी अद्याप स्थापित केली गेली नसेल, फोल्डर किंवा लायब्ररीचे नाव चुकीचे असेल, फोल्डर स्थान पत्ता चुकीचा असेल किंवा Arduino IDE रीस्टार्ट केले नसेल तर अशीच त्रुटी दिसून येते.
  • चुकीचे फोल्डर स्थान - ही त्रुटी प्रदर्शित झाल्यास, तुम्हाला लायब्ररी एखाद्या फोल्डरमध्ये आहे की नाही हे तपासणे आवश्यक आहे जे पर्यावरणाद्वारे शोधले जाऊ शकते.
  • अवैध लायब्ररीचे नाव – जर #include नंतरचे नाव लायब्ररीच्या नावाशी जुळत नसेल तर त्रुटी दिसून येते.
  • अपूर्ण लायब्ररी - सर्व आवश्यक फाइल्स आणि फोल्डर्स डाउनलोड केले नसल्यास दिसू शकतात.
  • लायब्ररी अवलंबित्व - या प्रकारची लायब्ररी केवळ अतिरिक्त लायब्ररीसह कार्य करत असल्याने, तुम्हाला सुरुवातीला ते समाविष्ट करणे आवश्यक आहे.

शुभ दिवस, प्रिय वाचक आणि ट्रेशबॉक्स पोर्टलच्या वापरकर्त्यांनो! Arduino प्रोग्रामिंगमध्ये लायब्ररी काय आहेत आणि त्यांची आवश्यकता का आहे याचा तुम्ही कधी विचार केला आहे का? कोणत्याही परिस्थितीत, आपल्याला या लेखात या दोन्ही प्रश्नांची उत्तरे सापडतील.

हे काय आहे?

प्रोग्रामिंगमधील लायब्ररी म्हणजे सॉफ्टवेअर विकसित करण्यासाठी वापरल्या जाणाऱ्या रूटीन किंवा वस्तूंचा संग्रह.
जर आपण Arduino भाषेच्या परिस्थितीचा विचार केला, तर हा कोड घटकांचा एक संच आहे जो विकास वातावरणापासून स्वतंत्रपणे स्थापित केला जातो आणि कोणत्याही मॉड्यूल किंवा सेन्सरशी संवाद साधण्यासाठी सेवा देतो.

अधिक स्पष्टतेसाठी, मी एक उदाहरण देईन. तुम्ही सर्वोला Arduino शी जोडले आहे. त्याच्याशी संवाद साधण्यासाठी, तुम्हाला अंगभूत लायब्ररी समाविष्ट करणे आवश्यक आहे सर्वो.एच. हे तुमच्या स्केचच्या अगदी सुरुवातीला # कमांड वापरून केले जाते. Servo.h समाविष्ट करा.
लायब्ररी सर्वो.एचसर्वो ड्राइव्हच्या सोयीस्कर नियंत्रणासाठी आदेशांचा संच समाविष्ट आहे.

सर्वो


खाली स्पष्टीकरणासह एक कोड उदाहरण आहे.

#समाविष्ट करा // #include कमांडमध्ये लायब्ररीचा समावेश आहे
सर्वो मायसर्व्हो; // सर्वो प्रकारातील myservo नावाचे व्हेरिएबल घोषित करा
void setup() // मानक सेटअप प्रक्रिया
{
myservo.attach(10); // command.attach सर्व्होला पोर्ट 10 वर बांधते (इतर कोणतेही शक्य आहे)
}
शून्य पळवाट()
{
myservo.write(0); // command.write सर्वो शाफ्टला इच्छित कोनात फिरवते (0 ते 180 पर्यंत असू शकते)

myservo.write(180); // शाफ्ट 180 अंश फिरवा
विलंब (2000); // 2 सेकंद विराम द्या
}

या कोडमधून तुम्हाला काय हायलाइट करण्याची आवश्यकता आहे:

  • // वापरणे एकल-लाइन टिप्पणी दर्शवते;
  • आदेश वापरून #समाविष्ट करातुम्ही कोणतीही लायब्ररी कनेक्ट करू शकता.
  • संघ .attach()आणि .लिहा()लायब्ररीशी संबंधित आहेत सर्वो.एच.
  • संघ विलंब()लायब्ररीला लागू होत नाही Servo.h,ते Arduino भाषेच्या मानक कमांडशी संबंधित आहे.
  • कोणत्याही कमांडच्या आधी टाइप व्हेरिएबलचे नाव लिहा सर्वो.
  • एक व्हेरिएबल फक्त एका सर्वोवर लागू होते.
तेथे पुष्कळ लायब्ररी आहेत आणि जर तुम्ही तुम्हाला आवश्यक असलेल्या मॉड्यूलचे कनेक्शन शोधण्यास सुरुवात केली तर तुम्ही ती इंटरनेटवर डाउनलोड करू शकता. तसे, Arduino प्रोग्रामिंग भाषेला वायरिंग म्हणतात आणि ती C++ ची सरलीकृत आवृत्ती आहे.

लायब्ररी कशी स्थापित करावी?

कोडमध्ये लायब्ररी अंमलात आणण्यासाठी, आपल्याला ते स्थापित करणे आवश्यक आहे आणि त्यापूर्वी आपल्याला ते डाउनलोड करणे आवश्यक आहे. तुम्ही डाउनलोड केलेली लायब्ररी एका संग्रहाच्या स्वरूपात असेल जी पुढील स्थापनेसाठी अनपॅक करणे आवश्यक आहे. पुढे, लायब्ररी असलेले फोल्डर Arduino/libraries फोल्डरमध्ये हलवले पाहिजे. आपण खालील स्क्रीनशॉटमध्ये तपशीलवार स्थापना पाहू शकता.




जर इंस्टॉलेशन यशस्वी झाले तर, Arduino IDE मध्ये तुम्ही इंस्टॉल केलेल्या लायब्ररीतून उदाहरणे स्केचेस शोधू शकाल.


हे सांगणे महत्त्वाचे आहे की नवीन स्थापित लायब्ररी वापरण्यापूर्वी, Arduino IDE रीबूट करणे आवश्यक आहे.

ग्रंथालयांचे प्रकार

सर्व Arduino लायब्ररी अनेक प्रकारांमध्ये विभागल्या जाऊ शकतात:
  • स्टँडर्ड (बिल्ट-इन) लायब्ररी म्हणजे ती लायब्ररी जी Arduino IDE मध्ये तयार केली जातात. त्यांना वेगळ्या स्थापनेची आवश्यकता नाही आणि ते Arduino IDE स्थापित केल्यानंतर लगेच वापरासाठी उपलब्ध आहेत.
  • अतिरिक्त लायब्ररी म्हणजे ती लायब्ररी जी Arduino IDE मध्ये तयार केलेली नाहीत. ते इंटरनेटवर आढळू शकतात, उदाहरणार्थ, गिथबवर. या ग्रंथालयांचा विकास मुख्यत्वे सेन्सर उत्पादकांकडून केला जातो.
  • अवलंबित लायब्ररी - या लायब्ररींचे अतिरिक्त म्हणून वर्गीकरण केले जाते. जी लायब्ररी दुसऱ्याशिवाय काम करू शकत नाही तिला आश्रित म्हणतात.

ग्रंथालयांची गरज का आहे?

कोड सुलभ करण्यासाठी आणि विविध मॉड्यूल्ससह कार्य करण्यासाठी Arduino प्रोग्रामिंग भाषेतील लायब्ररी आवश्यक आहेत. मूलत:, लायब्ररीतील एक कमांड लायब्ररीच्या निर्मात्याने लिहिलेल्या कोडच्या अनेक ओळी लपवते. सैद्धांतिकदृष्ट्या, बहुतेक मॉड्यूल लायब्ररीशिवाय नियंत्रित केले जाऊ शकतात, तथापि, यासाठी स्केच लिहिण्यासाठी खूप वेळ आणि मेहनत घ्यावी लागेल. परंतु तरीही, आपण लायब्ररीच्या मदतीशिवाय एलसीडी डिस्प्ले नियंत्रित करण्यास सक्षम असण्याची शक्यता नाही.

म्हणूनच डिस्प्ले नवशिक्यांसाठी सर्वात कठीण मॉड्यूलपैकी एक मानला जातो. चला तर मग डिस्प्ले नियंत्रित करण्यासाठी स्केचचे उदाहरण पाहू, कारण त्यात एकाच वेळी दोन लायब्ररी असतात.


I2C प्रोटोकॉलसह LCD डिस्प्ले


तथापि, आम्ही साध्या मजकूर प्रदर्शनाचा विचार करणार नाही, परंतु I2C प्रोटोकॉलसह एक. I2C प्रोटोकॉल हा डिस्प्लेच्या मागील बाजूस असलेला एक लहान काळा बोर्ड आहे (दुसरा फोटो). हा बोर्ड, संबंधित लायब्ररीसह, कोडच्या ओळी कमी करण्यासाठी आणि कनेक्ट करण्यासाठी वायरची संख्या कमी करण्यासाठी डिझाइन केले आहे, ते फक्त चार पर्यंत मर्यादित आहे.

#समाविष्ट करा // I2C सह कार्य करण्यासाठी लायब्ररी कनेक्ट करा
#समाविष्ट करा // मजकूर प्रदर्शनासह कार्य करण्यासाठी लायब्ररी कनेक्ट करा

LiquidCrystal_I2C lcd(0x27, 16, 2);
/* डिस्प्ले कार्य करण्यासाठी, तुम्हाला त्याचा पत्ता शोधण्याची आवश्यकता आहे, परंतु आम्ही या लेखात याचा विचार करणार नाही. 16 - प्रति ओळ पेशींची संख्या. 4 - ओळींची संख्या. हे पॅरामीटर्स डिस्प्लेवर अवलंबून बदलले जाऊ शकतात. */

निरर्थक सेटअप()

{
lcd.begin(); // डिस्प्ले चालू करा
lcd.backlight(); // बॅकलाइट सक्षम करा
lcd.print("हॅलो, वर्ल्ड!"); // आउटपुट मजकूर
}

शून्य पळवाट()
{
// आम्ही येथे काहीही लिहित नाही
}

मला खात्री आहे की तुम्हाला लायब्ररीशी संबंधित कमांड्स आधीच सापडल्या आहेत LiquidCrystal_I2C.h.या .प्रारंभ .बॅकलाइटआणि .प्रिंट. या स्केचमध्ये लायब्ररी वायर.एच I2C प्रोटोकॉलच्या योग्य ऑपरेशनसाठी आवश्यक आहे.

तळ ओळ

प्रोग्रामिंगमध्ये लायब्ररी खूप आवश्यक आहे. ते स्केचेस लिहिणे लक्षणीयरीत्या सुलभ करू शकतात आणि मॉड्यूल व्यवस्थापन अधिक सुलभ बनवू शकतात. या लेखात, आम्ही लायब्ररी म्हणजे काय, ते कसे स्थापित करावे आणि त्यांची आवश्यकता का आहे हे शोधून काढले. आम्ही काही उदाहरणे देखील पाहिली. इतकंच.

आम्ही वाचण्याची शिफारस करतो

वर