ST- लोगो

STMicroelectronics UM3469 X-CUBE-ISO1 सॉफ्टवेअर विस्तार

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार

परिचय

STM1Cube साठी X-CUBE-ISO32 विस्तार सॉफ्टवेअर पॅकेज STM32 वर चालते आणि त्यात X-NUCLEO-ISO1A1 साठी फर्मवेअर समाविष्ट आहे. हे सॉफ्टवेअर X-NUCLEO द्वारे प्रदान केलेल्या मूलभूत PLC डिव्हाइसच्या विकासासाठी वापरण्यास सोपा उपाय प्रदान करते. विविध STM32 मायक्रोकंट्रोलर्समध्ये पोर्टेबिलिटी सुलभ करण्यासाठी STM32Cube सॉफ्टवेअर तंत्रज्ञानावर विस्तार तयार केला आहे.

हे सॉफ्टवेअर NUCLEO-G1RB डेव्हलपमेंट बोर्डशी (किंवा NUCLEO-G1B071RE किंवा NUCLEO-G0RB) जोडलेल्या X-NUCLEO-ISO1A070 एक्सपेंशन बोर्डवर चालणाऱ्या अंमलबजावणीसह येते. आतापासून, दस्तऐवजात फक्त NUCLEO-G071RB चा उल्लेख साधेपणासाठी केला जाईल.
X-NUCLEO-ISO1A1 बोर्ड इनपुट आणि आउटपुट क्षमता वाढवण्यासाठी योग्य जंपर सेटिंग्जसह दोन बोर्डांच्या स्टॅकिंगला समर्थन देण्यासाठी डिझाइन केलेले आहे.

परिवर्णी शब्द आणि संक्षेप

तक्ता 1. परिवर्णी शब्दांची सूची

परिवर्णी शब्द वर्णन
पीएलसी प्रोग्राम करण्यायोग्य लॉजिक कंट्रोलर
API अनुप्रयोग प्रोग्रामिंग इंटरफेस
PWM पल्स रुंदी मॉड्यूलेशन
GPIO सामान्य-उद्देश इनपुट/आउटपुट.
एचएएल हार्डवेअर अॅब्स्ट्रॅक्शन लेयर
PC वैयक्तिक संगणक
FW फर्मवेअर

STM32Cube म्हणजे काय?

STM32Cube™ हे STMicroelectronics उपक्रमाचे प्रतिनिधित्व करते जे विकासकांचे जीवन सोपे करण्यासाठी विकास प्रयत्न, वेळ आणि खर्च कमी करते. STM32Cube STM32 पोर्टफोलिओचा समावेश करते.
STM32Cube आवृत्ती 1.x मध्ये हे समाविष्ट आहे:

  • STM32CubeMX, एक ग्राफिकल सॉफ्टवेअर कॉन्फिगरेशन टूल जे ग्राफिकल विझार्ड वापरून C इनिशिएलायझेशन कोड तयार करण्यास अनुमती देते.
  • प्रत्येक मालिकेसाठी विशिष्ट एक व्यापक एम्बेडेड सॉफ्टवेअर प्लॅटफॉर्म (जसे की STM32G0 मालिकेसाठी STM32CubeG0), ज्यामध्ये हे समाविष्ट आहे:
    • STM32Cube HAL मध्ये एम्बेडेड अ‍ॅबस्ट्रॅक्शन-लेयर सॉफ्टवेअर, जे STM32 पोर्टफोलिओमध्ये जास्तीत जास्त पोर्टेबिलिटी सुनिश्चित करते.
    • RTOS, USB, TCP/IP आणि ग्राफिक्स सारख्या मिडलवेअर घटकांचा एक सुसंगत संच
    • सर्व एम्बेडेड सॉफ्टवेअर युटिलिटीज एक्सच्या संपूर्ण संचासहampलेस

STM32Cube आर्किटेक्चर
STM32Cube फर्मवेअर सोल्यूशन तीन स्वतंत्र स्तरांवर तयार केले आहे जे सहजपणे एकमेकांशी संवाद साधू शकतात, जसे की खालील आकृतीमध्ये वर्णन केले आहे.

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-1

STM1Cube साठी X-CUBE-ISO32 सॉफ्टवेअर विस्तार

ओव्हरview
X-NUCLEO-ISO1A1 साठी फर्मवेअर, औद्योगिक पृथक इनपुट/आउटपुट विस्तार बोर्ड, STM32 वातावरण आणि लायब्ररीभोवती विकसित केले आहे, STM32 न्यूक्लियो बोर्डच्या उच्च-कार्यक्षमता MCU चा वापर डिजिटल इनपुट, डायनॅमिक करंट मर्यादेसह एकात्मिक निदानासह आउटपुट आणि PWM सिग्नल जनरेशन व्यवस्थापित करण्यासाठी करते. यात डिफॉल्ट आणि पर्यायी परिस्थितींसाठी फ्रेमवर्क, प्री-स्केलर मूल्ये सेट करण्यासाठी मॅक्रो आणि GPIO पोर्ट आणि पिनसाठी व्याख्यांसह व्यापक बोर्ड कॉन्फिगरेशन आणि नियंत्रण समाविष्ट आहे.

हे विविध सपोर्ट करतेampया अनुप्रयोगात डिजिटल इनपुट ते आउटपुट मिररिंग, न्यूक्लियो बोर्डद्वारे UART कम्युनिकेशन, फॉल्ट डिटेक्शन, टेस्ट केसेस आणि PWM जनरेशन यासारख्या केसेस वापरल्या जातात ज्या थेट वापरल्या जाऊ शकतात आणि सहजपणे कस्टमाइझ आणि विस्तारित केल्या जाऊ शकतात.

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

बोर्ड सपोर्ट पॅकेजमध्ये IPS1025H-32 सह इंटरफेस केलेल्या GPIO पिन नियंत्रित आणि देखरेख करण्यासाठी आणि डिजिटल आयसोलेटरद्वारे CLT03-2Q3 सह इंटरफेस केलेल्या GPIO पिनची स्थिती वाचण्यासाठी फंक्शन्स समाविष्ट आहेत.
कॉन्फिगरेशन आणि इनिशिएलायझेशन STM32CubeMX वर आधारित आहे, ज्यामध्ये STM32CubeIDE, IAR सिस्टम्स आणि Keil® टूल्सद्वारे डेव्हलपमेंट आणि डीबगिंग समर्थित आहे.

