विषयसूची:

STM32CubeIDE में ब्लू पिल बोर्ड की स्थापना: 8 चरण
STM32CubeIDE में ब्लू पिल बोर्ड की स्थापना: 8 चरण

वीडियो: STM32CubeIDE में ब्लू पिल बोर्ड की स्थापना: 8 चरण

वीडियो: STM32CubeIDE में ब्लू पिल बोर्ड की स्थापना: 8 चरण
वीडियो: 11. Install STM32 CubeIDE and LED blink program for Windows (OpenOCD included) 2024, जुलाई
Anonim
STM32CubeIDE में ब्लू पिल बोर्ड की स्थापना
STM32CubeIDE में ब्लू पिल बोर्ड की स्थापना
STM32CubeIDE में ब्लू पिल बोर्ड की स्थापना
STM32CubeIDE में ब्लू पिल बोर्ड की स्थापना

ब्लू पिल्ल एक बहुत ही सस्ता नंगे हड्डियों एआरएम विकास बोर्ड है। इसके प्रोसेसर के रूप में STM32F103C8 है जिसमें 64 kbytes फ्लैश और 20 kbytes RAM मेमोरी है। यह 72 मेगाहर्ट्ज तक चलता है और एआरएम एम्बेडेड सॉफ्टवेयर विकास में आने का सबसे सस्ता तरीका है।

अधिकांश उदाहरण प्रोजेक्ट और ऑडिनो वातावरण का उपयोग करके ब्लू पिल बोर्ड की प्रोग्रामिंग का वर्णन कैसे करें। हालांकि यह काम करता है और आरंभ करने का एक तरीका है, इसकी अपनी सीमाएं हैं। Arduino वातावरण आपको अंतर्निहित हार्डवेयर से थोड़ा सा आश्रय देता है - यही इसका डिज़ाइन लक्ष्य है। इस वजह से आप प्रोसेसर द्वारा प्रदान की जाने वाली सभी सुविधाओं का लाभ नहीं उठा पाएंगे, और रीयल टाइम ऑपरेटिंग सिस्टम को एकीकृत करना वास्तव में समर्थित नहीं है। इसका मतलब है कि उद्योग में Arduino पर्यावरण का व्यापक रूप से उपयोग नहीं किया जाता है। यदि आप एम्बेडेड सॉफ़्टवेयर विकास में अपना करियर बनाना चाहते हैं, तो Arduino एक अच्छी शुरुआत है, लेकिन आपको आगे बढ़ने और औद्योगिक रूप से उपयोग किए जाने वाले विकास वातावरण का उपयोग करने की आवश्यकता है। ST अपने प्रोसेसर के लिए STM32CubeIDE नामक एक पूरी तरह से मुक्त विकास वातावरण सूट प्रदान करने में मदद करता है। यह उद्योग में व्यापक रूप से उपयोग किया जाता है, इसलिए आगे बढ़ना अच्छा है।

हालाँकि, और यह बहुत बड़ा है, STM32CubeIDE भयावह रूप से जटिल है और उपयोग करने के लिए सॉफ्टवेयर का एक कठिन टुकड़ा है। यह सभी ST के प्रोसेसर की सभी विशेषताओं का समर्थन करता है और उन्हें गहन रूप से कॉन्फ़िगर करने की अनुमति देता है, जो कि आप Arduino IDE में नहीं आते हैं क्योंकि यह सब आपके लिए किया गया है।

आपको STM32CubeIDE में पहले चरण के रूप में अपना बोर्ड सेट करना होगा। आईडीई एसटी के अपने विकास बोर्डों के बारे में जानता है और उन्हें आपके लिए सेट करता है, लेकिन ब्लू पिल, एसटी प्रोसेसर का उपयोग करते समय, यह एसटी उत्पाद नहीं है, इसलिए आप यहां अपने दम पर हैं।

यह निर्देश आपको अपना ब्लू पिल बोर्ड स्थापित करने, एक सीरियल पोर्ट को सक्षम करने और कुछ पाठ लिखने की प्रक्रिया में ले जाता है। यह ज्यादा नहीं है, लेकिन यह एक महत्वपूर्ण पहला कदम है।

आपूर्ति

STM32CubeIDE - ST की वेबसाइट से डाउनलोड करें। आपको पंजीकरण करने की आवश्यकता है और इसे डाउनलोड करने में कुछ समय लगता है।

एक ब्लू पिल बोर्ड। आप उन्हें eBay से प्राप्त कर सकते हैं। आपको एक की जरूरत है जिस पर एक वास्तविक एसटी प्रोसेसर हो, जैसा कि कुछ में नहीं होता है। ईबे में तस्वीर को ज़ूम इन करें और प्रोसेसर पर एसटी लोगो देखें।

एक ST-LINK v2 डिबगर/प्रोग्रामर eBay से कुछ पाउंड में उपलब्ध है।

आउटपुट के लिए एक FTDI TTL से USB 3.3V सीरियल केबल और इसे कनेक्ट करने के लिए 2 पुरुष से महिला हेडर वायर।

