EZ GUI साठी FDI डेमो
टीप: ट्युटोरियल २ आणि ३ मध्ये प्रक्रिया एकसारखीच आहे परंतु ते वेगवेगळे कम्युनिकेशन पोर्ट वापरतात.
सारांश
ट्युटोरियल १ मध्ये प्रोजेक्ट क्रिएटर वापरून µEZ GUI डिव्हाइसवर डेमो प्रोजेक्ट कसा चालवायचा यावर लक्ष केंद्रित केले आहे. आता एक कार्यरत प्रोजेक्ट आहे आणि तो डिव्हाइसवर फ्लॅश केला जाऊ शकतो आणि त्यात काही बाह्य कार्यक्षमता जोडता येते. या ट्युटोरियलमध्ये तुम्ही µEZ GUI डिव्हाइसशी सिरीयल कम्युनिकेशन पोर्टद्वारे (USB पोर्ट नाही) बोलणार आहात. हे अधिक हार्डवेअर वापरण्यासाठी प्रोजेक्टमध्ये कोड कसा जोडायचा तसेच µEZ GUI डिव्हाइसवर आणि त्यापासून सिरीयल कम्युनिकेशन कसे सुरू करायचे हे दाखवेल.
भाग
- हार्डवेअर असेंबल करा आणि प्रोजेक्ट डेमो उघडा
- प्रकल्प सेटअप करा Fileसिरीयल कम्युनिकेशनसाठी एस.
- सिरीयल कम्युनिकेशनसाठी µEZ लायब्ररी कॉल्स जोडा.
- टर्मिनल सिरीयल कनेक्शनसह प्रोग्राम चालवा.
आवश्यकता
हार्डवेअर
- μEZGUI-4088-43WQN
- सेगर जे-लिंक लाइट मॉड्यूल
- यूएसबी ते सिरीयल टीटीएल केबल
- २x USB A ते USB मिनी केबल
सॉफ्टवेअर
- IAR एम्बेडेड वर्कबेंच
- पुट्टी
- μEZ GUI प्रोजेक्ट क्रिएटर (पूर्वी वापरलेले)
- μEZ GUI ऑनलाइन लायब्ररी
हार्डवेअर असेंबल करा आणि प्रोजेक्ट डेमो उघडा
पायरी 1:
आवश्यक हार्डवेअर गोळा करा.
USB ते 3.3v TTL सिरीयल केबल घ्या.
प्रथम हार्डवेअर एकत्र करा. या ट्युटोरियलमध्ये डिव्हाइसशी संवाद साधण्यासाठी बोर्डवरील पर्यायी COMM पोर्ट वापरला जाईल. त्यासाठी एक विशेष USB ते TTL सिरीयल केबल आवश्यक आहे ज्यामध्ये सिग्नल रूपांतरित करण्यासाठी अंतर्गत अडॅप्टर आहे. या ट्युटोरियलसाठी आवश्यक असलेल्या केबलचा फोटो खाली दिला आहे:
आकृती १: आवश्यक हार्डवेअर
बहुतेक केबल अडॅप्टरमध्ये ६ पिन तुटलेले असतात, परंतु फक्त ३ आवश्यक असतात. μEZ GUI च्या बाजूला असलेला पर्यायी COMM पोर्ट Hirose DF6 कनेक्टर वापरतो.
आकृती २: USB ते TTL UART कनेक्टर
पायरी 2:
USB Rx ला μEZ GUI TX शी कनेक्ट करा (पिन १ पर्यंत पिवळा).
USB Tx ला μEZ GUI Rx शी कनेक्ट करा (पिन 6 वर केशरी).
जमिनीला जमिनीशी जोडा (काळा पिन ४ किंवा ५ ला).
USB Rx ला µEZ GUI TX (पिन १ वर पिवळा), USB Tx ला µEZ GUI Rx (पिन ६ वर नारंगी) आणि ग्राउंड टू ग्राउंड (पिन ४ किंवा ५ वर काळा) शी जोडा. µEZ GUI च्या मागील बाजूस पिन १ वर एक त्रिकोणी बाण चिन्हांकित करतो. तुम्हाला दृश्यमानपणे मदत करण्यासाठी या प्रतिमा समाविष्ट केल्या आहेत:
चित्रांमध्ये, µEZ GUI बोर्डवरील पुरुष Hirose DF13 कनेक्टरला योग्य महिला पूरक वापरला आहे. तथापि, तुम्हाला हा कनेक्टर वापरण्याची आवश्यकता नाही आणि जर तुम्हाला खात्री असेल तर तुम्ही बोर्डशी कनेक्शन वैयक्तिकरित्या पिन करू शकता.
पायरी 3:
IAR एम्बेडेड वर्कबेंच उघडा.
ट्युटोरियल १ मधील डेमो प्रोजेक्ट उघडा.
एकदा µEZ GUI संगणकाशी पर्यायी COMM पोर्ट आणि USB ते सिरीयल केबलद्वारे कनेक्ट झाला की कोड जोडण्याची वेळ आली आहे. आता IAR एम्बेडेड वर्कबेंचवर जा आणि ट्यूटोरियल १ मध्ये तयार केलेला डेमो प्रोजेक्ट उघडा. त्यात सिरीयल कम्युनिकेशन फंक्शनॅलिटीसाठी कोड जोडला जाईल आणि तो बॅकग्राउंडमध्ये स्वतःहून चालवला जाईल.
प्रकल्प सेटअप करा Fileसिरीयल कम्युनिकेशनसाठी एस.
µEZ GUI वर सिरीयल कम्युनिकेशनची कार्यक्षमता दाखवण्यासाठी एक साधी इको टेस्ट तयार केली जाईल. तुम्ही संगणकावरील टर्मिनल विंडोद्वारे डिव्हाइसवर एक कॅरेक्टर लिहिणार आहात आणि µEZ GUI ला तो कॅरेक्टर परत त्याच विंडोमध्ये लिहिण्यास सांगणार आहात.
पायरी 4:
- एक शीर्षलेख तयार करा file सिरीयलइको असे नाव दिले.
- स्रोत तयार करा file सिरीयलइको असे नाव दिले.
- हे जोडा fileडेमो प्रोजेक्टसाठी.
प्रथम, एक शीर्षलेख आणि एक स्रोत तयार करा. file ज्या प्रोजेक्टमध्ये सिरीयल कम्युनिकेशन चालविण्यासाठी कोड असेल. प्रोजेक्टमध्ये जा आणि दोन नवीन बनवा files आणि त्यांना serialecho.h आणि serialecho.c अशी नावे द्या. त्यात अजून काहीही टाकू नका, फक्त त्यांना प्रोजेक्टच्या सोर्स फोल्डरमध्ये सेव्ह करा. आता जोडा fileप्रत्यक्ष प्रकल्पाकडे. मध्ये Fileवर्कस्पेस डायलॉगच्या विंडोमध्ये, विंडोमध्ये कुठेतरी उजवे-क्लिक करा आणि जोडा वर क्लिक करा. Files… प्रकल्पाच्या स्त्रोत फोल्डरवर नेव्हिगेट करा जिथे fileसेव्ह केले होते आणि जोडण्यासाठी त्या प्रत्येकावर क्लिक करा. आता files प्रकल्पाचा भाग आहेत.
फंक्शन्स चालू ठेवण्यासाठी अधिक सेटअप आवश्यक आहे. µEZ GUI एकमेकांना समांतर कार्ये चालवून फंक्शन्स शेड्यूल करते. संप्रेषणासाठी, फंक्शन चालविण्यासाठी एक टास्क सेट करा जेणेकरून ते नेहमी पार्श्वभूमीत चालू राहील.
पायरी 5:
- #uEZ.h आणि uEZStream.h समाविष्ट करा
- “StartSerialEcho” साठी एक फंक्शन प्रोटोटाइप तयार करा.
टीप: फंक्शनमध्ये पॅरामीटर्स वापरले जाणार नाहीत परंतु टास्क म्हणून योग्यरित्या कॉल करण्यासाठी ते दाखवल्याप्रमाणे समाविष्ट करणे आवश्यक आहे.
पायरी 6:
- #serialecho.h समाविष्ट करा
- फंक्शनमध्ये while(1) लूप ठेवा.
पुढे .c सेटअप करा file. serialecho.h समाविष्ट करा file वरती. आता फंक्शन डेफिनेशनसाठी एक स्पेस तयार करा. आत while(1) लूप ठेवा जेणेकरून टास्क सतत चालू राहील आणि बाहेर पडणार नाही, ज्यामुळे कम्युनिकेशन संपेल.
पायरी 7:
main.c मध्ये MainTask वर जा.
StartSerialEcho साठी UEZTaskCreate फंक्शन कॉल घाला.
डिव्हाइस सुरू होताच काम सुरू करणे आवश्यक आहे जेणेकरून ते पार्श्वभूमीत चालू शकेल. हे करण्यासाठी, main.c मध्ये थोडासा कोड जोडा. file. ते मध्ये सूचीबद्ध आहे file डावीकडील विंडो. ती उघडा आणि मेनटास्क नावाच्या फंक्शनवर नेव्हिगेट करा. हे फंक्शन डिव्हाइस चालू असताना टास्क आणि फंक्शन्स सेट करते. पहिल्या printf स्टेटमेंटच्या खाली कोडची ही ओळ घाला:
टीप: पॅरामीटर मूल्यांबद्दल काळजी करू नका. त्यांना फक्त प्रगत कार्यांसाठी समायोजित करावे लागेल जे नंतर कव्हर केले जातील.
µEZ मध्ये स्वतंत्र कार्य अशा प्रकारे तयार केले जाते. थ्रेडप्रमाणेच, ते पूर्वी तयार केलेल्या StartSerialEcho फंक्शनचा वापर करून कार्य तयार करेल आणि कार्य कॉल करेल.
“इको”. serialecho.h समाविष्ट करायला विसरू नका. file main.c मध्ये. प्रोग्राम आता कंपाईल आणि रन करण्यास सक्षम असावा. जरी तो दिसत नसला तरी, नुकतेच तयार केलेले कार्य आता µEZ डिव्हाइस चालू आणि लोड झाल्यावर पार्श्वभूमीत चालू होईल.
सिरीयल कम्युनिकेशनसाठी µEZ लायब्ररी कॉल्स जोडा.
आता, कार्य पूर्ण करण्यासाठी फंक्शनचा कोड जोडा. हे करण्यासाठी तुम्हाला µEZ लायब्ररीमधून काही फंक्शन कॉल समजून घ्यावे लागतील आणि वापरावे लागतील. कार्यासाठी आवश्यक कार्यक्षमता प्रदान करण्यासाठी ते आधीच सेट केलेले आहेत. सोयीस्करपणे, FDI वर एक Doxygen प्रणाली आहे. webसाइट ज्यामध्ये सर्व वेगवेगळ्या µEZ लायब्ररी फंक्शन्सची रूपरेषा आहे. ती येथे आहे. पेजवर असताना वरच्या बाजूला असलेल्या मॉड्यूल्स टॅबवर जा आणि µEZStream वर नेव्हिगेट करा. आता तुम्ही या पेजवर असाल:
µEZ GUI डिव्हाइससह सिरीयल कम्युनिकेशन तयार करण्यासाठी आपण ही फंक्शन्स वापरणार आहोत.
पायरी 8:
चलांची व्याख्या करा
UEZस्ट्रीम उघडा
हे घडवून आणण्यासाठी आवश्यक असलेले व्हेरिअबल्स परिभाषित करणे ही पहिली गोष्ट आवश्यक आहे. आवश्यक असलेले पहिले व्हेरिअबल्स डिव्हाइस स्वतः परिभाषित करते. फंक्शनमध्ये while लूपच्या वर “T_uEZDevice uart3;” ठेवा. पुढे, कॅरेक्टर प्राप्त करण्यासाठी आणि परत पाठवण्यासाठी कॅरेक्टर बफर आवश्यक आहे. पुढील ओळीवर बफरसाठी “TUInt8 receiveCOM[2];” ठेवा. इनपुट कॅरेक्टरसाठी फक्त एक इंडेक्स आवश्यक आहे. आता, “uEZStreamOpen(“UART3”, &uart3);” ही ओळ वापरून कम्युनिकेशन स्ट्रीम उघडा. आता फंक्शन असे दिसले पाहिजे:
एक गोष्ट सहज लक्षात येते ती म्हणजे UART3 हे UART0 सारखे आधीच इनिशियलाइज केलेले नाही, म्हणून ते इनिशियलाइज करण्यासाठी कोडची एक ओळ जोडणे आवश्यक आहे. uEZStreamOpen फंक्शन कॉलच्या वर, ही ओळ जोडा:
ते डिव्हाइसचे UART3 पोर्ट सुरू करेल आणि ते चालू होण्यास अनुमती देईल.
पायरी 9:
- स्ट्रीम बफर फ्लश करा.
- वाचन कमांड तयार करा.
- लिहिण्याची आज्ञा तयार करा.
आता, while लूपमध्ये जा आणि प्रत्यक्ष send आणि receive कार्यक्षमता जोडा. प्रत्येक सिरीयल लूपच्या सुरुवातीला सर्वात आधी स्ट्रीम फ्लश करणे आवश्यक आहे जेणेकरून कम्युनिकेशन बफरमध्ये टाकण्यासाठी काहीही शिल्लक राहणार नाही. while लूपमध्ये पहिली ओळ म्हणून “µEZStreamFlush(uart3);” ही ओळ ठेवा. आता, UEZStreamRead आणि UEZStreamWrite नावाचे receive आणि send फंक्शन्स समाविष्ट करा.
फंक्शनच्या पुढील भागात दाखवल्याप्रमाणे रीड फंक्शनची कॉपी करा:
लक्षात घ्या की दोन्हीसाठी आर्ग्युमेंट्स आणि पॅरामीटर्स सारखेच आहेत. हे पॅरामीटर्स µEZ GUI ला एक कॅरेक्टर प्राप्त होईपर्यंत ऐकण्यास सांगतात आणि नंतर ते रिसीव्हकॉम बफरमध्ये ठेवतात. त्यानंतर ते बफरमधून (बफरचा आकार) एक कॅरेक्टर टर्मिनल विंडोमध्ये परत लिहिते.
पायरी 10:
- while(1) लूप बंद करा.
- शेवटी रिटर्न ० घाला.
आता, while लूप बंद करा आणि शेवटी रिटर्न 0 ठेवा. ते कधीही गाठता येणार नाही, परंतु ते एक व्हॅल्यू रिटर्निंग फंक्शन असल्याने ज्याला टास्क म्हणता येईल, काहीतरी रिटर्न करण्यासाठी सेट करावे लागेल.
सर्वकाही पूर्ण झाल्यानंतर फंक्शन असे दिसले पाहिजे:
टीप: ही कोडची एक साधी आवृत्ती आहे ज्यामध्ये त्रुटी तपासणी समाविष्ट नाही.
या कोडच्या या आवृत्तीमध्ये कोणत्याही स्वरूपण किंवा त्रुटी तपासणीचा समावेश नाही जो प्रत्यक्ष अंमलबजावणीमध्ये अत्यंत महत्त्वाचा असेल. उदा.ampफॉरमॅटिंग किंवा एरर चेकिंग कसे अंमलात आणायचे याबद्दलचे मार्गदर्शन µEZ लायब्ररीमध्ये आणि आधीच बनवलेल्या समावेशक डेमो प्रोजेक्टमध्ये मिळू शकते ज्यामध्ये अधिक तपशीलवार उदाहरण आहे.ampया कोडचे le. या टप्प्यावर तुम्ही प्रकल्प संकलित करत असल्याची खात्री करावी आणि आढळणाऱ्या कोणत्याही त्रुटी दुरुस्त कराव्यात.
पायरी 11:
- प्रकल्प संकलित करा.
- संकलनातील कोणत्याही चुका दुरुस्त करा.
टर्मिनल सिरीयल कनेक्शनसह प्रोग्राम चालवा.
पायरी 12:
- पुटी डाउनलोड करा.
- पुटी चालवा आणि सिरीयलसाठी कॉन्फिगर करा.
- टर्मिनल विंडो उघडा.
हा प्रोग्राम आता चालविण्यासाठी तयार आहे परंतु सिरीयल कम्युनिकेशनसह वापरण्यासाठी एक इंटरफेस सेटअप करणे आवश्यक आहे. सिरीयल कन्सोल कार्यक्षमतेसह वापरण्यास सोपा आणि विनामूल्य प्रोग्राम म्हणजे मोठ्या प्रमाणात वापरला जाणारा PUTTY. तो येथून डाउनलोड करता येईल.
एकदा डाउनलोड केल्यानंतर, exe चालवा. file आणि हे मिरर करण्यासाठी प्रारंभिक कॉन्फिगरेशन स्क्रीन बदला:
तुमच्या संगणकावर (डिव्हाइस मॅनेजरमध्ये आढळणारे) सिरीयल केबल ज्या COM पोर्टशी जोडलेले आहे त्यावर COM नंबर सेट करणे आवश्यक आहे आणि ते COM4 असणे आवश्यक नाही. पुढे, कनेक्शन->सिरीयल वर जा आणि सर्वकाही खालीलप्रमाणे जुळत असल्याची खात्री करा:
आता, ओपन वर क्लिक करा आणि एक कन्सोल विंडो दिसेल. जर प्रोग्राम अपलोड झाला असेल आणि संगणकावर चालू असेल, तर तुम्ही टर्मिनल विंडोमध्ये अक्षरे टाइप करू शकाल आणि ते डिव्हाइसवरून तुमच्याकडे परत टाइप करू शकाल.
अभिनंदन! तुम्ही आता UART3 सह µEZ GUI डिव्हाइसवर सिरीयल कम्युनिकेशन यशस्वीरित्या अंमलात आणले आहे. आता तुम्ही उपलब्ध असलेल्या पर्यायी TTL सिरीयल कम्युनिकेशन पोर्टद्वारे µEZ GUI डिव्हाइसशी संवाद साधू शकता. हे कमांड जारी करण्यासाठी तसेच नंतर कोड डीबग करण्यासाठी खूप उपयुक्त ठरू शकते. या ट्युटोरियलमध्ये शिकलेल्या पायऱ्यांसह तुम्ही येणाऱ्या ट्युटोरियलमध्ये अधिक डिव्हाइस कार्यक्षमता अधिक सहजपणे जोडू शकाल. कृपया आमच्या डाउनलोड करण्यायोग्य समावेशक डेमो प्रोजेक्टचा संदर्भ घ्या.ampया कार्याशी संबंधित आणि इतर गोष्टींबद्दल अधिक सखोल कोडिंग.
आनंद घ्या!
कागदपत्रे / संसाधने
![]() |
EZ GUI साठी FDI डेमो [pdf] मालकाचे मॅन्युअल FDI_AN_uEZ_003, EZ GUI साठी डेमो, EZ GUI, GUI, डेमो |