आर्किटेक्चर
X-NUCLEO-ISO1A1 साठी फर्मवेअर अनेक वेगळ्या फंक्शनल ब्लॉक्समध्ये विभागले जाऊ शकते, प्रत्येक सिस्टमच्या ऑपरेशन्सच्या विविध पैलूंसाठी जबाबदार आहे:

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-2

  • बोर्ड कॉन्फिगरेशन आणि नियंत्रण:
    • बोर्ड_कॉन्फिग.एच file बोर्डला डीफॉल्ट किंवा पर्यायी परिस्थितीत किंवा दोन्हीमध्ये चालविण्यासाठी कॉन्फिगर करण्यासाठी मॅक्रो आहेत. त्यात प्री-स्केलर व्हॅल्यूज आणि GPIO पोर्ट आणि पिनसाठी व्याख्या देखील समाविष्ट आहेत.
    • हा ब्लॉक खात्री करतो की बोर्ड इच्छित ऑपरेटिंग परिस्थितीसाठी योग्यरित्या सेट केला आहे आणि सर्व आवश्यक हार्डवेअर कॉन्फिगरेशन ठिकाणी आहेत.
  • अनुप्रयोग वापर प्रकरणे:
    • st_iso_app.h आणि st_iso_app.c fileमध्ये बोर्डच्या विविध कार्यक्षमता तपासण्यासाठी डिझाइन केलेले अनुप्रयोग वापर प्रकरणे आहेत.
    • या वापराच्या प्रकरणांमध्ये डिजिटल इनपुट ते आउटपुट मिररिंग, फॉल्ट डिटेक्शन टेस्ट आणि PWM सिग्नल जनरेशन यांचा समावेश आहे.
    • Exampफर्मवेअरची बहुमुखी प्रतिभा आणि लवचिकता दर्शविणारे, वेगवेगळ्या मोडमध्ये एकाच वेळी दोन बोर्ड चालविण्यासाठी ले कॉन्फिगरेशन प्रदान केले आहेत.
  • API कार्ये:
    • iso1a1.h आणि iso1a1.c fileविविध कार्यक्षमतांना समर्थन देण्यासाठी API चा एक व्यापक संच प्रदान करते.
    • या API मध्ये डिजिटल इनपुट/आउटपुट नियंत्रण, दोष शोधणे आणि बोर्ड स्थिती अद्यतनांसाठी कार्ये समाविष्ट आहेत.
    • एपीआय सोप्या आणि सहजतेने डिझाइन केल्या आहेत, ज्यामुळे वापरकर्त्यांना बोर्डशी संवाद साधणे आणि आवश्यक ऑपरेशन्स करणे सोपे होते.
  • पीडब्ल्यूएम सिग्नल नियंत्रण:
    • pwm_api.h आणि pwm_api.c files मध्ये PWM सिग्नल जनरेशनशी संबंधित विशिष्ट API फंक्शन्स असतात.
    • हे फंक्शन्स डिजिटल आउटपुट चॅनेलसाठी PWM सिग्नल सुरू करणे, कॉन्फिगर करणे, सुरू करणे आणि थांबवणे शक्य करतात.
    • PWM कार्यक्षमता ही डीफॉल्ट निवड नाही. हे सक्षम करण्यासाठी बोर्ड कॉन्फिगरेशनमध्ये बदल करण्यात आले आहेत. अधिक तपशीलांसाठी विभाग 3.5: API पहा.
  • बोर्ड सपोर्ट पॅकेज:
    • बोर्ड सपोर्ट पॅकेजमध्ये समाविष्ट आहे fileIPS1025H-32 सह इंटरफेस केलेल्या GPIO पिनचे नियंत्रण आणि निरीक्षण करण्यासाठी आणि CLT03-2Q3 सह इंटरफेस केलेल्या GPIO पिनची स्थिती वाचण्यासाठी.
    • ips1025h_32.h आणि ips1025h_32.c fileहे IPS1025H-32 सह इंटरफेस केलेल्या GPIO पिनवरील दोष सेट करण्यासाठी, साफ करण्यासाठी आणि शोधण्यासाठी कार्ये प्रदान करतात.
    • clt03_2q3.h आणि clt03_2q3.c files CLT03-2Q3 सह इंटरफेस केलेल्या GPIO पिनची स्थिती वाचण्यासाठी फंक्शन्स प्रदान करतात.

हे प्रात्यक्षिक फर्मवेअर सिस्टमच्या क्षमता प्रदर्शित करण्यासाठी अनेक सोप्या वापराच्या केसेस लागू करते. हे वापर केसेस आणि वापरकर्ता API हे सुरळीत ऑपरेशन आणि अचूक परिणाम सुनिश्चित करण्यासाठी समन्वित पद्धतीने कार्यान्वित केले जातात. आर्किटेक्चर सहजपणे विस्तारण्यायोग्य बनवण्यासाठी डिझाइन केले आहे, जे वापरकर्त्यांना नवीन कार्यक्षमता जोडण्याची आणि आवश्यकतेनुसार केसेस वापरण्याची परवानगी देते. डिजिटल औद्योगिक IO सह एक बोर्ड चालविण्यासाठी डीफॉल्ट कॉन्फिगरेशन प्रदान केले आहे. तक्ता 2 मध्ये वर्णन केल्याप्रमाणे जंपर सेटिंग देखील डीफॉल्ट मोडमध्ये असणे आवश्यक आहे. डिजिटल इनपुट डिजिटल आउट मिररिंग (DIDO) हे डीफॉल्ट फर्मवेअर अॅप्लिकेशन वापरकेस आहे.

फोल्डर रचना

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-3

खालील फोल्डर्स सॉफ्टवेअर पॅकेजमध्ये समाविष्ट आहेत:

  • दस्तऐवजीकरणात संकलित HTML समाविष्ट आहे file सोर्स कोडमधून व्युत्पन्न केलेले, सॉफ्टवेअर घटक आणि API चे तपशील.
  • ड्रायव्हर्समध्ये हे समाविष्ट आहे:
    • STM32G32xx_HAL_Driver या सबफोल्डर्समध्ये स्थित एक STM0Cube HAL फोल्डर. हे files चे वर्णन येथे केलेले नाही कारण ते X-CUBE-ISO1 सॉफ्टवेअरसाठी विशिष्ट नाहीत परंतु ते थेट STM32Cube फ्रेमवर्कमधून येतात.
    • CMSIS फोल्डर ज्यामध्ये Cortex® मायक्रोकंट्रोलर सॉफ्टवेअर इंटरफेस मानक आहे fileआर्म पासून s. या files हे Cortex®-M प्रोसेसर मालिकेसाठी विक्रेता-स्वतंत्र हार्डवेअर अ‍ॅबस्ट्रॅक्शन लेयर आहेत. हे फोल्डर STM32Cube फ्रेमवर्कमधून देखील अपरिवर्तित येते.
    • IPS1025H-32 आणि CLT03-2Q3 घटकांसाठी कोड असलेले BSP फोल्डर आणि X-NUCLEO-ISO1A1 शी संबंधित API.
  • अनुप्रयोगात वापरकर्ता फोल्डर आहे ज्यामध्ये main.c आहे file, अनुप्रयोग वापर प्रकरण file, st_iso_app.c आणि board_config.h file, NUCLEO-G071RB प्लॅटफॉर्मसाठी प्रदान केले आहे.

BSP फोल्डर
X-CUBE-ISO1 सॉफ्टवेअर दोन वेगवेगळे घटक वापरते files, जे BSP/घटकांमध्ये आहेत:

IPS1025
ips1025h_32.h आणि ips1025h_32.c fileहे IPS1025H-32 सह इंटरफेस केलेल्या GPIO पिनसाठी एक व्यापक ड्रायव्हर अंमलबजावणी प्रदान करतात, ज्यामध्ये सर्व पिन नियंत्रित करण्यासाठी आणि दोष शोधण्यासाठी संपूर्ण कार्यक्षमता समाविष्ट आहे. हे fileडिव्हाइस सुरू करण्यासाठी, चॅनेल स्थिती सेट करण्यासाठी आणि साफ करण्यासाठी, दोष स्थिती शोधण्यासाठी आणि PWM कार्यक्षमता व्यवस्थापित करण्यासाठी s कार्ये लागू करते. ड्रायव्हर एकाधिक डिव्हाइसेस आणि चॅनेलना समर्थन देतो, वैयक्तिक चॅनेल किंवा गट म्हणून दोन्हीसाठी पूर्ण क्षमतांसह.

CLT03
clt03_2q3.h आणि clt03_2q3.c files CLT03-2Q3 सह इंटरफेस केलेल्या GPIO पिनसाठी पूर्ण-वैशिष्ट्यीकृत ड्रायव्हर लागू करते, ज्यामध्ये सर्व पिन स्थिती वाचण्याची पूर्ण क्षमता असते. ड्रायव्हर डिव्हाइस सुरू करण्यासाठी, वैयक्तिक चॅनेल स्थिती वाचण्यासाठी आणि एकाच वेळी सर्व चॅनेलसाठी स्थिती माहिती मिळविण्यासाठी फंक्शन्स प्रदान करतो. हे एकाधिक डिव्हाइस कॉन्फिगरेशनला समर्थन देते आणि प्रभावी चॅनेल व्यवस्थापनासाठी अंतर्गत स्थिती राखते.