PuTTY जैसा सीरियल टर्मिनल प्रोग्राम।

चरण 1: एक नया प्रोजेक्ट बनाना

एक नया प्रोजेक्ट बनाना
एक नया प्रोजेक्ट बनाना
एक नया प्रोजेक्ट बनाना
एक नया प्रोजेक्ट बनाना
  1. STM32CubeIDE प्रारंभ करें और फिर मेनू से फ़ाइल|नया|STM32 प्रोजेक्ट चुनें।
  2. भाग संख्या खोज बॉक्स में STM32F103C8 दर्ज करें।
  3. MCUs/MPUs सूची में आपको STM32F103C8 देखना चाहिए। इस लाइन को ऊपर की इमेज की तरह चुनें।
  4. अगला पर क्लिक करें।
  5. प्रोजेक्ट सेटअप डायलॉग में आपको प्रोजेक्ट को एक नाम दें।
  6. बाकी सब कुछ वैसा ही रहने दें और समाप्त पर क्लिक करें। आपका प्रोजेक्ट प्रोजेक्ट एक्सप्लोरर फलक में बाईं ओर दिखाई देगा।

चरण 2: प्रोसेसर को कॉन्फ़िगर करना

प्रोसेसर को कॉन्फ़िगर करना
प्रोसेसर को कॉन्फ़िगर करना
प्रोसेसर को कॉन्फ़िगर करना
प्रोसेसर को कॉन्फ़िगर करना
प्रोसेसर को कॉन्फ़िगर करना
प्रोसेसर को कॉन्फ़िगर करना
प्रोसेसर को कॉन्फ़िगर करना
प्रोसेसर को कॉन्फ़िगर करना
  1. प्रोजेक्ट एक्सप्लोरर फलक में अपना प्रोजेक्ट खोलें और.ioc फ़ाइल पर डबल क्लिक करें।
  2. प्रोजेक्ट और कॉन्फ़िगरेशन टैब पर सिस्टम कोर का विस्तार करें और फिर SYS चुनें।
  3. डीबग ड्रॉप-डाउन में SYS मोड और कॉन्फ़िगरेशन के अंतर्गत सीरियल वायर चुनें।
  4. अब आपके द्वारा ऊपर चुने गए SYS के ठीक ऊपर सिस्टम कोर सूची में RCC चुनें।
  5. हाई स्पीड क्लॉक (एचएसई) ड्रॉप-डाउन से आरसीसी मोड और कॉन्फ़िगरेशन के तहत क्रिस्टल/सिरेमिक रेज़ोनेटर चुनें।
  6. अब फिर से श्रेणियाँ के तहत, कनेक्टिविटी खोलें और USART2 चुनें।
  7. USART2 मोड के तहत और मोड ड्रॉप-डाउन से कॉन्फ़िगरेशन एसिंक्रोनस चुनें।
  8. अब क्लॉक कॉन्फ़िगरेशन टैब चुनें और अगले चरण पर जाएं।

चरण 3: घड़ियों को कॉन्फ़िगर करना

घड़ियों को कॉन्फ़िगर करना
घड़ियों को कॉन्फ़िगर करना

अब आप एक कठिन घड़ी आरेख देख सकते हैं, लेकिन इसे केवल एक बार स्थापित करने की आवश्यकता है। यहाँ वर्णन करना सबसे कठिन है क्योंकि आरेख जटिल है। आपको जिन चीजों को बदलने की जरूरत है, वे ऊपर की छवि में हाइलाइट की गई हैं।

  1. ब्लू पिल बोर्ड बोर्ड पर 8 मेगाहर्ट्ज क्रिस्टल के साथ आता है और यही क्लॉक कॉन्फ़िगरेशन डायग्राम डिफॉल्ट करता है, इसलिए हमें इसे बदलने की आवश्यकता नहीं है।
  2. पीएलएल सोर्स मक्स के तहत निचले विकल्प, एचएसई का चयन करें।
  3. ठीक दाईं ओर PLLMul को X9 पर सेट करें।
  4. सिस्टम क्लॉक मक्स के तहत फिर से दाईं ओर PLLCLK चुनें।
  5. एपीबी 1 प्रीस्केलर के तहत फिर से दाईं ओर /2 चुनें।
  6. बस, इतना ही। यदि आप बैंगनी रंग में हाइलाइट किए गए आरेख के किसी भाग को देखते हैं, तो आपने कुछ गलत किया है।

चरण 4: सहेजें और बनाएं

  1. .ioc कॉन्फ़िगरेशन को Ctrl-S के साथ सहेजें। जब आपसे पूछा जाए कि क्या आप कोड जनरेट करना चाहते हैं तो हाँ चुनें (और मेरा निर्णय याद रखें पर टिक करें ताकि आपसे हर बार पूछा न जाए)। आप.ioc फ़ाइल को बंद कर सकते हैं।
  2. अब मेन्यू से एक बिल्ड करें प्रोजेक्ट | बिल्ड प्रोजेक्ट।

चरण 5: कुछ कोड जोड़ना

