STM32WL3x सफ्टवेयर प्याकेज
निर्दिष्टीकरणहरू
- उत्पादनको नाम: STM32CubeWL3 सफ्टवेयर प्याकेज
- अनुकूलता: STM32WL3x माइक्रोकन्ट्रोलरहरू
- मुख्य विशेषताहरु:
- लो-लेयर (LL) र हार्डवेयर एब्स्ट्रेक्शन लेयर (HAL) API हरू
- SigfoxTM, FatFS, र FreeRTOSTM कर्नेल मिडलवेयर कम्पोनेन्टहरू
- आवेदन र प्रदर्शनहरू
उत्पादन उपयोग निर्देशन
सुरु गर्दै
STM32CubeWL3 सफ्टवेयर प्याकेज प्रयोग गर्न सुरु गर्न, यी चरणहरू पालना गर्नुहोस्:
- आधिकारिकबाट सफ्टवेयर प्याकेज डाउनलोड गर्नुहोस् webसाइट।
- आवश्यक विकास वातावरण स्थापना गर्नुहोस् (जस्तै, STM32CubeIDE, EWARM, MDK-ARM)।
- पूर्व सन्दर्भ गर्नुहोस्amples र अनुप्रयोगहरू मार्गदर्शनको लागि प्रदान गरियो।
STM32CubeWL3 आर्किटेक्चर ओभरview
STM32CubeWL3 सफ्टवेयर प्याकेज तीन मुख्य स्तर वरिपरि बनाइएको छ
- स्तर १: हार्डवेयर एब्स्ट्रेक्शन लेयर (HAL) र BSP ड्राइभरहरू।
- स्तर १: अनुप्रयोगहरू, पुस्तकालयहरू, र प्रोटोकल-आधारित घटकहरू।
बारम्बार सोधिने प्रश्नहरू (FAQ)
प्रश्न: STM32CubeWL3 सफ्टवेयर प्याकेजका मुख्य विशेषताहरू के हुन्?
A: मुख्य सुविधाहरूमा निम्न-तह र HAL API, SigfoxTM, FatFS, FreeRTOSTM कर्नेल, अनुप्रयोगहरू, र प्रदर्शनहरू जस्ता मिडलवेयर कम्पोनेन्टहरू समावेश छन्।
परिचय
STM32Cube एक STMicroelectronics मौलिक पहल हो जसले विकास प्रयास, समय र लागत घटाएर डिजाइनर उत्पादकतामा उल्लेखनीय सुधार गर्छ। STM32Cube ले सम्पूर्ण STM32 पोर्टफोलियोलाई समेट्छ।
STM32Cube मा समावेश छ:
- अवधारणा देखि प्राप्ति सम्म परियोजना विकास कभर गर्न प्रयोगकर्ता-अनुकूल सफ्टवेयर विकास उपकरणहरूको एक सेट, बीचमा] जुन निम्न हुन्:
- STM32CubeMX, ग्राफिकल सफ्टवेयर कन्फिगरेसन उपकरण जसले ग्राफिकल विजार्डहरू प्रयोग गरेर C प्रारम्भिक कोडको स्वचालित उत्पादनलाई अनुमति दिन्छ।
- STM32CubeIDE, परिधीय कन्फिगरेसन, कोड जेनेरेसन, कोड कम्पाइलेशन, र डिबग सुविधाहरूको साथ एक सबै-मा-एक विकास उपकरण।
- STM32CubeCLT, कोड संकलन, बोर्ड प्रोग्रामिङ, र डिबग सुविधाहरूको साथ एक सबै-इन-वन आदेश-लाइन विकास उपकरणसेट
- STM32CubeProgrammer (STM32CubeProg), ग्राफिकल र कमाण्ड-लाइन संस्करणहरूमा उपलब्ध प्रोग्रामिङ उपकरण
- STM32CubeMonitor (STM32CubeMonitor, STM32CubeMonPwr, STM32CubeMonRF, STM32CubeMonUCPD), वास्तविक समयमा STM32 अनुप्रयोगहरूको व्यवहार र प्रदर्शनलाई राम्रो बनाउन शक्तिशाली निगरानी उपकरणहरू।
- STM32Cube MCU र MPU प्याकेजहरू, प्रत्येक माइक्रोकन्ट्रोलर र माइक्रोप्रोसेसर श्रृंखला (जस्तै STM32WL3x उत्पादन लाइनको लागि STM32CubeWL3) को लागि विशिष्ट एम्बेडेड-सफ्टवेयर प्लेटफर्महरू, जसमा समावेश छन्:
- STM32Cube हार्डवेयर एब्स्ट्रेक्शन लेयर (HAL), STM32 पोर्टफोलियोमा अधिकतम पोर्टेबिलिटी सुनिश्चित गर्दै
- STM32Cube कम-तह APIs, उत्कृष्ट प्रदर्शन सुनिश्चित गर्दै र प्रयोगकर्ता नियन्त्रणको उच्च स्तरको साथ फुटप्रिन्टहरू] हार्डवेयर
- FreeRTOS™ कर्नेल, FatFS, र Sigfox™ जस्ता मिडलवेयर कम्पोनेन्टहरूको लगातार सेट
- सबै एम्बेडेड सफ्टवेयर उपयोगिताहरू परिधीय र एप्लिकेटिभ पूर्वको पूर्ण सेटहरू सहितampलेस
- STM32Cube विस्तार प्याकेजहरू, जसमा एम्बेडेड सफ्टवेयर कम्पोनेन्टहरू छन् जसले STM32Cube MCU र MPU प्याकेजहरूको कार्यक्षमतालाई पूरक बनाउँछ:
-
- मिडलवेयर विस्तार र आवेदन तहहरू
- Exampकेही विशिष्ट STMicroelectronics विकास बोर्डहरूमा चलिरहेको छ
यो प्रयोगकर्ता पुस्तिकाले STM32CubeWL3 MCU प्याकेजको साथ कसरी सुरु गर्ने भनेर वर्णन गर्दछ।
खण्ड २ ले STM2CubeWL32 का मुख्य विशेषताहरू वर्णन गर्दछ र खण्ड 3 ले ओभर प्रदान गर्दछview यसको वास्तुकला र MCU प्याकेज संरचनाको।
सामान्य जानकारी
STM32CubeWL3 ले आर्म® Cortex®‑M32+ प्रोसेसरमा आधारित STM3WL0x उत्पादन लाइन माइक्रोकन्ट्रोलरहरूमा Sigfox™ बाइनरीहरू सहित सब-GHz प्रदर्शन अनुप्रयोगहरू चलाउँछ।
STM32WL3x माइक्रोकन्ट्रोलरहरूले STMicroelectronics को अत्याधुनिक सब-GHz अनुरूप RF रेडियो परिधीय इम्बेड गर्दछ, अल्ट्रा-कम-पावर खपत र उत्कृष्ट रेडियो प्रदर्शनको लागि अनुकूलित, अतुलनीय ब्याट्री जीवनकालको लागि।
नोट: आर्म अमेरिका र/वा अन्य ठाउँमा आर्म लिमिटेड (वा यसको सहायक कम्पनीहरू) को दर्ता गरिएको ट्रेडमार्क हो।
STM32CubeWL3 मुख्य सुविधाहरू
- STM32CubeWL3 MCU प्याकेज Arm® Cortex®-M32+ प्रोसेसरमा आधारित STM32 0-बिट माइक्रोकन्ट्रोलरहरूमा चल्छ। यसले, एकल प्याकेजमा, STM32WL3x उत्पादन लाइन माइक्रोकन्ट्रोलरहरूको लागि अनुप्रयोग विकास गर्न आवश्यक सबै जेनेरिक इम्बेडेड सफ्टवेयर कम्पोनेन्टहरू जम्मा गर्दछ।
- प्याकेजले लो-लेयर (LL) र हार्डवेयर एब्स्ट्रेक्शन लेयर (HAL) API हरू समावेश गर्दछ जसले माइक्रोकन्ट्रोलर हार्डवेयर कभर गर्दछ, सँगै पूर्वको विस्तृत सेटampSTMicroelectronics बोर्डहरूमा चलिरहेको छ। HAL र LL API हरू प्रयोगकर्ताको सुविधाको लागि खुला स्रोत BSD लाइसेन्समा उपलब्ध छन्। यसले Sigfox™, FatFS, र FreeRTOS™ कर्नेल मिडलवेयर कम्पोनेन्टहरू पनि समावेश गर्दछ।
- STM32CubeWL3 MCU प्याकेजले यसको सबै मिडलवेयर कम्पोनेन्टहरू कार्यान्वयन गर्ने धेरै अनुप्रयोगहरू र प्रदर्शनहरू पनि प्रदान गर्दछ।
- STM32CubeWL3 MCU प्याकेज घटक लेआउट चित्र 1 मा चित्रण गरिएको छ।
चित्र 1. STM32CubeWL3 MCU प्याकेज कम्पोनेन्टहरू
STM32CubeWL3 वास्तुकला समाप्तview
STM32CubeWL3 MCU प्याकेज समाधान चित्र 2 मा वर्णन गरिए अनुसार सजिलै अन्तरक्रिया गर्ने तीन स्वतन्त्र स्तरहरू वरिपरि बनाइएको छ। स्तर ४
यो स्तर तीन sublayers मा विभाजित छ:
- बोर्ड समर्थन प्याकेज (BSP)।
- हार्डवेयर एब्स्ट्रेक्शन लेयर (HAL):
- HAL परिधीय चालकहरू
- कम तह चालकहरू
- आधारभूत परिधीय उपयोग पूर्वampलेस।
बोर्ड समर्थन प्याकेज (BSP)
यो तहले हार्डवेयर बोर्डहरूमा हार्डवेयर कम्पोनेन्टहरू (जस्तै LEDs, बटनहरू, र COM ड्राइभरहरू) सापेक्ष API को सेट प्रदान गर्दछ। यो दुई भागहरु मिलेर बनेको छ:
- कम्पोनेन्ट:
यो बोर्डमा बाहिरी यन्त्रसँग सम्बन्धित चालक हो र STM32 मा होइन। कम्पोनेन्ट ड्राइभरले BSP ड्राइभर बाह्य कम्पोनेन्टहरूमा विशिष्ट API हरू प्रदान गर्दछ र कुनै अन्य बोर्डमा पोर्टेबल हुन सक्छ। - BSP चालक:
यसले कम्पोनेन्ट ड्राइभरहरूलाई निर्दिष्ट बोर्डमा लिङ्क गर्न अनुमति दिन्छ र प्रयोगकर्ता-अनुकूल API को सेट प्रदान गर्दछ। API नामकरण नियम BSP_FUNCT_Action() हो।
Example: BSP_LED_Init(), BSP_LED_On()
BSP एक मोड्युलर आर्किटेक्चरमा आधारित छ जसले निम्न-स्तरको दिनचर्याहरू लागू गरेर कुनै पनि हार्डवेयरमा सजिलै पोर्ट गर्न अनुमति दिन्छ।
हार्डवेयर एब्स्ट्रेक्शन लेयर (HAL) र लो-लेयर (LL)
STM32CubeWL3 HAL र LL पूरक हुन् र आवेदन आवश्यकताहरूको विस्तृत दायरालाई कभर गर्दछ:
- HAL ड्राइभरहरूले उच्च-स्तर प्रकार्य-उन्मुख उच्च पोर्टेबल API हरू प्रस्ताव गर्छन्। तिनीहरूले अन्त-प्रयोगकर्तालाई MCU र परिधीय जटिलता लुकाउँछन्।
HAL ड्राइभरहरूले जेनेरिक बहु-उदाहरण सुविधा-उन्मुख APIs प्रदान गर्दछ, जसले प्रयोग गर्न तयार प्रक्रियाहरू प्रदान गरेर प्रयोगकर्ता अनुप्रयोग कार्यान्वयनलाई सरल बनाउँछ। पूर्वका लागिample, संचार परिधीयहरू (I2C, UART, र अन्य) को लागी, यसले परिधीय सुरु गर्न र कन्फिगर गर्न, मतदान, अवरोध, वा DMA प्रक्रियामा आधारित डाटा स्थानान्तरण प्रबन्ध गर्न, र संचारको समयमा उत्पन्न हुन सक्ने संचार त्रुटिहरू ह्यान्डल गर्न अनुमति दिने API हरू प्रदान गर्दछ। HAL ड्राइभर API हरू दुई कोटिहरूमा विभाजित छन्:
- जेनेरिक API, जसले सबै STM32 श्रृंखला माइक्रोकन्ट्रोलरहरूलाई सामान्य र जेनेरिक प्रकार्यहरू प्रदान गर्दछ।
- एक्स्टेन्सन API हरू, जसले विशेष परिवार वा विशेष भाग नम्बरको लागि विशिष्ट र अनुकूलित कार्यहरू प्रदान गर्दछ।
- कम-तह API हरू दर्ता स्तरमा कम-स्तर API प्रदान गर्दछ, राम्रो अनुकूलन तर कम पोर्टेबिलिटीको साथ। तिनीहरूलाई MCU र परिधीय विशिष्टताहरूको गहिरो ज्ञान चाहिन्छ।
LL ड्राइभरहरू HAL भन्दा हार्डवेयरको नजिक रहेको छिटो हल्का तौल विशेषज्ञ-उन्मुख तह प्रस्ताव गर्न डिजाइन गरिएको हो। HAL को विपरित, LL API हरू बाह्य उपकरणहरूका लागि प्रदान गरिएको छैन जहाँ अप्टिमाइज गरिएको पहुँच मुख्य विशेषता होइन, वा भारी सफ्टवेयर कन्फिगरेसन वा जटिल माथिल्लो-स्तर स्ट्याक आवश्यक पर्नेहरूका लागि।
LL ड्राइभरहरू सुविधाहरू:
- डेटा संरचनाहरूमा निर्दिष्ट प्यारामिटरहरू अनुसार परिधीय मुख्य सुविधाहरू प्रारम्भ गर्न कार्यहरूको सेट।
- प्रत्येक फिल्डसँग सम्बन्धित रिसेट मानहरूसँग प्रारम्भिक डेटा संरचनाहरू भर्न कार्यहरूको सेट।
- परिधीय डि-इनिशियलाइजेसनको लागि कार्य (परिधीय दर्ताहरू तिनीहरूको पूर्वनिर्धारित मानहरूमा पुनर्स्थापित गरियो)।
- प्रत्यक्ष र परमाणु दर्ता पहुँचको लागि इनलाइन प्रकार्यहरूको सेट।
- HAL बाट पूर्ण स्वतन्त्रता र स्ट्यान्डअलोन मोडमा प्रयोग गर्ने क्षमता (HAL ड्राइभरहरू बिना)।
- समर्थित परिधीय सुविधाहरूको पूर्ण कभरेज।
आधारभूत परिधीय उपयोग पूर्वampलेस
यो तहले पूर्वलाई घेर्छampलेस केवल HAL र BSP स्रोतहरू प्रयोग गरेर STM32 बाह्य उपकरणहरूमा निर्मित।
प्रदर्शन पूर्वamples थप जटिल पूर्व देखाउन पनि उपलब्ध छन्ampMRSUBG र LPAWUR जस्ता विशिष्ट परिधिका साथ परिदृश्यहरू।
स्तर ४
यो स्तर दुई sublayers मा विभाजित छ:
- मिडलवेयर कम्पोनेन्टहरू
- Exampमिडलवेयर कम्पोनेन्टहरूमा आधारित
मिडलवेयर कम्पोनेन्टहरू
मिडलवेयर FreeRTOS™ कर्नेल, FatFS, र Sigfox™ प्रोटोकल लाइब्रेरीलाई कभर गर्ने पुस्तकालयहरूको सेट हो। यस तहका कम्पोनेन्टहरू बीचको तेर्सो अन्तरक्रिया विशेष API हरूलाई कल गरेर गरिन्छ।
कम-तह ड्राइभरहरूसँग ठाडो अन्तरक्रिया पुस्तकालय प्रणाली कल इन्टरफेसमा लागू गरिएका विशिष्ट कलब्याकहरू र स्थिर म्याक्रोहरू मार्फत गरिन्छ।
प्रत्येक मिडलवेयर कम्पोनेन्टका मुख्य विशेषताहरू निम्नानुसार छन्:
- FreeRTOS™ कर्नेल: एम्बेडेड प्रणालीहरूको लागि डिजाइन गरिएको वास्तविक-समय अपरेटिङ सिस्टम (RTOS) लागू गर्दछ।
- Sigfox™: Sigfox™ प्रोटोकल सञ्जालसँग अनुरूप Sigfox™ प्रोटोकल लाइब्रेरी लागू गर्दछ र RF Sigfox™ उपकरणहरू विरुद्ध परीक्षण गर्न RF परीक्षण प्रोटोकल पुस्तकालय समावेश गर्दछ।
- FatFS: जेनेरिक FAT लागू गर्दछ file प्रणाली मोड्युल।
Exampमिडलवेयर कम्पोनेन्टहरूमा आधारित
प्रत्येक मिडलवेयर कम्पोनेन्ट एक वा बढी पूर्वको साथ आउँछamples, यसलाई कसरी प्रयोग गर्ने भनेर देखाउँदै अनुप्रयोगहरू पनि भनिन्छ। एकीकरण पूर्वampधेरै मिडलवेयर कम्पोनेन्टहरू प्रयोग गर्ने लेस पनि प्रदान गरिन्छ।
STM32CubeWL3 फर्मवेयर प्याकेज समाप्त भयोview
STM32WL3x उपकरण र हार्डवेयर समर्थित
STM32Cube ले जेनेरिक आर्किटेक्चरको वरिपरि निर्मित उच्च पोर्टेबल हार्डवेयर एब्स्ट्रेक्शन लेयर (HAL) प्रदान गर्दछ। यसले बिल्ड-अप लेयर सिद्धान्तहरूलाई अनुमति दिन्छ, जस्तै MCU प्रयोग गरिएको छ, गहिराइमा, जानी बिना तिनीहरूको कार्यहरू कार्यान्वयन गर्न मिडलवेयर तह प्रयोग गर्ने। यसले पुस्तकालय कोड पुन: प्रयोज्यता सुधार गर्दछ र अन्य उपकरणहरूमा सजिलो पोर्टेबिलिटी सुनिश्चित गर्दछ।
- थप रूपमा, यसको स्तरित वास्तुकलाको साथ, STM32CubeWL3 ले सबै STM32WL3x उत्पादन लाइनको लागि पूर्ण समर्थन प्रदान गर्दछ।
- प्रयोगकर्ताले stm32wl3x.h मा सही म्याक्रो मात्र परिभाषित गर्नुपर्छ।
तालिका 1 ले प्रयोग गरिएको STM32WL3x उत्पादन लाइन उपकरणको आधारमा परिभाषित गर्न म्याक्रो देखाउँछ। यो म्याक्रो पनि कम्पाइलर प्रिप्रोसेसर मा परिभाषित हुनुपर्छ।
तालिका 1. STM32WL3x उत्पादन लाइनको लागि म्याक्रो
म्याक्रो मा परिभाषित stm32wl3x.h | STM32WL3x उत्पादन लाइन उपकरणहरू |
stm32wl33 | STM32WL33xx माइक्रोकन्ट्रोलरहरू |
STM32CubeWL3 ले एक्सको रिच सेट फिचर गर्दछampसबै स्तरहरूमा les र अनुप्रयोगहरू, कुनै पनि HAL ड्राइभर वा मिडलवेयर कम्पोनेन्टहरू बुझ्न र प्रयोग गर्न सजिलो बनाउँदै। यी पूर्वampलेस तालिका २ मा सूचीबद्ध STMicroelectronics बोर्डहरूमा चल्छ।
बोर्ड | STM32WL3x बोर्ड समर्थित उपकरणहरू |
NUCLEO-WL33CC1 | STM32WL33CC |
NUCLEO-WL33CC2 | STM32WL33CC |
STM32CubeWL3 MCU प्याकेज कुनै पनि मिल्दो हार्डवेयरमा चल्न सक्छ। प्रयोगकर्ताहरूले केवल प्रदान गरिएको पूर्व पोर्ट गर्न BSP ड्राइभरहरू अद्यावधिक गर्छन्ampतिनीहरूको बोर्डहरूमा, यदि तिनीहरूसँग समान हार्डवेयर सुविधाहरू छन् (जस्तै LEDs वा बटनहरू)।
फर्मवेयर प्याकेज सकियोview
STM32CubeWL3 MCU प्याकेज समाधान चित्र 3 मा देखाइएको संरचना भएको एउटै जिप प्याकेजमा प्रदान गरिएको छ।
चित्र 3. STM32CubeWL3 फर्मवेयर प्याकेज संरचना
सावधानी:
प्रयोगकर्ताले कम्पोनेन्टहरू परिमार्जन गर्नु हुँदैन files प्रयोगकर्ताले \Projects स्रोतहरू मात्र सम्पादन गर्न सक्छ।
प्रत्येक बोर्डको लागि, पूर्व को एक सेटamples EWARM, MDK-ARM, र STM32CubeIDE टूलचेनहरूको लागि पूर्व कन्फिगर गरिएका परियोजनाहरू प्रदान गरिएको छ।
चित्र 4 ले NUCLEO-WL33CCx बोर्डहरूको लागि परियोजना संरचना देखाउँछ।
पूर्वamples STM32CubeWL3 लेभलको आधारमा वर्गीकृत गरिन्छ जुन तिनीहरूले लागू गर्छन्। तिनीहरू निम्नानुसार नाम छन्:
- स्तर ० पूर्वamples लाई Ex भनिन्छampलेस, पूर्वamples_LL, र पूर्वamples_MIX। तिनीहरूले क्रमशः HAL ड्राइभरहरू, LL ड्राइभरहरू, र HAL र LL ड्राइभरहरूको मिश्रण कुनै पनि मिडलवेयर कम्पोनेन्ट बिना प्रयोग गर्छन्। प्रदर्शन पूर्वamples पनि उपलब्ध छन्।
- स्तर ० पूर्वamples लाई एप्लिकेसन भनिन्छ। तिनीहरूले प्रत्येक मिडलवेयर कम्पोनेन्टको सामान्य प्रयोग केसहरू प्रदान गर्छन्।
दिइएको बोर्डको लागि कुनै पनि फर्मवेयर अनुप्रयोग Templ ates र Templates_LL डाइरेक्टरीहरूमा उपलब्ध टेम्प्लेट परियोजनाहरू प्रयोग गरेर द्रुत रूपमा निर्माण गर्न सकिन्छ।
Exampलेस, पूर्वamples_LL, र पूर्वamples_MIX सँग समान संरचना छ:
- \Inc फोल्डरमा सबै हेडर समावेश छ files.
- स्रोत कोड भएको \Src फोल्डर।
- \EWARM, \MDK-ARM, र \STM32CubeIDE फोल्डरहरू प्रत्येक टुलचेनको लागि पूर्व कन्फिगर गरिएको परियोजना समावेश गर्दछ।
- readme.md र readme.html पूर्वको वर्णन गर्दैampले व्यवहार र यसलाई काम गर्न आवश्यक वातावरण।
STM32CubeWL3 को साथ सुरु गर्दै
पहिलो पूर्व चलिरहेको छample
यो खण्डले पहिलो पूर्व चलाउन कत्तिको सरल छ भनी बताउँछample STM32CubeWL3 भित्र। यसले NUCLEO-WL33CC1 बोर्डमा चलिरहेको साधारण एलईडी टगलको जेनरेशनलाई उदाहरणको रूपमा प्रयोग गर्दछ:
- STM32CubeWL3 MCU प्याकेज डाउनलोड गर्नुहोस्।
- यसलाई अनजिप गर्नुहोस्, वा यदि प्रदान गरिएको छ भने, तपाइँको रोजाइको डाइरेक्टरीमा स्थापनाकर्ता चलाउनुहोस्।
- चित्र ३ मा देखाइएको प्याकेज संरचना परिमार्जन नगर्न सुनिश्चित गर्नुहोस्। STM3CubeWL32 फर्मवेयर प्याकेज संरचना। नोट गर्नुहोस् कि प्याकेजलाई रूट भोल्युमको नजिकको स्थानमा प्रतिलिपि गर्न सिफारिस गरिन्छ (अर्थ C:\ST वा G:\Tests), किनकि केही IDEs ले पथ धेरै लामो हुँदा समस्याहरूको सामना गर्दछ।
HAL पूर्व कसरी चलाउनेample
लोड गर्नु र पूर्व चलाउनु अघिample, यो दृढतापूर्वक पूर्व पढ्न सिफारिस गरिएको छampमलाई पढ्नुहोस् file कुनै पनि विशिष्ट कन्फिगरेसनको लागि।
- \Projects\NUCLEO-WL33CC\Ex मा ब्राउज गर्नुहोस्ampलेस।
- \GPIO खोल्नुहोस्, त्यसपछि \GPIO_EXTI फोल्डरहरू।
- रुचाइएको टूलचेनको साथ परियोजना खोल्नुहोस्। एक छिटो समाप्तview कसरी खोल्ने, निर्माण गर्ने र पूर्व चलाउने बारेampसमर्थित टूलचेन्सको साथ le तल दिइएको छ।
- सबै पुनर्निर्माण गर्नुहोस् files र लक्ष्य मेमोरीमा छवि लोड गर्नुहोस्।
- पूर्व चलाउनुहोस्ample। थप विवरणहरूको लागि, पूर्व सन्दर्भ गर्नुहोस्ampमलाई पढ्नुहोस् file.
पूर्व खोल्न, निर्माण गर्न र चलाउनampप्रत्येक समर्थित टूलचेनहरूसँग, तलका चरणहरू पालना गर्नुहोस्:
- EWARM:
- अन्तर्गत पूर्वamples फोल्डर, \EWARM सबफोल्डर खोल्नुहोस्।
- Project.eww कार्यस्थान सुरु गर्नुहोस् (कार्यस्थानको नाम एक पूर्वबाट परिवर्तन हुन सक्छampले अर्को)।
- सबै पुनर्निर्माण गर्नुहोस् files: [परियोजना]>[सबै पुनर्निर्माण गर्नुहोस्]।
- परियोजना छवि लोड गर्नुहोस्: [प्रोजेक्ट]> [डिबग]।
- कार्यक्रम चलाउनुहोस्: [डिबग]>[जानुहोस् (F5)]।
- MDK-ARM:
- अन्तर्गत पूर्वamples फोल्डर, \MDK-ARM सबफोल्डर खोल्नुहोस्।
- Project.uvproj कार्यस्थान खोल्नुहोस् (कार्यस्थानको नाम एक पूर्वबाट परिवर्तन हुन सक्छampले अर्को)।
- सबै पुनर्निर्माण गर्नुहोस् files: [परियोजना]>[सबै लक्ष्य पुन: निर्माण गर्नुहोस् files]।
- परियोजना छवि लोड गर्नुहोस्: [डिबग]>[डिबग सत्र सुरु/रोक्नुहोस्]।
- कार्यक्रम चलाउनुहोस्: [डिबग]>[रन (F5)]।
- STM32CubeIDE:
- STM32CubeIDE टूलचेन खोल्नुहोस्।
- थिच्नुस [File]>[कार्यस्थान स्विच गर्नुहोस्]>[अन्य] र STM32CubeIDE कार्यस्थान निर्देशिकामा ब्राउज गर्नुहोस्।
- थिच्नुस [File]>[आयात], चयन गर्नुहोस् [सामान्य]>[कार्यस्थानमा अवस्थित परियोजनाहरू], र त्यसपछि [अर्को] क्लिक गर्नुहोस्।
- STM32CubeIDE कार्यस्थान डाइरेक्टरीमा ब्राउज गर्नुहोस् र परियोजना चयन गर्नुहोस्।
- सबै परियोजना पुनर्निर्माण गर्नुहोस् files: प्रोजेक्ट एक्सप्लोरर सञ्झ्यालमा परियोजना चयन गर्नुहोस् त्यसपछि मा क्लिक गर्नुहोस्
[परियोजना]>[निर्माण परियोजना] मेनु। - कार्यक्रम चलाउनुहोस्: [रन]> [डिबग (F11)]।
अनुकूलन अनुप्रयोग विकास गर्दै
अनुप्रयोग विकास वा अद्यावधिक गर्न STM32CubeMX प्रयोग गर्दै
STM32Cube MCU प्याकेजमा, लगभग सबै परियोजना पूर्वamples प्रणाली, बाह्य उपकरणहरू, र मिडलवेयर सुरु गर्न STM32CubeMX उपकरणसँग उत्पन्न गरिन्छ।
अवस्थित परियोजनाको प्रत्यक्ष प्रयोग पूर्वample STM32CubeMX उपकरणबाट STM32CubeMX 6.12.0 वा उच्च आवश्यक छ:
- STM32CubeMX को स्थापना पछि, खोल्नुहोस् र आवश्यक भएमा प्रस्तावित परियोजना अद्यावधिक गर्नुहोस्।
अवस्थित परियोजना खोल्ने सबैभन्दा सरल तरिका *.ioc मा डबल-क्लिक गर्नु हो file ताकि STM32CubeMX ले परियोजना र यसको स्रोत स्वतः खोल्छ files STM32CubeMX ले त्यस्ता परियोजनाहरूको प्रारम्भिक स्रोत कोड उत्पन्न गर्दछ। - मुख्य अनुप्रयोग स्रोत कोड "USER CODE BEGIN" र "USER CODE END" टिप्पणीहरू द्वारा समावेश गरिएको छ। यदि परिधीय चयन र सेटिङहरू परिमार्जन गरिएको छ भने, STM32CubeMX ले कोडको प्रारम्भिक भाग अपडेट गर्दछ जबकि मुख्य अनुप्रयोग स्रोत कोड सुरक्षित गर्दछ।
STM32CubeMX सँग अनुकूलन परियोजना विकास गर्न, चरण-दर-चरण प्रक्रिया पालना गर्नुहोस्:
- पिनआउट-कन्फ्लिक्ट सोल्भर, क्लक-ट्री सेटिङ हेल्पर, पावर खपत क्याल्कुलेटर, र MCU परिधीय कन्फिगरेसन (जस्तै GPIO वा USART) प्रदर्शन गर्ने युटिलिटी प्रयोग गरेर सबै आवश्यक इम्बेडेड सफ्टवेयरहरू कन्फिगर गर्नुहोस्।
- चयन गरिएको कन्फिगरेसनमा आधारित प्रारम्भिक C कोड उत्पन्न गर्नुहोस्। यो कोड धेरै विकास वातावरण भित्र प्रयोग गर्न तयार छ। प्रयोगकर्ता कोड अर्को कोड जेनरेशनमा राखिएको छ।
STM32CubeMX बारे थप जानकारीको लागि, STM32 कन्फिगरेसन र प्रारम्भिक C कोड उत्पादन (UM32) को लागि प्रयोगकर्ता पुस्तिका STM1718CubeMX हेर्नुहोस्।
चालक अनुप्रयोगहरू
HAL आवेदन
यस खण्डले STM32CubeWL3 को प्रयोग गरेर अनुकूलन HAL अनुप्रयोग सिर्जना गर्न आवश्यक चरणहरू वर्णन गर्दछ:
- एउटा परियोजना बनाउनुहोस्
नयाँ परियोजना सिर्जना गर्न, कि त \Projects\< STM32xxx_yyy>\Templates अन्तर्गत प्रत्येक बोर्डको लागि प्रदान गरिएको टेम्प्लेट परियोजनाबाट वा \Projects\ अन्तर्गत उपलब्ध कुनै पनि परियोजनाबाट सुरु गर्नुहोस्। \ उदाampl es वा \ Projects\ \ अनुप्रयोगहरू (जहाँ बोर्डको नामलाई जनाउँछ)। टेम्प्लेट परियोजनाले खाली मुख्य लुप प्रकार्य प्रदान गर्दछ। यद्यपि, यो STM32CubeWL32 परियोजना सेटिङहरू बुझ्नको लागि राम्रो सुरूवात बिन्दु हो। टेम्प्लेटमा निम्न विशेषताहरू छन्:- यसले HAL स्रोत कोड, CMSIS, र BSP ड्राइभरहरू समावेश गर्दछ, जुन दिइएको बोर्डमा कोड विकास गर्न आवश्यक पर्ने घटकहरूको न्यूनतम सेट हो।
- यसले सबै फर्मवेयर कम्पोनेन्टहरूका लागि समावेश मार्गहरू समावेश गर्दछ।
- यसले समर्थित STM32WL3x उत्पादन लाइन उपकरणहरू परिभाषित गर्दछ, CMSIS र HAL ड्राइभरहरूलाई सही रूपमा कन्फिगर गर्न अनुमति दिँदै।
- यसले प्रयोग गर्नका लागि तयार प्रयोगकर्ता प्रदान गर्दछ fileतल देखाइएको रूपमा पूर्व कन्फिगर गरिएको छ:
- HAL ले Arm® core SysTick को साथ पूर्वनिर्धारित समय आधारको साथ प्रारम्भ गर्यो।
- HAL_Delay() उद्देश्यका लागि SysTick ISR लागू गरियो।
नोट: अवस्थित परियोजनालाई अर्को स्थानमा प्रतिलिपि गर्दा, समावेश गरिएका सबै मार्गहरू अद्यावधिक गरिएका छन् भनी सुनिश्चित गर्नुहोस्।
- फर्मवेयर कम्पोनेन्टहरू कन्फिगर गर्नुहोस्
HAL र मिडलवेयर कम्पोनेन्टहरूले हेडरमा घोषित म्याक्रोज #define प्रयोग गरेर निर्माण-समय कन्फिगरेसन विकल्पहरूको सेट प्रस्ताव गर्दछ। file। टेम्प्लेट कन्फिगरेसन file प्रत्येक कम्पोनेन्ट भित्र प्रदान गरिएको छ, जुन परियोजना फोल्डरमा प्रतिलिपि गरिनु पर्छ (सामान्यतया कन्फिगरेसन file xxx_conf_template.h नाम दिइएको छ, परियोजना फोल्डरमा प्रतिलिपि गर्दा टुक्रा _template हटाउन आवश्यक छ)। कन्फिगरेसन file प्रत्येक कन्फिगरेसन विकल्पको प्रभाव बुझ्न पर्याप्त जानकारी प्रदान गर्दछ। थप विस्तृत जानकारी प्रत्येक कम्पोनेन्टको लागि प्रदान गरिएको कागजातमा उपलब्ध छ। - HAL पुस्तकालय सुरु गर्नुहोस्
मुख्य कार्यक्रममा जम्प गरेपछि, अनुप्रयोग कोडले HAL लाइब्रेरी सुरु गर्न HAL_Init() API लाई कल गर्नुपर्छ, जसले निम्न कार्यहरू गर्दछ:- फ्ल्यास मेमोरी प्रिफेच र SysTick अवरोध प्राथमिकताको कन्फिगरेसन (stm3 2wl3x_hal_conf.h मा परिभाषित म्याक्रोहरू मार्फत)।
- stm32wl3x_hal_conf.h मा परिभाषित SysTick अवरोध प्राथमिकता TICK_INT_PRIO मा प्रत्येक मिलिसेकेन्डमा अवरोध उत्पन्न गर्न SysTick को कन्फिगरेसन।
- NVIC समूहको प्राथमिकता ० मा सेट गर्दै।
- HAL_MspInit() कलब्याक प्रकार्यको कल stm32wl3x_hal_msp.c प्रयोगकर्तामा परिभाषित file विश्वव्यापी निम्न-स्तर हार्डवेयर प्रारम्भिकरणहरू प्रदर्शन गर्न।
- प्रणाली घडी कन्फिगर गर्नुहोस्
प्रणाली घडी कन्फिगरेसन तल वर्णन गरिएका दुई API लाई कल गरेर गरिन्छ:- HAL_RCC_OscConfig(): यो API ले आन्तरिक र बाह्य ओसिलेटरहरू कन्फिगर गर्दछ। प्रयोगकर्ताले एक वा सबै ओसिलेटरहरू कन्फिगर गर्न रोज्छ।
- HAL_RCC_ClockConfig(): यो API ले प्रणाली घडी स्रोत, फ्ल्यास मेमोरी विलम्बता, र AHB र APB prescalers कन्फिगर गर्दछ।
- परिधीय प्रारम्भ गर्नुहोस्
- पहिले परिधीय प्रारम्भिक प्रकार्य लेख्नुहोस्। निम्नानुसार अगाडि बढ्नुहोस्:
- परिधीय घडी सक्षम गर्नुहोस्।
- परिधीय GPIOs कन्फिगर गर्नुहोस्।
- DMA च्यानल कन्फिगर गर्नुहोस् र DMA अवरोध सक्षम गर्नुहोस् (यदि आवश्यक भएमा)।
- परिधीय अवरोध सक्षम गर्नुहोस् (यदि आवश्यक भएमा)।
- आवश्यक अवरोध ह्यान्डलरहरू (पेरिफेरल र DMA) कल गर्न stm32xxx_it.c सम्पादन गर्नुहोस्, यदि आवश्यक छ भने।
- यदि परिधीय अवरोध वा DMA प्रयोग गर्नको लागि हो भने प्रक्रिया पूरा कलब्याक प्रकार्यहरू लेख्नुहोस्।
- प्रयोगकर्ता main.c मा file, परिधीय ह्यान्डल संरचना प्रारम्भ गर्नुहोस् त्यसपछि परिधीय प्रारम्भिक गर्न परिधीय सुरुवात प्रकार्य कल गर्नुहोस्।
- एउटा अनुप्रयोग विकास गर्नुहोस्
यसैमा एसtagई, प्रणाली तयार छ र प्रयोगकर्ता अनुप्रयोग कोड विकास सुरु गर्न सक्नुहुन्छ।
HAL ले परिधीय कन्फिगर गर्न सहज र प्रयोग गर्न तयार APIs प्रदान गर्दछ। यसले कुनै पनि आवेदन आवश्यकताहरू समायोजन गर्न मतदान, अवरोधहरू, र DMA प्रोग्रामिङ मोडेललाई समर्थन गर्दछ। प्रत्येक परिधीय कसरी प्रयोग गर्ने भन्ने बारे थप विवरणहरूको लागि, रिच एक्स सन्दर्भ गर्नुहोस्ampले सेट STM32CubeWL3 MCU प्याकेजमा प्रदान गरिएको छ।
सावधानी:
पूर्वनिर्धारित HAL कार्यान्वयनमा, SysTick टाइमरलाई टाइमबेसको रूपमा प्रयोग गरिन्छ: यसले नियमित समय अन्तरालहरूमा अवरोधहरू उत्पन्न गर्छ। यदि HAL_Delay() लाई परिधीय ISR प्रक्रियाबाट कल गरिएको छ भने, SysTick interrupt को परिधीय अवरोध भन्दा उच्च प्राथमिकता (संख्यात्मक रूपमा कम) छ भनेर सुनिश्चित गर्नुहोस्। अन्यथा, कलर ISR प्रक्रिया हो
अवरुद्ध। टाइमबेस कन्फिगरेसनलाई असर गर्ने कार्यहरूलाई प्रयोगकर्तामा अन्य कार्यान्वयनको अवस्थामा ओभरराइड सम्भव बनाउन __ कमजोर घोषित गरिन्छ। file (सामान्य-उद्देश्य टाइमर प्रयोग गर्दै, उदाहरणका लागिample, वा अर्को समय स्रोत)।
थप विवरणहरूको लागि, HAL_TimeBase पूर्व हेर्नुहोस्ample।
LL आवेदन
यस खण्डले STM32CubeWL3 को प्रयोग गरेर आफू अनुकूल LL अनुप्रयोग सिर्जना गर्न आवश्यक चरणहरू वर्णन गर्दछ।
- एउटा परियोजना बनाउनुहोस्
नयाँ परियोजना सिर्जना गर्न, कि त \Projects\ अन्तर्गत प्रत्येक बोर्डको लागि प्रदान गरिएको Templates_LL परियोजनाबाट सुरु गर्नुहोस्। \Templates_LL वा \Projects\ अन्तर्गत उपलब्ध कुनै पनि परियोजनाबाट \E xamples_LL ( बोर्डको नामलाई बुझाउँछ, जस्तै NUCLEO-WL32CC33)।
टेम्प्लेट परियोजनाले खाली मुख्य लुप प्रकार्य प्रदान गर्दछ, जुन STM32CubeWL3 को लागि परियोजना सेटिङहरू बुझ्नको लागि राम्रो सुरुवात बिन्दु हो। टेम्प्लेटको मुख्य विशेषताहरू निम्न हुन्:- यसले LL र CMSIS ड्राइभरहरूको स्रोत कोडहरू समावेश गर्दछ, जुन दिइएको बोर्डमा कोड विकास गर्न आवश्यक पर्ने घटकहरूको न्यूनतम सेट हो।
- यसले सबै आवश्यक फर्मवेयर कम्पोनेन्टहरूका लागि समावेश मार्गहरू समावेश गर्दछ।
- यसले समर्थित STM32WL3x उत्पादन लाइन उपकरण चयन गर्दछ र CMSIS र LL ड्राइभरहरूको सही कन्फिगरेसनलाई अनुमति दिन्छ।
- यो प्रयोग गर्न तयार प्रयोगकर्ता प्रदान गर्दछ fileनिम्नानुसार पूर्व कन्फिगर गरिएको छ:
- main.h: LED र USER_BUTTON परिभाषा अमूर्त तह।
- main.c: अधिकतम आवृत्तिको लागि प्रणाली घडी कन्फिगरेसन।
- LL पूर्व पोर्ट गर्नुहोस्ampLe:
- Templates_LL फोल्डर प्रतिलिपि / टाँस्नुहोस् - प्रारम्भिक स्रोत राख्न - वा सीधा अवस्थित Templa tes_LL परियोजना अद्यावधिक गर्नुहोस्।
- त्यसपछि, पोर्टिङ मुख्य रूपमा Templates_LL प्रतिस्थापनमा समावेश गर्दछ fileपूर्व द्वारा एसamples_LL लक्षित परियोजना।
- सबै बोर्ड विशिष्ट भागहरू राख्नुहोस्। स्पष्टता को कारण को लागी, बोर्ड विशिष्ट भागहरु विशिष्ट संग फ्ल्याग गरिएको छ tags:
तसर्थ, मुख्य पोर्टिंग चरणहरू निम्न हुन्:
- stm32wl3x_it.h लाई बदल्नुहोस् file.
- stm32wl3x_it.c बदल्नुहोस् file.
- main.h लाई बदल्नुहोस् file र यसलाई अपडेट गर्नुहोस्: LL टेम्प्लेटको LED र प्रयोगकर्ता बटन परिभाषा बोर्ड विशिष्ट कन्फिगरेसन अन्तर्गत राख्नुहोस् tags.
- main.c लाई बदल्नुहोस् file र यसलाई अपडेट गर्नुहोस्:
- SystemClock_Config() LL टेम्प्लेट प्रकार्यको घडी कन्फिगरेसन बोर्ड स्पेसिफिक कन्फिगरेसन अन्तर्गत राख्नुहोस् tags.
- LED परिभाषाको आधारमा, प्रत्येक LDx घटनालाई अर्को LDy मा उपलब्धसँग बदल्नुहोस् file main.h
यी परिमार्जनहरूसँग, पूर्वampले लक्षित बोर्डमा चल्छ।
आरएफ अनुप्रयोगहरू, प्रदर्शनहरू, र पूर्वampलेस
विभिन्न प्रकारका RF अनुप्रयोगहरू, प्रदर्शनहरू, र पूर्वamples STM32CubeWL3 प्याकेजमा उपलब्ध छन्। तिनीहरू तल दुई खण्डहरूमा सूचीबद्ध छन्।
सब-GHz भूतपूर्वampलेस र प्रदर्शन
यी पूर्वampलेसले MRSUBG र LPAWUR रेडियो बाह्य उपकरणहरूको मुख्य विशेषताहरू प्रदर्शन गर्दछ। यी पूर्वamples अन्तर्गत उपलब्ध छन्:
- परियोजनाहरू\NUCLEO-WL33CC\Exampलेस\MRSUBG
- परियोजनाहरू\NUCLEO-WL33CC\Exampलेस\LPAWUR
- परियोजनाहरू\NUCLEO-WL33CC\प्रदर्शन\MRSUBG
- परियोजनाहरू\NUCLEO-WL33CC\प्रदर्शन\LPAWUR
प्रत्येक पूर्वample वा प्रदर्शनमा सामान्यतया Tx र Rx भनिने दुई प्रोग्रामहरू हुन्छन् जसलाई क्रमशः ट्रान्समिटर र रिसीभरको रूपमा काम गर्दछ:
- Examples/MRSUBG
- MRSUBG_802_15_4: मानक 802.15.4 द्वारा परिभाषित भौतिक तहको कार्यान्वयन। यसले 802.15.4 प्याकेटहरू प्रसारण वा प्राप्त गर्न रेडियो कन्फिगर गर्ने तरिका देखाउँछ।
- MRSUBG_BasicGeneric: STM32WL3x MR_SUBG आधारभूत प्याकेटहरूको आदानप्रदान।
- MRSUBG_Chat: एउटै यन्त्रमा Tx र Rx कसरी प्रयोग गर्ने भनेर देखाउने एउटा साधारण अनुप्रयोग।
- MRSUBG_DatabufferHandler: एक पूर्वample जसले Databuffer 0 र 1 बाट कसरी स्वैप गर्ने भनेर देखाउँछ।
- MRSUBG_Sequencer AutoAck: एक पूर्वampले जसले स्वचालित रूपमा प्याकेट स्वीकृतिहरू (ACKs) पठाउँछ र प्राप्त गर्दछ।
- MRSUBG_WMBusSTD: WM-Bus सन्देशहरूको आदानप्रदान।
- WakeupRadio: एक पूर्वampLPAWUR रेडियो परिधीय परीक्षण गर्न।
- प्रदर्शन/MRSUBG
- MRSUBG_RTC_Button_TX: यो पूर्वample ले कसरी SoC लाई गहिरो-स्टप मोडमा सेट गर्ने र MRSUBG लाई फ्रेम पठाउन PB2 थिचेर वा RTC टाइमरको म्याद सकिएपछि SoC उठाउन कन्फिगर गर्ने देखाउँछ।
- MRSUBG_Sequencer_Sniff: यो पूर्वample ले MRSUBG sequencer लाई स्निफ मोडमा सञ्चालन गर्न कसरी सेट गर्ने भनेर देखाउँछ। यो पूर्वample ले रिसीभर पक्ष देखाउँछ र ट्रान्समिटरको रूपमा अर्को उपकरण चाहिन्छ।
- MRSUBG_Timer: अनुप्रयोगले विभिन्न समय अन्तरालहरूमा MRSUBG टाइमर (अटोरिलोडको साथ) को धेरै उदाहरणहरू तालिकाबद्ध गर्दछ।
- MRSUBG_WakeupRadio_Tx: यो भूतपूर्वample ले कसरी SoC लाई गहिरो स्टप मोडमा सेट गर्ने र फ्रेम पठाउन PB2 थिचेर SoC जगाउनको लागि MRSUBG कन्फिगर गर्ने भनेर बताउँछ। यो पूर्वample ले ट्रान्समिटर पक्ष देखाउँछ र LPAWUR रिसीभरको रूपमा अर्को उपकरण चाहिन्छ। प्रापक पूर्वample NUCLEO-WL33CC\Demonstrations\LPAWUR\LPAWUR_WakeupRad io_Rx फोल्डर अन्तर्गत अवस्थित छ।
- प्रदर्शन / LPAWUR
- LPAWUR_WakeupRadio_Rx: यो पूर्वample ले कसरी SoC लाई गहिरो-स्टप मोडमा सेट गर्ने र फ्रेम आइपुग्दा र सही रूपमा प्राप्त हुँदा SoC उठाउन LPAWUR कन्फिगर गर्ने भनेर वर्णन गर्दछ। यो पूर्वample ले रिसीभर पक्ष देखाउँछ र ट्रान्समिटरको रूपमा अर्को उपकरण चाहिन्छ। ट्रान्समिटर पूर्वample NUCLEO-WL33CC\Demonstrations\MRSUBG\MRSUBG_WakeupRad io_Tx फोल्डर अन्तर्गत अवस्थित छ।
Sigfox™ अनुप्रयोग
यी अनुप्रयोगहरूले कसरी Sigfox™ परिदृश्य लागू गर्ने र उपलब्ध Sigfox™ APIs प्रयोग गर्ने देखाउँछन्। तिनीहरू परियोजना मार्गमा उपलब्ध छन् Projects\NUCLEO-WL33CC\Applications\Sigfox\:
- Sigfox_CLI: यो अनुप्रयोगले सन्देशहरू पठाउन र precertification परीक्षणहरू प्रदर्शन गर्न Sigfox™ प्रोटोकल प्रयोग गर्ने आदेशहरू पठाउन आदेश-लाइन इन्टरफेस (CLI) कसरी प्रयोग गर्ने भनेर देखाउँछ।
- Sigfox_PushButton: यो अनुप्रयोगले STM32WL33xx Sigfox™ यन्त्र रेडियो क्षमताहरूको मूल्याङ्कन गर्न अनुमति दिन्छ। PB1 थिच्दा परीक्षण Sigfox™ फ्रेम प्रसारण हुन्छ।
FAQ
- मैले LL ड्राइभरको सट्टा HAL कहिले प्रयोग गर्नुपर्छ?
HAL ड्राइभरहरूले उच्च स्तरको पोर्टेबिलिटीको साथ उच्च-स्तर र कार्य-उन्मुख APIs प्रस्ताव गर्छन्। उत्पादन वा परिधीय जटिलता अन्त प्रयोगकर्ताहरूको लागि लुकेको छ।
LL ड्राइभरहरूले राम्रो अप्टिमाइजेसन तर कम पोर्टेबलको साथ कम-लेयर दर्ता स्तर API हरू प्रस्ताव गर्छन्। तिनीहरूलाई उत्पादन वा IP विनिर्देशहरूको गहन ज्ञान चाहिन्छ। - के HAL र LL ड्राइभरहरू सँगै प्रयोग गर्न सकिन्छ? यदि हो भने, के बाधाहरू छन्?
HAL र LL दुबै ड्राइभरहरू प्रयोग गर्न सम्भव छ। परिधीय प्रारम्भिक चरणको लागि HAL प्रयोग गर्नुहोस् र त्यसपछि LL ड्राइभरहरूसँग I/O सञ्चालनहरू व्यवस्थापन गर्नुहोस्।
HAL र LL बीचको मुख्य भिन्नता हो कि HAL ड्राइभरहरूले सञ्चालन व्यवस्थापनको लागि ह्यान्डलहरू सिर्जना गर्न र प्रयोग गर्न आवश्यक छ जबकि LL ड्राइभरहरूले प्रत्यक्ष रूपमा परिधीय दर्ताहरूमा काम गर्छन्। HAL र LL को मिश्रणलाई Ex मा चित्रण गरिएको छamples_MIX पूर्वampलेस। - LL प्रारम्भिकरण API हरू कसरी सक्षम छन्?
LL प्रारम्भिकरण API र सम्बन्धित स्रोतहरू (संरचनाहरू, अक्षरहरू, र प्रोटोटाइपहरू) को परिभाषा USE_FULL_LL_DRIVER संकलन स्विचद्वारा सर्त गरिएको छ।
LL प्रारम्भिक APIs प्रयोग गर्न सक्षम हुन, यो स्विच टुलचेन कम्पाइलर प्रिप्रोसेसरमा थप्नुहोस्। - के त्यहाँ MRSUBG/LPAWUR परिधीय पूर्वको लागि कुनै टेम्प्लेट परियोजना छampलेस?
नयाँ MRSUBG वा LPAWUR पूर्व सिर्जना गर्नample परियोजना, कि त \Pr ojects\NUCLEO-WL33CC\Ex अन्तर्गत प्रदान गरिएको कंकाल परियोजनाबाट सुरु गर्नुहोस्।amples\MRSUBG वा \Projects\NUCLEO-WL33CC\Examples\LPAWUR, वा यी समान डाइरेक्टरीहरू अन्तर्गत कुनै पनि उपलब्ध परियोजनाबाट। - कसरी STM32CubeMX ले इम्बेडेड सफ्टवेयरमा आधारित कोड उत्पन्न गर्न सक्छ?
STM32CubeMX सँग STM32 माइक्रोकन्ट्रोलरहरूको बिल्ट-इन ज्ञान छ, तिनीहरूको परिधीय र सफ्टवेयर सहित, जसले प्रयोगकर्तालाई ग्राफिकल प्रतिनिधित्व प्रदान गर्न र *.h वा *.c उत्पन्न गर्न अनुमति दिन्छ। files प्रयोगकर्ताको कन्फिगरेसनमा आधारित छ।
संशोधन इतिहास
तालिका 3. कागजात संशोधन इतिहास
मिति | संशोधन | परिवर्तनहरू |
29-मार्च-2024 | 1 | प्रारम्भिक रिलीज। |
२९ अक्टोबर २०२४ | 2 | को पूर्ण एकीकरण STM32CubeWL3 in STM32Cube। अद्यावधिक गरिएको:
हटाइयो:
|
कागजातहरू / स्रोतहरू
![]() |
ST STM32WL3x सफ्टवेयर प्याकेज [pdf] निर्देशनहरू STM32WL3x सफ्टवेयर प्याकेज, STM32WL3x, सफ्टवेयर प्याकेज, प्याकेज |