X-CUBE-ISO1 सॉफ्टवेअर API दोन प्रमुख स्रोतांमध्ये विभागलेले आहेत files, जे ISO1A1 सबफोल्डरमध्ये आहेत:

आयएसओ१ए१
ISO1A1 fileबोर्ड कॉन्फिगरेशन, घटक परस्परसंवाद आणि दोष व्यवस्थापनासाठी डिझाइन केलेल्या API फंक्शन्सचा एक व्यापक संच समाविष्ट आहे. ही फंक्शन्स वाचन आणि लेखन ऑपरेशन्स, दोष शोधणे आणि अद्यतने सुलभ करतात आणि प्राथमिक API फंक्शन्सना समर्थन देण्यासाठी विविध सहाय्यक उपयुक्तता समाविष्ट करतात. याव्यतिरिक्त, fileएलईडी नियंत्रण, जीपीआयओ इनिशिएलायझेशन, इंटरप्ट हँडलिंग आणि यूएआरटी कम्युनिकेशनसाठी कार्यक्षमता प्रदान करतात.

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

अ‍ॅप्लिकेशन फोल्डर
अॅप्लिकेशन फोल्डरमध्ये मुख्य समाविष्ट आहे fileफर्मवेअरसाठी आवश्यक असलेले s, हेडर आणि स्रोत यासह fileखाली तपशीलवार वर्णन दिले आहे fileया फोल्डरमध्ये s:

  • board_config.h: बोर्डसाठी कॉन्फिगरेशन मॅक्रो.
  • main.c: मुख्य प्रोग्राम (माजीचा कोड)ample जे ISO1A1 साठी लायब्ररीवर आधारित आहे).
  • st_iso_app.c: बोर्ड चाचणी आणि कॉन्फिगरेशनसाठी अॅप्लिकेशन फंक्शन्स.
  • stm32g0xx_hal_msp.c: HAL इनिशिएलायझेशन रूटीन.
  • stm32g0xx_it.c: इंटरप्ट हँडलर.
  • syscalls.c: सिस्टम कॉल अंमलबजावणी.
  • sysmem.c: सिस्टम मेमरी व्यवस्थापन.
  • system_stm32g0xx.c: सिस्टम इनिशिएलायझेशन.

सॉफ्टवेअर आवश्यक संसाधने
न्यूक्लियो डिव्हाइस GPIOs द्वारे X-NUCLEO-ISO1A1 बोर्ड नियंत्रित करते आणि त्याच्याशी संवाद साधते. यासाठी X-NUCLEO-ISO1A1 बोर्डमध्ये असलेल्या औद्योगिक IO डिव्हाइसेसच्या इनपुट, आउटपुट आणि फॉल्ट डिटेक्शनसाठी अनेक GPIOs वापरणे आवश्यक आहे. अधिक तपशीलांसाठी आणि जंपर कॉन्फिगरेशनसाठी हार्डवेअर वापरकर्ता मॅन्युअल UM3483 पहा.

बोर्ड कॉन्फिगरेशन (board_config.h)
बोर्ड_कॉन्फिग.एच file बोर्ड कॉन्फिगरेशननुसार सॉफ्टवेअर कॉन्फिगर करण्यासाठी वापरलेले संसाधने आणि कॉन्फिगरेशनल मॅक्रो परिभाषित करते. हे दोन बोर्ड हाताळते (जसे की दोन बोर्डांचे स्टॅकिंग).
सॉफ्टवेअर डीफॉल्ट कॉन्फिगरेशन X-NUCLEO-ISO1A1 एक्सपेंशन बोर्डशी संरेखित केले आहे आणि त्याचे जंपर्स डीफॉल्ट स्थितीत आहेत. X-NUCLEO-ISO1A1 साठी सॉफ्टवेअर त्याच्या डीफॉल्ट सेटिंगमध्ये कॉन्फिगर करण्यासाठी, board_config.h मधील BOARD_ID_DEFAULT मॅक्रो अनकमेंट करा. file.

board_config.h मधील BOARD_ID_ALTERNATE मॅक्रो अनकमेंट करून सॉफ्टवेअर ALTERNATE कॉन्फिगरेशन सेट केले जाते. file आणि बोर्डवरील जंपरची स्थिती बदलणे.
स्टॅक-अप कॉन्फिगरेशनमध्ये एकाच वेळी दोन बोर्ड वापरण्यासाठी, BOARD_ID_DEFAULT आणि BOARD_ID_ALTERNATE दोन्ही मॅक्रो अनकमेंट करा आणि एका बोर्डचे जंपर्स डीफॉल्ट स्थितीत आणि दुसरे पर्यायी स्थितीत असल्याची खात्री करा. लक्षात ठेवा की दोन्ही बोर्ड एकाच कॉन्फिगरेशनमध्ये (दोन्ही डीफॉल्टमध्ये किंवा दोन्ही पर्यायी स्थितीत) ठेवण्याची शिफारस केलेली नाही आणि त्यामुळे अवांछित वर्तन होऊ शकते.
फक्त एकच बोर्ड चालवताना, सॉफ्टवेअर फक्त एकाच कॉन्फिगरेशनसाठी कॉन्फिगर केले आहे आणि दुसऱ्या कॉन्फिगरेशनशी संबंधित मॅक्रो टिप्पणी केलेला आहे याची खात्री करा.

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-4

प्री-स्केलर्स
योग्य मॅक्रो सेट करून PWM आउटपुटसाठी वेगवेगळ्या फ्रिक्वेन्सी रेंज मिळवण्यासाठी आपण board_config.h मधील प्री-स्केलर व्हॅल्यूज कॉन्फिगर करू शकतो. प्री-स्केलर व्हॅल्यू वापरण्यासाठी, संबंधित मॅक्रो अनकमेंट करा आणि इतरांवर कमेंट करा. डिफॉल्टनुसार, DEFAULT_PRESCALAR वापरला जातो.

  • प्रीस्केलर_१
  • प्रीस्केलर_१
  • डीफॉल्ट_प्रेस्केलर

प्रीस्केलर व्हॅल्यूज फक्त टाइमर वापरत असतानाच वापरल्या जातात आणि कोणत्याही मूलभूत I/O ऑपरेशनसाठी आवश्यक नसतात. प्री-स्केलर मॅक्रोजची व्हॅल्यूज आणि त्यांच्याशी संबंधित फ्रिक्वेन्सी रेंज कोड डॉक्युमेंटेशनमध्ये किंवा कोडमध्येच पाहता येतात.

हृदयाचा ठोका एलईडी
NUCLEO-G7RB बोर्डशी योग्य कनेक्शनची चाचणी म्हणून आपण हिरव्या वापरकर्ता LED, D071 ला हृदयाच्या ठोक्यात ब्लिंक करण्यासाठी कॉन्फिगर करू शकतो. टिप्पणी न दिल्यास HEARTBEAT_LED हा मॅक्रो X-NUCLEO-ISO1A1 वर NUCLEO शी कनेक्ट केल्यावर हिरव्या LED ला ब्लिंक करतो. ते 1 सेकंद चालू राहते आणि 2 सेकंद बंद राहते, टाइमरद्वारे वेळेची काळजी घेतली जाते. जेव्हा ते वापरले जात नाही किंवा LEDs शी संबंधित कोणतेही कार्य कॉल केले जात नाही, तेव्हा मॅक्रो टिप्पणी न दिल्यास तो अनकमेंट केला पाहिजे.

इनपुट आणि आउटपुट GPIO कॉन्फिगरेशन
प्रत्येक X-NUCLEO-ISO1A1 बोर्ड दोन इनपुट पोर्ट आणि दोन आउटपुट पोर्टने सुसज्ज आहे. दोन X-NUCLEO-ISO1A1 बोर्ड एकमेकांच्या वर स्टॅक करून बोर्डची क्षमता वाढवता येते, ज्यामुळे चार डिजिटल इनपुट पोर्ट आणि चार डिजिटल आउटपुट पोर्ट वापरता येतात. प्रदान केलेल्या सॉफ्टवेअरमध्ये व्यापक API समाविष्ट आहेत जे पोर्ट वाचणे, सेट करणे आणि साफ करणे सुलभ करतात. याव्यतिरिक्त, API सर्व पोर्ट एकाच वेळी सेट करणे, वाचणे किंवा साफ करणे शक्य करतात. API फंक्शन्सबद्दल तपशीलवार माहिती कोड दस्तऐवजीकरणात तसेच या दस्तऐवजाच्या API विभागात उपलब्ध आहे.

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-5

येथे DI हा उपसर्ग डिजिटल इनपुट पोर्ट दर्शवितो आणि DO हा डिजिटल आउटपुट पोर्ट दर्शवितो. पर्यायी कॉन्फिगरेशनसाठी, सॉफ्टवेअर _alt प्रत्यय जोडलेल्या समान नामकरण पद्धती वापरते.
खालील तक्त्यामध्ये विविध IO पोर्टशी संबंधित सॉफ्टवेअरमध्ये परिभाषित केलेल्या GPIO मॅक्रोचे तपशीलवार वर्णन केले आहे:

तक्ता २. डीफॉल्ट आणि पर्यायी सॉफ्टवेअर कॉन्फिगरेशनसाठी वाटप केलेले GPIOs

नाव कार्य डीफॉल्ट कॉन्फिगरेशन पर्यायी कॉन्फिगरेशन
इनपुट पिन इनपुट पिन १ जीपीआयओसी, IA0_IN_1_पिन जीपीआयओडी, IA0_IN_1_पिन
इनपुट पिन १ जीपीआयओडी, IA1_IN_2_पिन जीपीआयओसी, IA1_IN_1_पिन
आउटपुट पिन आउटपुट पिन १ जीपीआयओसी, QA0_CNTRL_1_पिन जीपीआयओडी, QA0_CNTRL_1_पिन
आउटपुट पिन १ जीपीआयओसी, QA1_CNTRL_2_पिन जीपीआयओसी, QA1_CNTRL_2_पिन
फॉल्ट पिन फॉल्ट पिन १ जीपीआयओसी, एफएलटी१_क्यूए०_२_ओटी_पिन जीपीआयओडी, एफएलटी१_क्यूए०_१_ओटी_पिन
फॉल्ट पिन १ जीपीआयओसी, एफएलटी२_क्यूए०_२_ओएल_पिन जीपीआयओडी, FLT2_QA0_1_OL_PIN
फॉल्ट पिन १ जीपीआयओसी, एफएलटी१_क्यूए०_२_ओटी_पिन जीपीआयओसी, एफएलटी१_क्यूए०_२_ओटी_पिन
फॉल्ट पिन १ जीपीआयओसी, एफएलटी२_क्यूए०_२_ओएल_पिन जीपीआयओडी, FLT2_QA1_2_OL_PIN
कॉन्फिगरेशन मॅक्रो बोर्ड_आयडी_डीफॉल्ट बोर्ड_आयडी_अल्टरनेट

टायमर आणि पीडब्ल्यूएम
विशिष्ट पिनसाठी PWM सिग्नल जनरेट करण्यासाठी X-CUBE-ISO1 फर्मवेअरमध्ये टायमरचा वापर केला जाऊ शकतो. डीफॉल्टनुसार, TIM3 वगळता टायमर इनिशियलाइज केले जात नाहीत. PWM सिग्नल जनरेट करण्यापूर्वी संबंधित टायमर इनिशियलाइज केले पाहिजेत आणि संबंधित आउटपुट पोर्ट PWM मोडमध्ये इनिशियलाइज केले पाहिजेत.
सामान्य GPIO इनपुट/आउटपुट ऑपरेशन्ससाठी, कोणताही टायमर किंवा आउटपुट पोर्ट कॉन्फिगर करण्याची आवश्यकता नाही, कारण ते डिफॉल्टनुसार हाताळले जाते. तथापि, जर एकदा आउटपुट पिन PWM मोडमध्ये सेट केले गेले, तर आपल्याला त्यांना GPIO मोडमध्ये पुन्हा कॉन्फिगर करावे लागेल जेणेकरून ते GPIO पिन म्हणून वापरता येतील.

टीप: जेव्हा PWM जनरेशनसाठी आउटपुट पिन वापरले जात असतात, तेव्हा GPIO आउटपुट अक्षम केले जाते, दोन्ही कार्यक्षमता एकाच वेळी लागू केल्या जाऊ शकत नाहीत. PWM वापरल्यानंतर GPIO पुन्हा सक्षम करण्यासाठी, सर्व पोर्ट एकाच वेळी GPIO म्हणून कॉन्फिगर करण्यासाठी API फंक्शन ST_ISO_BoardConfigureDefault() किंवा ST_ISO_InitGPIO() किंवा विशिष्ट GPIO पोर्ट आणि पिनसह ST_ISO_Init_GPIO() कॉल करू शकता.

वर नमूद केल्याप्रमाणे, सॉफ्टवेअर डीफॉल्टनुसार एक टाइमर, TIM3 देखील वापरते, जो वापरकर्त्याच्या LED टाइमिंग, घड्याळ आणि UART टाइमिंग अंमलबजावणीसाठी वापरला जातो. ते डीफॉल्टनुसार 1 सेकंदाच्या कालावधीसाठी कॉन्फिगर केले आहे.
खालील तक्त्यामध्ये आमच्या कोडमधील प्रत्येक पिनसाठी उपलब्ध असलेल्या टायमरची माहिती दिली आहे:

तक्ता ३. प्रत्येक पिनसाठी उपलब्ध टायमर

पिन नाव सॉफ्टवेअर प्रतिनिधित्व टाइमर टायमर चॅनेल पर्यायी कार्य
QA0_CNTRL_1_पिन QA_0 TIM2 टिम_चॅनेल_४ जीपीआयओ_एएफ२_टीआयएम२
QA1_CNTRL_2_पिन QA_1 TIM1 टिम_चॅनेल_४ जीपीआयओ_एएफ२_टीआयएम२
QA0_CNTRL_2_पिन QA_0_ALT TIM1 टिम_चॅनेल_४ जीपीआयओ_एएफ२_टीआयएम२
QA1_CNTRL_1_पिन QA_1_ALT TIM17 टिम_चॅनेल_४ जीपीआयओ_एएफ२_टीआयएम२

फर्मवेअरच्या अतिरिक्त उपयुक्तता
X-NUCLEO-ISO1A1 मूल्यांकन मंडळाची कार्यक्षमता वाढविण्यासाठी फर्मवेअरमध्ये अतिरिक्त उपयुक्तता समाविष्ट आहेत. त्यापैकी काही खाली वर्णन केल्या आहेत.

UART
UART कम्युनिकेशन वैशिष्ट्यामुळे TeraTerm, PuTTY आणि इतर तत्सम अनुप्रयोगांसारख्या पीसी उपयुक्ततांद्वारे बोर्ड स्थितीचे रिअल-टाइम मॉनिटरिंग आणि डीबगिंग करण्याची परवानगी मिळते. हे सॉफ्टवेअर NUCLEO-G071RB बोर्डमध्ये असलेल्या UART द्वारे UART डेटा ट्रान्समिशन सक्षम करते. `ST_ISO_UART` फंक्शन UART वर सिस्टम अपटाइम, फर्मवेअर कॉन्फिगरेशन आणि फॉल्ट स्थितीसह तपशीलवार बोर्ड स्थिती माहिती पाठवते. हा डेटा असू शकतो viewटेराटर्म सारख्या कोणत्याही सिरीयल पोर्ट अॅप्लिकेशनचा वापर करून समर्थित. `ST_ISO_APP_DIDOandUART` फंक्शन डिजिटल इनपुट/आउटपुट ऑपरेशन्सना UART कम्युनिकेशनसह एकत्रित करते, सर्व इनपुट आणि आउटपुट चॅनेलची स्थिती निर्दिष्ट अंतराने प्रसारित करते. खाली कॉन्फिगरेशन सेटिंग्ज आणि जसे आहेतampटेराटर्ममध्ये डेटा कसा दिसतो याचे वर्णन. वापरल्या जाणाऱ्या सिस्टम आणि सिरीयल पोर्टनुसार पोर्टचे नाव बदलू शकते.

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-6

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-7

आयओ पिन मोड कॉन्फिगरेशन
IO पिन मोड कॉन्फिगरेशन युटिलिटी वापरकर्त्यांना ST_ISO_BoardConfigure() फंक्शन वापरून बोर्डचे इनपुट आणि आउटपुट पोर्ट सेट करण्याची परवानगी देते. हे फंक्शन दोन आउटपुट पोर्ट (QA0, QA1) आणि दोन इनपुट पोर्ट (IA0, IA1) इनपुट/आउटपुट मोड, PWM आउटपुट मोड किंवा इंटरप्ट इनपुट मोडमध्ये कॉन्फिगर करण्यास समर्थन देते. पॅरामीटर्स समायोजित करून आणि हे फंक्शन कॉल करून, वापरकर्ते विशिष्ट गरजा पूर्ण करण्यासाठी बोर्डचे IO कॉन्फिगरेशन सहजपणे कस्टमाइझ करू शकतात.

इनपुट/आउटपुट मोडमध्ये, युटिलिटी सामान्य-उद्देशीय डिजिटल ऑपरेशन्ससाठी GPIO पिन सुरू करते. PWM आउटपुट मोडमध्ये, ते अचूक PWM सिग्नल नियंत्रणासाठी टाइमर सेट करते. इंटरप्ट इनपुट मोडमध्ये असताना, युटिलिटी इंटरप्ट्स हाताळण्यासाठी पिन कॉन्फिगर करते, ज्यामुळे रिस्पॉन्सिव्ह इव्हेंट-चालित प्रोग्रामिंगला अनुमती मिळते.

इंटरप्ट हँडलिंग
FAULT सिग्नल हाताळण्यासाठी, सॉफ्टवेअर संबंधित इंटरप्ट लाईन्स सक्षम करते, ज्यामुळे रिस्पॉन्सिव्ह इव्हेंट-चालित प्रोग्रामिंग शक्य होते. या इंटरप्ट्सशी एक कस्टमाइज्ड हँडलर जोडता येतो.
API मध्ये परिभाषित केलेले HAL_GPIO_EXTI_Rising_Callback फंक्शन. सॉफ्टवेअरमध्ये ST_ISO_BoardConfigure फंक्शनद्वारे इंटरप्ट मोडमध्ये GPIO पिन सुरू करण्याची आणि EXTI IRQ हँडलर्समध्ये विशिष्ट क्रिया कॉन्फिगर करण्याची वैशिष्ट्ये समाविष्ट आहेत. हे वापरकर्त्यांना बाह्य घटनांना बोर्ड कसा प्रतिसाद देतो हे कस्टमाइझ करण्यास अनुमती देते, ज्यामुळे ते विविध फॉल्ट परिस्थिती आणि ट्रिगर्स प्रभावीपणे व्यवस्थापित करू शकते याची खात्री होते.

API
X-CUBE-ISO1 सॉफ्टवेअर API हे X-NUCLEO-ISO1A1 बोर्ड नियंत्रित आणि देखरेख करण्यासाठी फंक्शन्सचा एक व्यापक संच प्रदान करते, ज्यामध्ये PWM सिग्नल जनरेशन आणि GPIO ऑपरेशन्स समाविष्ट आहेत. API वापरण्यास सोपे आणि विविध अनुप्रयोगांमध्ये एकत्रित करण्यासाठी डिझाइन केलेले आहे, जे बोर्डच्या कार्यक्षमतेवर लवचिकता आणि नियंत्रण प्रदान करते.

X-CUBE-ISO1 सॉफ्टवेअर API हे BSP/ISO1A1 फोल्डरमध्ये परिभाषित केले आहे. त्याची कार्ये ST_ISO द्वारे प्रीफिक्स केलेली आहेत. iso1a1.c आणि pwm_api.c द्वारे अनुप्रयोगांना दृश्यमान API files हे स्थिरांक, डेटा स्ट्रक्चर्स आणि फंक्शन्सचे संयोजन आहे.
Sampया फंक्शन्सचे काही संभाव्य वापर दर्शविण्यासाठी फर्मवेअर अॅप्लिकेशन्स या API चा वापर करतात.

X-CUBE-ISO1 सॉफ्टवेअर पॅकेज API चे दोन संच प्रदान करते:

  • ISO1A1 API
  • पीडब्ल्यूएम एपीआय

ISO1A1 API
ISO1A1 API iso1a1.h आणि iso1a1.c मध्ये परिभाषित केले आहे. files. हे ISO1A1 बोर्ड कॉन्फिगर आणि नियंत्रित करण्यासाठी फंक्शन्स प्रदान करते, ज्यामध्ये GPIO इनपुट/आउटपुट ऑपरेशन्स आणि फॉल्ट डिटेक्शन समाविष्ट आहे.

मुख्य कार्ये

  • ST_ISO_BoardConfigureDefault: बोर्डचे IO पोर्ट डीफॉल्ट GPIO कॉन्फिगरेशनसह कॉन्फिगर करते.
  • ST_ISO_BoardConfigure: बोर्डसाठी इनपुट आणि आउटपुट पोर्टचा मोड कॉन्फिगर करते.
  • ST_ISO_BoardInit: बोर्ड हार्डवेअर सुरू करते.
  • ST_ISO_BoardMapInit: चॅनेल हँडल कॉन्फिगरेशनवर आधारित बोर्ड कार्यक्षमता सुरू करते.
  • ST_ISO_GetFWVersion: सध्याची फर्मवेअर आवृत्ती परत करते.
  • ST_ISO_GetChannelHandle: निर्दिष्ट चॅनेल नावासाठी चॅनेल हँडल मिळवते.
  • ST_ISO_InitGPIO: दिलेल्या मॉड्यूल आयडीसह निर्दिष्ट GPIO पिन सुरू करते.
  • ST_ISO_InitInterrupt: दिलेल्या मॉड्यूल आयडीसह निर्दिष्ट GPIO पिनला इंटरप्ट म्हणून सुरू करते.
  • ST_ISO_EnableFaultInterrupt: इंटरप्ट मोडमध्ये फॉल्ट GPIO पिन सुरू करते.
  • ST_ISO_SetChannelStatus: निर्दिष्ट चॅनेलची स्थिती सेट करते.
  • ST_ISO_SetOne_DO: एकच डिजिटल आउटपुट चॅनेल सेट करते.
  • ST_ISO_ClearOne_DO: एकच डिजिटल आउटपुट चॅनेल साफ करते.
  • ST_ISO_WriteAllChannels: सर्व डिजिटल आउटपुट चॅनेलवर डेटा लिहितो.
  • ST_ISO_GetOne_DI: एका डिजिटल इनपुट चॅनेलची स्थिती मिळवते.
  • ST_ISO_ReadAllChannel: सर्व इनपुट चॅनेलची स्थिती वाचते.
  • ST_ISO_ReadAllOutputChannel: सर्व आउटपुट चॅनेलची स्थिती वाचते.
  • ST_ISO_ReadFaultStatus: सर्व फॉल्ट डिटेक्शन पोर्टवरून फॉल्ट स्टेटस वाचते.
  • ST_ISO_ReadFaultStatusPolling: पोलिंग मोडमध्ये बोर्डांच्या फॉल्ट डिटेक्शनची चाचणी करते.
  • ST_ISO_DisableOutputChannel: त्या चॅनेलसाठी आउटपुट अक्षम करते.
  • ST_ISO_UpdateBoardStatusInfo: बोर्ड स्थिती माहिती अपडेट करते.
  • ST_ISO_UpdateFaultStatus: विशिष्ट चॅनेलसाठी फॉल्ट स्थिती अपडेट करते.
  • ST_ISO_BlinkLed: दिलेल्या विलंब आणि पुनरावृत्ती संख्येसह निर्दिष्ट LED ब्लिंक करते.
  • ST_ISO_UART: UART वरून बोर्ड स्थिती माहिती पाठवते.
  • ST_ISO_SwitchInit: स्विच घटक सुरू करते.
  • ST_ISO_SwitchDeInit: स्विच इंस्टन्स डी-इनिशियल करते.
  • ST_ISO_DigitalInputInit: डिजिटल इनपुट घटक सुरू करते.
  • ST_ISO_DigitalInputDeInit: डिजिटल इनपुट इंस्टन्स डी-इनिशियल करते.

पीडब्ल्यूएम एपीआय
PWM API ची व्याख्या pwm_api.h आणि pwm_api.c मध्ये केली आहे. files. विशिष्ट पिनसाठी PWM सिग्नल सुरू करण्यासाठी आणि नियंत्रित करण्यासाठी हे खालील कार्ये प्रदान करते.

  • ST_ISO_Init_PWM_Signal: PWM सिग्नलसाठी टाइमर आणि विशिष्ट पिन सुरू करते.
  • ST_ISO_Set_PWM_Frequency: विशिष्ट पिनसाठी PWM वारंवारता सेट करते.
  • ST_ISO_Set_PWM_Duty_Cycle: विशिष्ट पिनसाठी PWM ड्युटी सायकल सेट करते.
  • ST_ISO_Start_PWM_Signal: विशिष्ट पिनवर PWM सिग्नल सुरू करतो.
  • ST_ISO_Stop_PWM_Signal: विशिष्ट पिनवरील PWM सिग्नल थांबवते.

संबंधित चॅनेलवर PWM सिग्नल सुरू करण्यासाठी, प्रथम ST_ISO_Init_PWM_Signal फंक्शन कॉल करा, नंतर ST_ISO_Set_PWM_Frequency कॉल करून इच्छित वारंवारता आणि कर्तव्य चक्र सेट करा आणि
अनुक्रमे ST_ISO_Set_PWM_Duty_Cycle फंक्शन्स आणि नंतर तुम्ही ST_ISO_Start_PWM_Signal फंक्शन कॉल करून PWM सिग्नल सुरू करू शकता आणि ST_ISO_Stop_PWM_Signal कॉल करून थांबवू शकता.

फंक्शनला संबंधित पिन नाव आणि उपलब्ध टायमरसह कॉल करणे आवश्यक आहे, ज्याची माहिती तक्ता 3 मध्ये दिली आहे. वेगवेगळ्या फ्रिक्वेन्सी आणि ड्युटी सायकलसह वेगवेगळे आउटपुट चॅनेल सेट केले जाऊ शकतात; फ्रिक्वेन्सी किंवा ड्युटी सायकल बदलल्याने दुसऱ्यावर परिणाम होत नाही, ते तसेच राहते.
वापरकर्त्यासाठी उपलब्ध असलेल्या API बद्दल तपशीलवार तांत्रिक माहिती संकलित HTML मध्ये आढळू शकते file सॉफ्टवेअर पॅकेजच्या "दस्तऐवजीकरण" फोल्डरमध्ये स्थित आहे जेथे सर्व कार्ये आणि पॅरामीटर्स पूर्णपणे वर्णन केले आहेत.

अर्जाचे वर्णन
प्रात्यक्षिक अनुप्रयोग अनेक सोप्या वापराच्या बाबी लागू करतो. st_iso_app आणि board_config fileबोर्ड आणि त्याच्या अॅप्लिकेशन फंक्शन्सची स्थापना आणि वापर करण्यात s महत्त्वाची भूमिका बजावतात. ही फंक्शन्स वापरण्यापूर्वी बोर्ड आणि सॉफ्टवेअरचे कॉन्फिगरेशन एकमेकांशी समक्रमित असल्याची खात्री करा.

अॅप्लिकेशन फंक्शन्स (st_iso_app.h आणि st_iso_app.c)
अ‍ॅप्लिकेशन फंक्शन्सना ST_ISO_APP ने प्रीफिक्स केले आहे; ते वापरकर्त्याला दिसणारे टॉप-लेव्हल फंक्शन्स आहेत जे त्यांच्या अंमलबजावणीसाठी API फंक्शन्सना कॉल करतात. अ‍ॅप्लिकेशन फंक्शन्सना main.c मध्ये कॉल करता येते. file त्यांच्या कार्यक्षमतेसाठी.

  • केस निवड वापरा: वापरकर्ता st_iso_app.c मध्ये इच्छित वापर केस मॅक्रो अनकमेंट करू शकतो. file. main.c मध्ये ST_ISO_APP_SelectUseCaseMacro() हे फंक्शन वापर केस सुरू करते आणि ST_ISO_APP_SelectedFunction() हे फंक्शन ते main.c मध्ये लागू करते. हा दृष्टिकोन मॅक्रो व्याख्यांमध्ये बदल करून ऑपरेशनल मोडचे सोपे कॉन्फिगरेशन करण्यास अनुमती देतो, निवडलेल्या वापर केसवर आधारित योग्य कार्यक्षमता अंमलात आणली जाते याची खात्री करतो. डीफॉल्टनुसार, वापर केस DIDO निवडला जातो आणि वापरकर्त्याला तो अंमलात आणण्यासाठी कोडमध्ये कोणतेही बदल करण्याची आवश्यकता नाही.
  • डिजिटल इनपुट टू डिजिटल आउटपुट मिररिंग (ST_ISO_APP_UsecaseDIDO): हे फंक्शन सर्व इनपुट चॅनेलची स्थिती वाचते आणि सर्व आउटपुट चॅनेलवर समान स्थिती लिहिते. डिजिटल इनपुटला डिजिटल आउटपुटमध्ये मिरर करण्यासाठी हे उपयुक्त आहे.
  • UART (ST_ISO_APP_DIDOandUART) सह डिजिटल इनपुट ते डिजिटल आउटपुट मिररिंग: हे फंक्शन ST_ISO_APP_UsecaseDIDO फंक्शन प्रमाणेच डिजिटल इनपुटला डिजिटल आउटपुटमध्ये मिरर करते. याव्यतिरिक्त, ते न्यूक्लियो डिव्हाइसवरील UART इंटरफेसद्वारे बोर्ड स्थिती प्रसारित करते, ज्यामुळे स्थिती viewटेरा टर्म सारख्या अनुप्रयोगांचा वापर करून सिरीयल पोर्टवर डाउनलोड केले.
  • टेस्ट केस फंक्शन (ST_ISO_APP_TestCase): हे फंक्शन बोर्ड कॉन्फिगरेशनवर आधारित चाचण्या आणि कृतींची मालिका करते. ते फॉल्ट स्टेटस तपासते, दोन डिजिटल इनपुट चॅनेलची स्टेटस वाचते आणि त्यांच्या मूल्यांवर आधारित कृती करते. हे फंक्शन बोर्डच्या कामगिरीचे आणि कार्यक्षमतेचे जलद मूल्यांकन करण्यास आणि वेगवेगळ्या LED पॅटर्नद्वारे व्हिज्युअल फीडबॅक मिळविण्यास मदत करते. board_config.h मध्ये HEARTBEAT_LED मॅक्रोची खात्री करा. file योग्य एलईडी पॅटर्नचे निरीक्षण करण्यासाठी टिप्पणी दिली आहे.
  • PWM जनरेशन (ST_ISO_APP_PWM _OFFSET): हे फंक्शन दोन्ही आउटपुट चॅनेलवर 1 Hz च्या फ्रिक्वेन्सी आणि ड्युटी सायकल 50% सह PWM सिग्नल सुरू करते. ते PWM सिग्नल सुरू करते, फ्रिक्वेन्सी आणि ड्युटी सायकल सेट करते आणि निर्दिष्ट बोर्ड आयडीसाठी PWM सिग्नल सुरू करते. PWM सिग्नल दोन्ही चॅनेलमधील ऑफसेटसह तयार केला जातो आणि त्यामुळे ते टप्प्यात नसतात.
  • फॉल्ट डिटेक्शन टेस्ट (ST_ISO_APP_FaultTest): हे फंक्शन स्मार्ट आउटपुट मॉड्यूल IPS1025 च्या इनबिल्ट डायग्नोस्टिक पिनला पोलिंग किंवा इंटरप्ट मोडमध्ये मोटरिंग करून फॉल्ट डिटेक्शनचे मूल्यांकन करते. ते फॉल्ट डिटेक्शन मोड कॉन्फिगर करते, फॉल्ट डिटेक्शन सुरू करते आणि निवडलेल्या मोडवर आधारित फॉल्ट स्टेटस स्ट्रक्चर अपडेट करते. फॉल्ट्स शोधून आणि प्रभावीपणे हाताळून बोर्डची विश्वासार्हता आणि सुरक्षितता सुनिश्चित करण्यासाठी हे फंक्शन महत्त्वाचे आहे. जेव्हा ते पोलिंग मोडमध्ये असते, तेव्हा टाइमरच्या मदतीने फॉल्ट स्टेटस दर सेकंदाला अपडेट केला जातो आणि स्ट्रक्चर डिफॉल्टबोर्डफॉल्टस्टॅटस किंवा अल्टरनेटबोर्डफॉल्टस्टॅटसमध्ये परावर्तित होतो. जेव्हा ते इंटरप्ट मोडमध्ये असते, तेव्हा फॉल्ट स्टेटस फक्त फॉल्ट झाल्यावर अपडेट केला जातो आणि ते संबंधित आउटपुट पोर्ट साफ करण्यासाठी सॉफ्टवेअरला ट्रिगर करते.
  • PWM व्हेरिएशन टेस्ट (ST_ISO_APP_PwmVariationTest): हे फंक्शन बोर्ड कॉन्फिगरेशनवर आधारित वेगवेगळ्या आउटपुट चॅनेलवर PWM (पल्स विड्थ मॉड्युलेशन) सिग्नल्सच्या व्हेरिएशनची चाचणी करण्यासाठी डिझाइन केले आहे. ते डीफॉल्ट आणि पर्यायी बोर्ड कॉन्फिगरेशन दोन्हीसाठी PWM सिग्नल्सना इनिशियलाइज करते, त्यांची फ्रिक्वेन्सी 100 Hz आणि इनिशिअल ड्युटी सायकल 0% वर सेट करते. त्यानंतर हे फंक्शन ड्युटी सायकल 0% च्या वाढीने 100% ते 5% पर्यंत बदलते आणि 100% च्या घटाने 0% ते 5% पर्यंत परत करते, प्रत्येक स्टेपमध्ये 2-सेकंद विलंब होतो. हे नियंत्रित व्हेरिएशन डिफॉल्ट बोर्डसाठी QA_0 आणि QA_1 चॅनेलवर आणि पर्यायी बोर्डसाठी QA_0_ALT आणि QA_1_ALT चॅनेलवर PWM सिग्नल वर्तनाचे निरीक्षण आणि मूल्यांकन करण्यास अनुमती देते.

या कॉन्फिगरेशनचे अनुसरण करून आणि प्रदान केलेल्या अॅप्लिकेशन फंक्शन्सचा वापर करून, तुम्ही विविध प्रात्यक्षिक वापरासाठी X-NUCLEO-ISO1A1 बोर्ड प्रभावीपणे सेट अप करू शकता आणि वापरू शकता.

सिस्टम सेटअप मार्गदर्शक

हार्डवेअर वर्णन

STM32 न्यूक्लियो प्लॅटफॉर्म
STM32 न्यूक्लिओ डेव्हलपमेंट बोर्ड वापरकर्त्यांना कोणत्याही STM32 मायक्रोकंट्रोलर लाइनसह सोल्यूशन्स तपासण्यासाठी आणि प्रोटोटाइप तयार करण्यासाठी परवडणारा आणि लवचिक मार्ग प्रदान करतात.
Arduino® कनेक्टिव्हिटी सपोर्ट आणि ST मॉर्फो कनेक्टर्समुळे STM32 न्यूक्लियो ओपन डेव्हलपमेंट प्लॅटफॉर्मची कार्यक्षमता वाढवणे सोपे होते, ज्यामध्ये निवडण्यासाठी विस्तृत श्रेणीतील विशेष विस्तार बोर्ड उपलब्ध आहेत.

STM32 न्यूक्लिओ बोर्डला वेगळ्या प्रोबची आवश्यकता नाही कारण ते ST-LINK/V2-1 डीबगर/प्रोग्रामर एकत्रित करते.
STM32 Nucleo बोर्ड विविध पॅकेज केलेल्या सॉफ्टवेअरसह सर्वसमावेशक STM32 सॉफ्टवेअर HAL लायब्ररीसह येतो.ampलेस

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-8

STM32 न्यूक्लियो बोर्ड बद्दल माहिती येथे उपलब्ध आहे www.st.com/stm32nucleo

X-NUCLEO-ISO1A1 विस्तार बोर्ड
X-NUCLEO-ISO1A1 हे एक मूल्यांकन मंडळ आहे जे STM32 न्यूक्लियो बोर्डचा विस्तार करण्यासाठी आणि मायक्रो-PLC कार्यक्षमता प्रदान करण्यासाठी डिझाइन केलेले वेगळे औद्योगिक इनपुट/आउटपुट आहे. GPIO इंटरफेसमध्ये संघर्ष टाळण्यासाठी विस्तार बोर्डवर योग्य निवडीसह X-NUCLEO-ISO1A1 बोर्डपैकी दोन STM32 न्यूक्लियो बोर्डच्या वर एकत्र स्टॅक केले जाऊ शकतात. UL1577 प्रमाणित डिजिटल आयसोलेटर्स STISO620 आणि STISO621 लॉजिक आणि प्रोसेस साइड घटकांमध्ये आयसोलेशन प्रदान करतात. प्रोसेस साइडमधून दोन करंट मर्यादित हाय-साइड इनपुट CLT03-2Q3 द्वारे प्राप्त केले जातात. CLT03-2Q3 औद्योगिक परिस्थितींसाठी संरक्षण, आयसोलेशन आणि ऊर्जा-कमी स्थिती संकेत प्रदान करते, जे IEC61000-4-2, IEC61000-4-4 आणि IEC61000-4-5 सारख्या मानकांची पूर्तता करण्यासाठी डिझाइन केलेले आहे. प्रत्येकी एक हाय-साइड स्विच IPS1025H-32/HQ-32 डायग्नोस्टिक्स आणि स्मार्ट ड्रायव्हिंग वैशिष्ट्यांसह 5.6 A पर्यंत संरक्षित आउटपुट प्रदान करते. हे कॅपेसिटिव्ह, रेझिस्टिव्ह किंवा इंडक्टिव्ह लोड चालवू शकतात. X-NUCLEO-ISO1A1 X-CUBE-ISO1 सॉफ्टवेअर पॅकेज वापरून ऑनबोर्ड IC चे जलद मूल्यांकन करण्यास अनुमती देते.

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-9

हार्डवेअर सेटअप
खालील हार्डवेअर घटक आवश्यक आहेत:

  1. एक STM32 न्यूक्लियो डेव्हलपमेंट प्लॅटफॉर्म (सुचवलेला ऑर्डर कोड: NUCLEO-GO71RB)
  2. एक औद्योगिक डिजिटल आउटपुट विस्तार बोर्ड (ऑर्डर कोड: X-NUCLEO-ISO1A1)
  3. STM32 न्यूक्लियोला पीसीशी जोडण्यासाठी एक USB टाइप A ते मायक्रो USB केबल
  4. X-NUCLEO-ISO24A1 विस्तार बोर्डला पुरवण्यासाठी बाह्य वीज पुरवठा (1 V) आणि संबंधित तारा.

सॉफ्टवेअर सेटअप
X-NUCLEO-ISO32A1 विस्तार बोर्डने सुसज्ज असलेल्या STM1 न्यूक्लियोसाठी अनुप्रयोग तयार करण्यासाठी योग्य विकास वातावरण सेट करण्यासाठी खालील सॉफ्टवेअर घटक आवश्यक आहेत:

  • X-CUBE-ISO1: STM32Cube चा विस्तार जो अॅप्लिकेशन डेव्हलपमेंटसाठी समर्पित आहे ज्यासाठी X-NUCLEO-ISO1A1 बोर्डचा वापर आवश्यक आहे. X-CUBE-ISO1 फर्मवेअर आणि संबंधित कागदपत्रे येथे उपलब्ध आहेत. www.st.com
  • डेव्हलपमेंट टूलचेन आणि कंपायलर: STM32Cube एक्सपेंशन सॉफ्टवेअर खालील तीन वातावरणांना समर्थन देते:
    • ARM® (IAR-EWARM) टूलचेनसाठी IAR एम्बेडेड वर्कबेंच
    • वास्तविकView मायक्रोकंट्रोलर डेव्हलपमेंट किट (MDK-ARM-STM32) टूलचेन
    • STM32CubeIDE.

बोर्ड सेटअप
हार्डवेअर वापरकर्ता मॅन्युअल (UM3483) मध्ये निर्दिष्ट केल्याप्रमाणे बोर्ड योग्य जंपर सेटिंग्जसह कॉन्फिगर केलेला असणे आवश्यक आहे. योग्य कार्यक्षमता सुनिश्चित करण्यासाठी आणि संभाव्य समस्या टाळण्यासाठी या मार्गदर्शक तत्त्वांचे काळजीपूर्वक पालन करणे आवश्यक आहे.

सिस्टम सेटअप मार्गदर्शक
या विभागात X-NUCLEO-ISO32A071 विस्तार बोर्डसह STM1 Nucleo, NUCLEO-G1RB बोर्डवर अनुप्रयोग विकसित आणि कार्यान्वित करण्यापूर्वी वेगवेगळे हार्डवेअर भाग कसे सेट करायचे याचे वर्णन केले आहे.

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-10

STMicroelectronics-UM3469-X-CUBE-ISO1-सॉफ्टवेअर-विस्तार-11

X-CUBE-ISO1 विस्तार पॅकेजसाठी सेटअप
तुम्ही बोर्ड कोणत्या कॉन्फिगरेशनवर चालवत आहात त्यानुसार X-NUCLEO-ISO1A1 विशिष्ट जंपर पोझिशन्ससह कॉन्फिगर केलेले असणे आवश्यक आहे. ज्याची तपशीलवार माहिती आपण हार्डवेअर मॅन्युअलमध्ये पाहू शकतो.

  • पायरी 1. मॉर्फोकनेक्टर्सद्वारे STM1 न्यूक्लियोच्या वर X-NUCLEO-ISO1A32 एक्सपेंशन बोर्ड प्लग करा.
    जर तुम्ही एकमेकांच्या वर दोन बोर्ड वापरत असाल, तर त्यांना आकृती ११ प्रमाणे रचून ठेवा.
  • पायरी 2. बोर्डला पॉवर देण्यासाठी USB कनेक्टर CN32 द्वारे USB केबल वापरून STM1 न्यूक्लियो बोर्ड पीसीशी कनेक्ट करा.
  • पायरी 3. J1 ला 1V DC पॉवर सप्लायशी जोडून X-NUCLEO-ISO1A24 एक्सपेंशन बोर्ड चालू करा. जर स्टॅक केलेले बोर्ड वापरत असाल, तर दोन्ही बोर्ड पॉवरसह आहेत याची खात्री करा.
  • पायरी 4. तुमची पसंतीची टूलचेन उघडा (Keil कडून MDK-ARM, IAR कडून EWARM, किंवा STM32CubeIDE).
  • पायरी 5. सॉफ्टवेअर प्रोजेक्ट उघडा आणि board_config.h मध्ये आवश्यक बदल करा. file वापरल्या जाणाऱ्या बोर्डांच्या कॉन्फिगरेशननुसार.
  • पायरी 6. st_iso_app.c मध्ये योग्य वापर केस मॅक्रो सेट करा. file किंवा main.c मध्ये ST_ISO_APP_SelectUseCase फंक्शन वापरून आवश्यक वापर केस कॉल करा. file इतर कोणत्याही इच्छित कार्यासह.
  • पायरी 7. सर्व संकलित करण्यासाठी प्रकल्प तयार करा files आणि संकलित कोड STM32 न्यूक्लियो बोर्डच्या मेमरीमध्ये लोड करा.
  • पायरी 8. STM32 न्यूक्लियो बोर्डवर कोड चालवा आणि अपेक्षित वर्तन सत्यापित करा.

पुनरावृत्ती इतिहास
तक्ता 4. दस्तऐवज पुनरावृत्ती इतिहास

तारीख उजळणी बदल
०१-मे-२०२३ 1 प्रारंभिक प्रकाशन.

महत्वाची सूचना – काळजीपूर्वक वाचा

STMicroelectronics NV आणि त्याच्या उपकंपन्या (“ST”) ST उत्पादनांमध्ये आणि/किंवा या दस्तऐवजात कोणत्याही वेळी सूचना न देता बदल, सुधारणा, सुधारणा, सुधारणा आणि सुधारणा करण्याचा अधिकार राखून ठेवतात. खरेदीदारांनी ऑर्डर देण्यापूर्वी एसटी उत्पादनांची नवीनतम माहिती मिळवावी. ऑर्डर पावतीच्या वेळी एसटी उत्पादनांची विक्री एसटीच्या अटी आणि नियमांनुसार केली जाते.

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

एसटी आणि एसटी लोगो हे एसटीचे ट्रेडमार्क आहेत. ST ट्रेडमार्कबद्दल अतिरिक्त माहितीसाठी, www.st.com/trademarks पहा. इतर सर्व उत्पादन किंवा सेवा नावे त्यांच्या संबंधित मालकांची मालमत्ता आहेत.
या दस्तऐवजातील माहिती या दस्तऐवजाच्या कोणत्याही आधीच्या आवृत्त्यांमध्ये पूर्वी पुरवलेल्या माहितीची जागा घेते आणि पुनर्स्थित करते.
© 2025 STMicroelectronics – सर्व हक्क राखीव

कागदपत्रे / संसाधने

STMicroelectronics UM3469 X-CUBE-ISO1 सॉफ्टवेअर विस्तार [pdf] वापरकर्ता मॅन्युअल
X-NUCLEO-ISO1A1, NUCLEO-G071RB, UM3469 X-CUBE-ISO1 सॉफ्टवेअर विस्तार, UM3469, X-CUBE-ISO1 सॉफ्टवेअर विस्तार, सॉफ्टवेअर विस्तार

संदर्भ

एक टिप्पणी द्या

तुमचा ईमेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित आहेत *