कुछ कोड जोड़ना
कुछ कोड जोड़ना
कुछ कोड जोड़ना
कुछ कोड जोड़ना

अब हम कॉन्फ़िगर किए गए सीरियल पोर्ट का उपयोग करने के लिए कुछ कोड जोड़ेंगे।

  1. प्रोजेक्ट एक्सप्लोरर में Core\Src खोलें और इसे संपादित करने के लिए main.c पर डबल क्लिक करें।
  2. नीचे स्क्रॉल करें जब तक कि आपको मुख्य () फ़ंक्शन न मिल जाए और नीचे दिखाए गए कोड को टिप्पणी के ठीक नीचे जोड़ें /* USER CODE BEGIN 3 */ फिर एक बिल्ड फिर से करें।

HAL_UART_Transmit(&huart2, (uint8_t *)"नमस्कार, दुनिया!\r\n", 15U, 100U);

इसके बाद यह अप हार्डवेयर को कनेक्ट करता है और इसे जाने देता है।

चरण 6: हार्डवेयर को जोड़ना

हार्डवेयर को जोड़ना
हार्डवेयर को जोड़ना
हार्डवेयर को जोड़ना
हार्डवेयर को जोड़ना

एसटी-लिंक v2. को जोड़ना

ST-LINK v2 को 4 वायर फीमेल टू फीमेल हैडर रिबन केबल के साथ आना चाहिए था। आपको निम्नलिखित कनेक्शन बनाने की आवश्यकता है:

ब्लू पिल टू एसटी-लिंक v2

GND से GND

CLK से SWCLK

SWDIO को DIO

3.3 से 3.3V

ऊपर पहली छवि देखें।

सीरियल केबल को जोड़ना

यदि आप.ioc फ़ाइल पर वापस जाते हैं और दाईं ओर चिप आरेख को देखते हैं, तो आप देखेंगे कि UART2 की Tx लाइन पिन PA2 पर है। इसके लिए ब्लू पिल बोर्ड पर PA2 लेबल वाले पिन को FTDI सीरियल केबल पर पीले तार के कनेक्शन से कनेक्ट करें। इसके अलावा ब्लू पिल के ग्राउंड पिन (जी लेबल वाले) में से एक को एफटीडीआई सीरियल केबल पर ब्लैक वायर से कनेक्ट करें।

ऊपर दूसरी छवि देखें।

चरण 7: डिबगिंग

डिबगिंग
डिबगिंग
डिबगिंग
डिबगिंग

आप FTDI सीरियल केबल प्लग इन करें और 115200 बॉड पर एक सीरियल टर्मिनल को फायर करें। फिर अपने ST-LINK v2 में प्लग इन करें और आप जाने के लिए तैयार हैं।

  1. STM32CubeIDE से Run|Debug चुनें। जब कोई डिबग डायलॉग के रूप में पॉप अप होता है तो STM32 Cortex-M C/C++ Application और OK चुनें।
  2. जब एक कॉन्फ़िगरेशन संपादित करें संवाद पॉप अप होता है तो बस ठीक दबाएं।
  3. डीबगर मुख्य() की पहली पंक्ति पर टूट जाएगा। मेनू से रन|रिज्यूमे चुनें और सीरियल टर्मिनल में संदेशों की जांच करें।

चरण 8: अधिक करना

बस इतना ही, आपका पहला STM32CubeIDE एप्लिकेशन कॉन्फ़िगर और चल रहा है। यह उदाहरण बहुत कुछ नहीं करता है - बस सीरियल पोर्ट से कुछ डेटा भेजता है।

अन्य बाह्य उपकरणों का उपयोग करने और बाहरी उपकरणों के लिए ड्राइवर लिखने के लिए आपको उस चुनौतीपूर्ण कॉन्फ़िगरेशन संपादक से फिर से निपटना होगा! मदद करने के लिए, मैंने STM32CubeIDE उदाहरण परियोजनाओं की एक श्रृंखला तैयार की है जो ब्लू पिल के प्रोसेसर पर सभी बाह्य उपकरणों को छोटे आसान समझने वाली परियोजनाओं में कॉन्फ़िगर और प्रयोग करती है। वे सभी खुले स्रोत हैं और आप उनके साथ जो चाहें करने के लिए स्वतंत्र हैं। प्रत्येक परिधीय को कॉन्फ़िगर किया गया है और उसके बाद अलग-अलग (लगभग!) में इसका प्रयोग करने के लिए नमूना कोड है ताकि आप एक समय में केवल एक परिधीय जाने पर ध्यान केंद्रित कर सकें।

साधारण EEPROM चिप्स से लेकर प्रेशर सेंसर, टेक्स्ट और ग्राफिक LCD's, TCP, HTTP और MQTT के लिए SIM800 मॉडेम, कीपैड, रेडियो मॉड्यूल, USB और FatFS, SD कार्ड और फ्रीआरटीओएस के साथ एकीकरण के लिए बाहरी उपकरणों के लिए भी ड्राइवर हैं।

वे सभी यहां जीथब में पाए जा सकते हैं …

github.com/miniwinwm/BluePillDemo

सिफारिश की: