NXP AN13948 LVGL GUI अनुप्रयोगलाई स्मार्ट HMI प्लेटफर्म प्रयोगकर्ता पुस्तिकामा एकीकृत गर्दै
NXP AN13948 LVGL GUI अनुप्रयोगलाई स्मार्ट HMI प्लेटफर्ममा एकीकृत गर्दै

परिचय

NXP ले SLN-TLHMI-IOT नामक समाधान विकास किट लन्च गरेको छ। यसले दुईवटा एपहरू समावेश गर्ने स्मार्ट HMI एपहरूमा केन्द्रित छ - कफी मेसिन र एलिभेटर (स्मार्ट प्यानल एप चाँडै आउँदैछ)।
प्रयोगकर्तालाई जानकारी प्रदान गर्न, केही आधारभूत कागजातहरू समावेश गरिएका छन्, उदाहरणका लागिample, विकासकर्ता गाइड।
गाईडले सबै समाधान कम्पोनेन्टहरू समेट्ने अनुप्रयोगहरूको आधारभूत सफ्टवेयर डिजाइन र वास्तुकलाको परिचय दिन्छ।
यी कम्पोनेन्टहरूले SLN-TLHMI-IOT प्रयोग गरेर विकासकर्ताहरूलाई अझ सजिलै र प्रभावकारी रूपमा तिनीहरूको अनुप्रयोगहरू लागू गर्न मद्दत गर्न बुटलोडर, फ्रेमवर्क, र HAL डिजाइन समावेश गर्दछ।

कागजात र समाधान बारे थप विवरणहरूको लागि, भ्रमण गर्नुहोस्: ML भिजन, भ्वाइस र ग्राफिकल UI सँग i.MX RT117H मा आधारित NXP EdgeReady स्मार्ट HMI समाधान।

यद्यपि, परिचय विचार र आधारभूत उपयोगमा केन्द्रित छ। ढाँचामा आधारित सफ्टवेयरको अनुपालनको कारण, विकासकर्ताहरूलाई उनीहरूको अनुप्रयोगहरू कसरी कार्यान्वयन गर्ने भनेर जान्न अझै सजिलो छैन।
विकासको गति बढाउनको लागि, प्रमुख कम्पोनेन्टहरू कसरी लागू गर्ने भनेर थप गाईडहरू आवश्यक पर्दछ (पूर्वको लागिample, LVGL GUI, दृष्टि, र आवाज पहिचान) चरणबद्ध रूपमा।
पूर्वका लागिampले, ग्राहकहरूसँग तिनीहरूको आफ्नै LVGL GUI अनुप्रयोग समाधानमा अवस्थित अनुप्रयोगहरू भन्दा फरक हुनुपर्छ।
NXP द्वारा प्रदान गरिएको GUI गाइडरसँग तिनीहरूको LVGL GUI लागू गरेपछि, तिनीहरूले यसलाई फ्रेमवर्कको आधारमा स्मार्ट HMI सफ्टवेयर प्लेटफर्ममा एकीकृत गर्नुपर्छ।

यो एप्लिकेसन नोटले फ्रेमवर्कमा आधारित स्मार्ट HMI सफ्टवेयर प्लेटफर्ममा प्रयोगकर्ताद्वारा विकसित LVGL GUI अनुप्रयोगलाई कसरी एकीकृत गर्ने भनेर वर्णन गर्दछ।
सन्दर्भ कोडहरू पनि यस अनुप्रयोग नोटको साथ प्रस्तुत गरिएको छ।

नोट: यो अनुप्रयोग नोटले GUI गाइडर सफ्टवेयर उपकरणको साथ LVGL मा आधारित GUI कसरी विकास गर्ने भनेर व्याख्या गर्दैन।

ओभरview LVGL र GUI गाइडर को खण्ड 1.1 र खण्ड 1.2 मा वर्णन गरिएको छ।

लाइट र बहुमुखी ग्राफिक्स पुस्तकालय
प्रकाश र बहुमुखी ग्राफिक्स पुस्तकालय (LVGL) एक नि: शुल्क र खुला स्रोत ग्राफिक्स पुस्तकालय हो।
यसले तपाइँलाई प्रयोग गर्न सजिलो ग्राफिकल तत्वहरू, सुन्दर दृश्य प्रभावहरू, र कम मेमोरी फुटप्रिन्टको साथ एम्बेडेड GUI सिर्जना गर्न आवश्यक पर्ने सबै कुराहरू प्रदान गर्दछ।

GUI मार्गदर्शक
GUI गाइडर NXP बाट प्रयोगकर्ता-अनुकूल ग्राफिकल प्रयोगकर्ता इन्टरफेस विकास उपकरण हो जसले खुला-स्रोत LVGL ग्राफिक्स पुस्तकालयको साथ उच्च-गुणस्तरको प्रदर्शनहरूको द्रुत विकासलाई सक्षम बनाउँछ।
GUI गाइडरको ड्र्याग-एण्ड-ड्रप सम्पादकले LVGL का धेरै सुविधाहरू प्रयोग गर्न सजिलो बनाउँछ। यी सुविधाहरूमा विजेटहरू, एनिमेसनहरू, र शैलीहरू समावेश छन् GUI सिर्जना गर्न न्यूनतम वा कुनै कोडिङको साथ।
एउटा बटनको क्लिकको साथ, तपाइँ आफ्नो अनुप्रयोग सिमुलेटेड वातावरणमा चलाउन सक्नुहुन्छ वा लक्षित परियोजनामा ​​निर्यात गर्न सक्नुहुन्छ।
GUI गाइडरबाट उत्पन्न कोड सजिलैसँग तपाइँको परियोजनामा ​​थप्न सकिन्छ, विकास प्रक्रियालाई गति दिँदै र तपाइँलाई तपाइँको एप्लिकेसनमा एम्बेडेड प्रयोगकर्ता इन्टरफेस थप्न अनुमति दिदै।
GUI गाइडर NXP सामान्य उद्देश्य र क्रसओभर MCU हरू प्रयोग गर्न स्वतन्त्र छ र धेरै समर्थित प्लेटफर्महरूको लागि निर्मित परियोजना टेम्प्लेटहरू समावेश गर्दछ।
GUI गाइडरमा LVGL र GUI विकासको बारेमा थप जान्नको लागि, https://lvgl.io/ र GUI गाइडरमा जानुहोस्।

विकास वातावरण

स्मार्ट HMI प्लेटफर्ममा GUI एप विकास र एकीकृत गर्नको लागि विकास वातावरण तयार र सेटअप गर्नुहोस्।

हार्डवेयर वातावरण

विकास पछि प्रदर्शनको लागि निम्न हार्डवेयर आवश्यक छ:

  • NXP i.MX RT117H मा आधारित स्मार्ट HMI विकास किट
  • SEGGER J-Link 9-pin Cortex-M एडाप्टरको साथ

सफ्टवेयर वातावरण
यस एप्लिकेसन नोटमा प्रयोग गरिएका सफ्टवेयर उपकरणहरू र तिनीहरूका संस्करणहरू तल प्रस्तुत गरिएका छन्:

  • GUI गाइडर V1.5.0-GA
  • MCUXpresso IDE V11.7.0
    नोट: 11.7.0 अघिको संस्करणहरूमा बगले उचित निर्माण-इन मल्टिकोर परियोजनाहरूलाई अनुमति दिँदैन।
    त्यसैले, संस्करण ११.७.० वा सोभन्दा माथि आवश्यक छ।
  • RT1170 SDK V2.12.1
  • SLN-TLHMI-IOT सफ्टवेयर प्लेटफर्म - स्मार्ट HMI स्रोत कोडहरू हाम्रो आधिकारिक GitHub भण्डारमा जारी गरियो

हार्डवेयर र सफ्टवेयर वातावरण कसरी सेटअप र स्थापना गर्ने भन्ने बारे थप जान्नको लागि, SLN-TLHMI-IOT (कागजातको साथ सुरु गर्ने) हेर्नुहोस्। MCU-SMHMI-GSG).

LVGL GUI अनुप्रयोगलाई स्मार्ट HMI प्लेटफर्ममा एकीकृत गर्नुहोस्

स्मार्ट HMI सफ्टवेयर प्लेटफर्म फ्रेमवर्क वास्तुकला मा निर्मित छ। विकासकर्ताहरूलाई तिनीहरूको LVGL GUI अनुप्रयोग स्मार्ट HMI सफ्टवेयर प्लेटफर्ममा थप्न गाह्रो हुन्छ यदि तिनीहरूले विकासकर्ता गाइड पढे र फ्रेमवर्कको बारेमा थाहा पाए पनि।
अर्को खण्डहरूले यसलाई चरणबद्ध रूपमा कसरी लागू गर्ने भनेर वर्णन गर्दछ।

GUI गाइडरमा LVGL GUI अनुप्रयोग विकास गर्नुहोस्
माथि उल्लेख गरिए अनुसार, GUI गाइडरमा LVGL GUI कसरी विकास गर्ने भन्ने कुरा यस एप्लिकेसन नोटमा जोडिएको छैन।
तर एक GUI पूर्वampआवश्यक छ।
त्यसकारण, GUI गाइडरमा प्रदान गरिएको स्लाइडर प्रगति नामको एउटा साधारण GUI टेम्प्लेट GUI पूर्वको रूपमा चयन गरिएको छ।ampछिटो सेटअपको लागि।
स्लाइडर प्रगति GUI टेम्प्लेट प्रयोग गरिन्छ किनभने यसले छवि समावेश गर्दछ जुन अनुप्रयोगमा निर्माण छवि स्रोतहरू प्रदर्शन गर्न आवश्यक छ।
GUI पूर्वample उत्पन्न गर्न धेरै सजिलो छ: अपडेट गरिएको LVGL पुस्तकालय V8.3.2 र MIMXRT1176xxxxx को रूपमा बोर्ड टेम्प्लेटसँग परियोजना सिर्जना गर्न, GUI गाइडर प्रयोगकर्ताको गाइड (कागजात) हेर्नुहोस् गुइडरग).
चित्र 1 ले परियोजना सेटिङहरू देखाउँछ।

नोट: हालको विकास बोर्डमा प्रयोग भएको चित्र 1 मा रातो बाकसमा देखाइए अनुसार प्यानल प्रकार चयन गर्नुपर्छ।

परियोजना सिर्जना गरेपछि, सम्बन्धित LVGL GUI कोडहरू उत्पन्न गर्न सिम्युलेटर चलाउनुहोस् र परियोजना पनि निर्माण गर्नुहोस्।
तपाईंले GUI पूर्वको प्रभाव जाँच गर्न सक्नुहुन्छampसिम्युलेटरमा।

चित्र 1. GUI गाइडर मा GUI परियोजना सेटअप
परियोजना सेटिङ

स्मार्ट HMI मा आफ्नो परियोजना सिर्जना गर्नुहोस्
नोट: पहिले, MCUXpresso IDE मा आफ्नो परियोजना सिर्जना गर्नुहोस्।

LVGL GUI पूर्व पछिample निर्माण गरिएको छ, यो तपाइँको GUI अनुप्रयोग कार्यान्वयन गर्न MCUXpresso परियोजनामा ​​​​स्मार्ट HMI सफ्टवेयर प्लेटफर्ममा एकीकृत गर्न मुख्य लक्ष्यमा जान सक्छ।
सरल र द्रुत विधि स्मार्ट HMI प्लेटफर्ममा प्रस्तुत हालको अनुप्रयोग परियोजना क्लोन गर्न हो।
लिफ्ट एप क्लोन गरिएको स्रोतको रूपमा राम्रो विकल्प हो किनभने यसको सरल कार्यान्वयन छ।

आफ्नो परियोजना सिर्जना गर्न, तलका चरणहरू पालना गर्नुहोस्:

  1. GitHub बाट क्लोन गरिएको स्मार्ट HMI स्रोत कोडमा "लिफ्ट" फोल्डर प्रतिलिपि गरेर टाँस्नुहोस्। यसलाई तपाईंको नाममा पुन: नामाकरण गर्नुहोस्।
    यसका लागि पूर्वampले, हामीले GUI पूर्वको नाम पछ्याउँदै, "slider_progress" रोजेका छौंample।
  2. "slider_progress" फोल्डरमा, LVGL GUI परियोजना समावेश भएको "lvgl_vglite_lib" फोल्डर प्रविष्ट गर्नुहोस्।
  3. परियोजना सम्बन्धित खोल्नुहोस् files .cproject र .project र सबै स्ट्रिङ "एलिभेटर" लाई आफ्नो प्रोजेक्ट नाम स्ट्रिङ "slider_progress" ले बदल्नुहोस्।
  4. दुबै परियोजनाको लागि समान प्रतिस्थापन गर्नुहोस् files "cm4" र "cm7" फोल्डरहरूमा।
    लिफ्ट परियोजना क्लोन गरेर आफ्नो परियोजना सेट अप गर्नुहोस् files.
    मा देखाइए अनुसार चित्र १ तपाईंका परियोजनाहरू अब MCUXpresso IDE मा लिफ्ट परियोजनाको रूपमा खोल्न सकिन्छ।

चित्र २. MCUXpresso मा परियोजनाहरू सेटअप
परियोजना सेटअप

स्मार्ट HMI को लागि स्रोतहरू निर्माण गर्नुहोस्
सामान्यतया, छविहरू GUI मा प्रयोग गरिन्छ (आवाज प्रम्प्टहरूमा पनि प्रयोग गरिन्छ)।
छविहरू र ध्वनिहरूलाई स्रोतहरू भनिन्छ, अनुक्रममा फ्ल्याशमा भण्डारण गरिन्छ। तिनीहरूलाई फ्लैशमा प्रोग्राम गर्नु अघि, स्रोतहरू बाइनरीमा बनाइनु पर्छ file.
मुख्य काम भनेको सन्दर्भ एप (लिफ्ट) को नामहरू प्रतिस्थापन गर्नु हो।

त्यसो गर्न, तलका चरणहरू पालना गर्नुहोस्:

  1. slider_progress/resource अन्तर्गत क्लोन गरिएको "छविहरू" फोल्डर मेटाउनुहोस्।
  2. तपाईँको GUI गाइडर परियोजनामा ​​उत्पन्न भएको अन्तर्गत "छविहरू" फोल्डर प्रतिलिपि गर्नुहोस्।
  3. यसलाई slider_progress/resource अन्तर्गत टाँस्नुहोस् (अर्थात, एलिभेटर एपको सट्टा आफ्नै छविहरू प्रयोग गर्नुहोस्।)
  4. *.mk मेटाउनुहोस् file "छविहरू" फोल्डरमा GUI गाइडको लागि प्रयोग गरियो।
  5. पुन: नामाकरण गर्नुहोस् files elevator_resource.txt, elevator_resource_build.bat, र elevator_resource_build.sh तपाईंको परियोजना नाम slider_progress_resource.txt, slider_progress_resource_build.bat, र slider_progress_resource_build.bu.
    टिप्पणी:
    • elevator_resource.txt: एपमा प्रयोग गरिएका सबै स्रोतहरू (छवि र ध्वनिहरू) को मार्ग र नामहरू समावेश गर्दै।
    • elevator_resource_build.bat/elevator_resource_build.sh: विन्डोज र लिनक्समा स्रोतहरू तदनुसार निर्माण गर्न प्रयोग गरिन्छ।
  6. slider_progress_resource.txt खोलिसकेपछि file, सबै स्ट्रिङहरू "एलिभेटर" लाई "slider_progress" ले बदल्नुहोस्।
  7. सबै पुराना छविहरू हटाउनुहोस् र तपाईंको छविसँग नयाँ थप्नुहोस् file नामहरू (यहाँ "_scan_example_597x460.c"), जस्तै छवि ../../slider_progress/resource/images/_scan_example_597x460.c
  8. slider_progress_resource.bat खोल्नुहोस् file विन्डोजका लागि र सबै स्ट्रिङहरू "एलिभेटर" लाई "slider_progress" सँग बदल्नुहोस्। लाई पनि त्यस्तै गर्नुहोस् file Linux को लागि slider_progress_resource.sh।
  9. ब्याचमा डबल क्लिक गर्नुहोस् file विन्डोजको लागि slider_progress_resource_build.bat।
  10. आदेश सञ्झ्याल देखिन्छ र छवि स्रोत बाइनरी उत्पन्न गर्न स्वचालित रूपमा चल्छ file फ्ल्यासमा सबै छवि स्थानहरू र छविहरूको कुल बाइट साइज सेट गर्न C कोडहरू समावेश भएको छवि डेटा र स्रोत पहुँच जानकारी समावेश गर्दछ।
    सन्देश देखाइसकेपछि "संसाधन उत्पादन पूर्ण!", छवि स्रोत बाइनरी file नाम slider_progress_resource.bin र स्रोत पहुँच जानकारी file नामित resource_information_table.txt फोल्डर "संसाधन" मा उत्पन्न गरिन्छ।
    छवि स्रोत बाइनरी file फ्लैशमा प्रोग्राम गरिएको छ, र स्रोत पहुँच जानकारी स्मार्ट HMI मा स्रोतहरू पहुँच गर्न प्रयोग गरिन्छ (खण्ड 3.4.1 हेर्नुहोस्)।

LVGL GUI अनुप्रयोगलाई स्मार्ट HMI मा एकीकृत गर्नुहोस्
LVGL GUI अनुप्रयोग कोडहरू (यहाँ SliderProgress GUI पूर्व छample) र निर्मित छवि स्रोतहरू, पहुँच जानकारी सहित, स्मार्ट HMI मा थप्न सकिन्छ।
थप रूपमा, स्मार्ट HMI मा तपाईंको LVGL GUI अनुप्रयोग लागू गर्न, LVGL GUI र सम्बन्धित कन्फिगरेसनहरूसँग सम्बन्धित HAL उपकरणहरू थप्न आवश्यक छ।
LVGL GUI अनुप्रयोग M4 कोरमा चलिरहेको छ, र सम्बन्धित कार्यान्वयन लगभग M4 परियोजना "sln_smart_tlhmi_slider_progress_cm4" मा छ।
विस्तृत चरणहरू थप उप खण्डहरूमा वर्णन गरिएको छ।

LVGL GUI कोड र स्रोतहरू थप्नुहोस्
LVGL GUI अनुप्रयोग कोडहरू स्मार्ट HMI का लागि प्रयोग गरिएका फोल्डरहरू "अनुकूलन" र GUI गाइडर परियोजनामा ​​"उत्पन्न" मा छन्।

स्मार्ट HMI मा कोडहरू थप्न, तलका चरणहरू पालना गर्नुहोस्:

  1. Custom.c र custom.h लाई slider_progress/cm4/custom/ अन्तर्गत GUI गाइडर परियोजनामा ​​रहेको फोल्डर "कस्टम" मा बदल्नुहोस्।
  2. slider_progress/cm4/ बाट "उत्पन्न" फोल्डरहरू हटाउनुहोस्।
    त्यसपछि GUI गाइडर परियोजनाबाट "उत्पन्न" फोल्डर प्रतिलिपि गर्नुहोस् र यसलाई slider_progress/cm4/ मा टाँस्नुहोस्।
  3. फोल्डरहरू "छवि" र "mPythonImages" र सबै मेटाउनुहोस् files *.mk र *.py "उत्पन्न" फोल्डरमा।
    माथि उल्लेख गरिए अनुसार, "छवि" फोल्डरमा रहेका छविहरू स्रोत बाइनरीमा बनाइएका छन् file, त्यसैले "छवि" फोल्डर आवश्यक छैन।
    फोल्डर "mPythonImages" र सबै files *.mk र *.py स्मार्ट HMI को लागि अवांछित छन्।
  4. स्मार्ट HMI प्लेटफर्ममा आधारित म्युटेक्स नियन्त्रण थप्न र फ्ल्यासमा छवि स्थानहरू सेट गर्न, परिमार्जन गर्नुहोस् file MCUXpresso IDE मा custom.c।
    यी सबै RT_PLATFORM द्वारा परिभाषित छन्।
  5. MCUXpresso IDE मा लिफ्ट परियोजना खोल्नुहोस्। sln_smart_tlhmi_elevator_cm4 > custom अन्तर्गत custom.c मा म्याक्रो परिभाषा RT_PLATFORM खोज्नुहोस् र #if defined(RT_PLATFORM) बाट #endif मा सबै कोड लाइनहरू प्रतिलिपि गर्नुहोस्, र तिनीहरूलाई टाँस्नुहोस्। file custom.c sln_smart_tlhmi_slider_progress_cm4 > अनुकूलन अन्तर्गत।
  6. #else अन्तर्गत #else समावेश भएको कोड लाइनहरू मेटाउनुहोस् किनभने तिनीहरू एलिभेटर GUI का लागि प्रयोग गरिन्छ।
    थपिएको कोड लाइनहरूले निम्नलाई समेट्छ:
    • समावेश छ files निम्नानुसार छन्:
      कोड र स्रोतहरू

    • चर घोषणा निम्नानुसार छ:
      कोड र स्रोतहरू
    • प्रकार्य custom_init() मा C कोडहरू निम्नानुसार छन्:
      कोड र स्रोतहरू
      कोड र स्रोतहरू
    • प्रकार्यहरूका लागि C कोडहरू _takeLVGLMutex(), _giveLVGLMutex(), र setup_imgs() जहाँ सबै छविहरूको स्थानहरू सेट गरिएको छ।
  7. resource_information_table.txt मा छविहरूको लागि स्थान सेटअप कोडहरूसँग प्रकार्य setup_imgs() मा कोडहरू बदल्नुहोस्। file (खण्ड 3.3 हेर्नुहोस्)।
    यस एप्लिकेसन नोटमा, त्यहाँ एउटा मात्र छवि स्रोत छ जुन यस रूपमा सेट गरिएको छ: _scan_example_597x460.data = (आधार + 0); यो गरेपछि, प्रकार्य setup_imgs() तल देखाइएको छ:
    कोड र स्रोतहरू
  8. custom.c सँग सम्बन्धित म्याक्रो परिभाषा र प्रकार्य घोषणा थप्न, custom.h लाई परिमार्जन गर्नुहोस् file sln_smart_tlhmi_slider_progress_cm4 > अनुकूलन अन्तर्गत, तल देखाइएको रूपमा:
    कोड र स्रोतहरू
  9. तपाईंको LVGL GUI अनुप्रयोगमा छविहरू परिभाषित गर्न, lvgl_images_internal.h परिमार्जन गर्नुहोस्। file sln_smart_tlhmi_slider_progress_cm4 > अनुकूलन अन्तर्गत।
    • एउटा छवि खोल्नुहोस् *.c file (यहाँ _scan_ex छample_597x460.c) GUI गाइडर परियोजनामा ​​/generated/ image/ अन्तर्गत।
      को अन्त्यमा छवि परिभाषा प्रतिलिपि गर्नुहोस् file। यसलाई lvgl_images_internal.h मा टाँस्नुहोस् file लिफ्ट एपका लागि छविहरूको बारेमा सबै मौलिक परिभाषाहरू मेटाए पछि।
    • .data = _scan_ex मेटाउनुहोस्ample_597x460_map array मा .data लाई प्रकार्य setup_imgs() मा सेट गरिएको छ।
      एरे अन्ततः lvgl_images_internal.h मा परिभाषित गरिएको छ file, तल देखाइएको रूपमा:
      कोड र स्रोतहरू
      टिप्पणी:
      सबै छविको लागि माथिका कार्यहरू दोहोर्याउनुहोस् fileयदि त्यहाँ बहु-छविहरू छन् भने एक एक गरेर files.
  10. app_config.h मा म्याक्रो परिभाषा APP_LVGL_IMGS_SIZE परिभाषित गरेर छवि स्रोतको कुल आकार कन्फिगर गर्नुहोस्। file छविहरूको नयाँ आकारको साथ sln_smart_tlhmi_slider_progress_cm7 > स्रोत अन्तर्गत।
    यो नयाँ आकार निर्मित स्रोत resource_information_table.txt मा उपलब्ध छ file.

HAL उपकरणहरू र कन्फिगरेसनहरू थप्नुहोस्
फ्रेमवर्क आर्किटेक्चरमा आधारित, दुई HAL यन्त्रहरू (डिस्प्ले र आउटपुट उपकरणहरू) LVGL GUI अनुप्रयोगको लागि डिजाइन गरिएका छन्।
दुई यन्त्रहरूको कार्यान्वयनहरू विभिन्न LVGL GUI अनुप्रयोगहरूमा निर्भर गर्दै फरक छन् यद्यपि तिनीहरूका लागि सामान्य वास्तुकला डिजाइनहरू छन्।
तिनीहरू छुट्टै दुईमा लागू हुन्छन् files.
त्यसैले, यो दुई क्लोन गर्नुपर्छ files हालको लिफ्ट अनुप्रयोगबाट र तपाईंको LVGL GUI अनुप्रयोग परिमार्जन गर्नुहोस्।
त्यसपछि, कन्फिगरेसनमा आफ्नो उपकरणहरू सक्षम गर्नुहोस् file.
तपाईंको LVGL GUI अनुप्रयोग फ्रेमवर्कमा आधारित स्मार्ट HMI प्लेटफर्ममा बनाइएको छ।

विस्तृत परिमार्जनहरू MCUXpresso IDE मा गर्न सकिन्छ, जस्तै तल देखाइएको छ:

  • प्रदर्शन HAL उपकरण लागू गर्नुहोस्
    1. hal_display_lvgl_elevator.c लाई प्रतिलिपि गरेर टाँस्नुहोस् file समूह sln_smart_tlhmi_slider_progress_cm4 > फ्रेमवर्क > hal > MCUXpresso परियोजनामा ​​प्रदर्शन। तपाईंको आवेदनको लागि यसलाई hal_display_lvgl_sliderprogress.c मा पुन: नामाकरण गर्नुहोस्।
    2. खोल्नुहोस् file hal_display_lvgl_sliderprogress.c र सबै स्ट्रिङहरू "एलिभेटर" लाई तपाइँको एप्लिकेसन स्ट्रिङ "स्लाइडरप्रोग्रेस" मा बदल्नुहोस्। file.
  • आउटपुट HAL उपकरण लागू गर्नुहोस्
    1. hal_output_ui_elevator.c लाई प्रतिलिपि गरेर टाँस्नुहोस् file समूह sln_smart_tlhmi_slider_progress_cm4 > फ्रेमवर्क > hal > MCUXpresso परियोजनामा ​​आउटपुट अन्तर्गत। तपाईंको आवेदनको लागि यसलाई hal_output_ui_sliderprogress.c मा पुन: नामाकरण गर्नुहोस्।
    2. खोल्नुहोस् file hal_output_ui_sliderprogress.c HAL यन्त्रको निम्न आधारभूत सामान्य कार्यहरू बाहेक लिफ्ट अनुप्रयोगसँग सम्बन्धित सबै प्रकार्यहरू हटाउनुहोस्:
      HAL_OutputDev_UiElevator_Init();
      HAL_OutputDev_UiElevator_Deinit();
      HAL_OutputDev_UiElevator_Start();
      HAL_OutputDev_UiElevator_Stop();
      HAL_OutputDev_UiElevator_InferComplete();
      HAL_OutputDev_UiElevator_InputNotify();
      थप रूपमा, तलका दुई कार्यहरूको घोषणाहरू आरक्षित गर्नुहोस्:
      APP_OutputDev_UiElevator_InferCompleteDecode();
      APP_OutputDev_UiElevator_InputNotifyDecode();
    3. तपाईंको अनुप्रयोग पछि निर्माण गर्न HAL_OutputDev_UiElevator_InferComplete() प्रकार्य सफा गर्नुहोस्।
      प्रकार्यमा, दुबै प्रकार्य कलहरू हटाउनुहोस् _InferComplete_Vision() र _InferComplete_Voice() लिफ्ट अनुप्रयोगको लागि दृष्टि र आवाज एल्गोरिदमहरूबाट परिणामहरू ह्यान्डल गर्न प्रयोग गरिन्छ।
    4. HAL_OutputDev_UiElevator_InputNotify() प्रकार्य सफा गर्नुहोस् र थप अनुप्रयोग विकासको लागि आधारभूत संरचना राख्नुहोस्।
      अन्तमा, प्रकार्य निम्नानुसार देखिन्छ:
      कोड र स्रोतहरू
    5. सामान्य कार्यान्वयनका लागि प्रयोग गरिएका s_UiSurface र s_AsBuffer[] बाहेक enum र array सहित सबै चर घोषणाहरू हटाउनुहोस्।
    6. सबै स्ट्रिङहरू "एलिभेटर" लाई तपाईंको एप्लिकेसन स्ट्रिङ "स्लाइडरप्रोग्रेस" ले बदल्नुहोस्।
  • दुबै HAL यन्त्रहरू सक्षम र कन्फिगर गर्नुहोस्
    1. बोर्ड_define.h खोल्नुहोस् file sln_smart_tlhmi_slider_progress_cm4 > बोर्ड अन्तर्गत।
      सबै स्ट्रिङहरू "एलिभेटर" लाई तपाईंको एप्लिकेसन स्ट्रिङ "स्लाइडरप्रोग्रेस" मा बदल्नुहोस् file.
      यसले ENABLE_DISPLAY_DEV_LVGLSliderProgress र ENABLE_OUTPUT_DEV_UiSliderProgress परिभाषाहरूद्वारा प्रदर्शन र आउटपुट HAL उपकरणहरूलाई सक्षम र कन्फिगर गर्दछ।
    2. lvgl_support.c खोल्नुहोस् file sln_smart_tlhmi_slider_progress_cm4 > बोर्ड अन्तर्गत। सबै स्ट्रिङहरू "एलिभेटर" लाई तपाईंको एप्लिकेसन स्ट्रिङ "स्लाइडरप्रोग्रेस" मा बदल्नुहोस् file.
      यसले क्यामेरा पूर्व सक्षम बनाउँछview प्रदर्शन चालक स्तरमा GUI मा।
  • दुबै HAL यन्त्रहरू दर्ता गर्नुहोस्
    M4 मुख्य sln_smart_tlhmi_cm4.cpp खोल्नुहोस् file sln_smart_tlhmi_slider_progress_cm4 > स्रोत अन्तर्गत।
    सबै स्ट्रिङहरू "एलिभेटर" लाई तपाईंको एप्लिकेसन स्ट्रिङ "स्लाइडरप्रोग्रेस" मा बदल्नुहोस् file.
    यसले लिफ्ट अनुप्रयोगको सट्टा तपाईंको अनुप्रयोगको लागि प्रदर्शन र आउटपुट HAL उपकरण दर्ता गर्दछ।
    त्यसैले, स्मार्ट HMI मा आधारभूत LVGL GUI अनुप्रयोग चलाउनको लागि एकीकरण पूरा भयो।
    अनुप्रयोगको लागि थप आवश्यकताहरूमा निर्भर गर्दै, एकीकृत आधारभूत अनुप्रयोगको आधारमा थप कार्यान्वयनहरू थप्न सकिन्छ।

प्रदर्शन

"slider_progress" अनुप्रयोग डेमो यो एप्लिकेसन नोटसँगै लागू गरिएको छ।

डेमो सफ्टवेयर प्याकेज अनजिप गरेपछि, तल राख्नुहोस् files र फोल्डर स्मार्ट HMI सफ्टवेयरमा:

  • द file hal_display_lvgl_sliderprpgress.c अन्तर्गत [demo]\framework\hal\display\ to the path [smart HMI]\framework\hal\display\
  • द file hal_output_ui_slider_progress.c अन्तर्गत [डेमो]\framework\hal\output\ मार्गमा [smart HMI]\framework\hal\output\
  • फोल्डर "slider_progress" [स्मार्ट HMI] को मूल मार्गमा
    स्मार्ट HMI प्लेटफर्ममा प्रस्तुत कफी मेसिन/लिफ्ट एप जस्तै MCUXpresso IDE मा परियोजनाहरू खोल्न सकिन्छ।
    प्रोग्रामिङ पछि निर्मित *.axf file ठेगाना 0x30100000 र स्रोत बाइनरीमा file 0x30700000 ठेगानामा, LVGL GUI डेमो स्मार्ट HMI विकास बोर्डमा सफलतापूर्वक चल्न सक्छ (स्क्रिन डिस्प्लेको लागि चित्र 3 हेर्नुहोस्)।
    नोट: यदि MCUXpresso IDE को v1.7.0 प्रयोग गर्दै हुनुहुन्छ भने, CM4 परियोजना निर्माण गर्नु अघि सेटिङ > MCU C++ Linker > Managed Linker Script मा "Manage Link script" सक्षम गर्नुहोस्।
    चित्र 3. स्मार्ट HMI विकास बोर्डमा LVGL GUI डेमो प्रदर्शन
    डेमो प्रदर्शन

संशोधन इतिहास

संशोधन इतिहासले यस कागजातमा संशोधनहरूको सारांश दिन्छ।

तालिका २. संशोधन इतिहास

संशोधन नम्बर मिति मौलिक परिवर्तनहरू
1 १ जुन २०२२ प्रारम्भिक रिलीज

कागजातमा स्रोत कोडको बारेमा नोट गर्नुहोस्

Exampयस कागजातमा देखाइएको le कोडसँग निम्न प्रतिलिपि अधिकार र BSD-3-Clause इजाजतपत्र छ:
प्रतिलिपि अधिकार 2023 NXP पुन: वितरण र स्रोत र बाइनरी फारमहरूमा प्रयोग, परिमार्जन सहित वा बिना, निम्न सर्तहरू पूरा भएमा अनुमति दिइन्छ:

  1. स्रोत कोडको पुन: वितरणले माथिको प्रतिलिपि अधिकार सूचना, सर्तहरूको यो सूची र निम्न अस्वीकरण राख्नुपर्छ।
  2. बाइनरी फारममा पुन: वितरणले माथिको प्रतिलिपि अधिकार सूचना पुन: उत्पादन गर्नुपर्छ, सर्तहरूको यो सूची र कागजात र/वा अन्य सामग्रीहरूमा निम्न अस्वीकरण वितरणको साथ प्रदान गरिनु पर्छ।
  3. न त कपीराइट धारकको नाम वा यसका योगदानकर्ताहरूको नाम निर्दिष्ट पूर्व लिखित अनुमति बिना नै यस सफ्टवेयरबाट व्युत्पन्न उत्पादनहरूको समर्थन गर्न वा प्रचार गर्न प्रयोग गर्न सकिन्छ।

यो सफ्टवेयर प्रतिलिपि अधिकार धारकहरू र योगदानकर्ताहरू "जस्तै छ" र कुनै पनि स्पष्ट वा निहित वारेन्टीहरू द्वारा प्रदान गरिएको छ, तर यसमा सीमित छैन, निहित वारेन्टीहरू र एक संयोजकताको अनुमोदित वारेन्टीहरू।
कुनै पनि हालतमा प्रतिलिपि अधिकार धारक वा योगदानकर्ताहरू कुनै पनि प्रत्यक्ष, अप्रत्यक्ष, आकस्मिक, विशेष, उदाहरणीय, वा परिणामात्मक क्षतिहरूका लागि उत्तरदायी हुनेछैनन् (सहीत, तर सीमित छैन, उपरक्षित ES; प्रयोग, डाटा, वा लाभको हानि; वा व्यापार अवरोध) यद्यपि कारणले र दायित्वको कुनै सिद्धान्तमा, चाहे सम्झौतामा होस्, कडा दायित्व होस्, वा तोडफोड (लापरवाही वा अन्यथा) जुनसुकै अवस्थामा पनि कुनै पनि तरिकामा उत्पन्न हुन्छ। यस्तो सम्भावनाको ED
क्षति।

कानूनी जानकारी

परिभाषाहरू
मस्यौदा:
कागजातमा रहेको मस्यौदा स्थितिले सामग्री अझै आन्तरिक पुन: अन्तर्गत रहेको संकेत गर्छview र औपचारिक स्वीकृतिको अधीनमा, जसको परिणाम परिमार्जन वा थप हुन सक्छ।
NXP सेमीकन्डक्टरहरूले कागजातको मस्यौदा संस्करणमा समावेश गरिएको जानकारीको शुद्धता वा पूर्णताको रूपमा कुनै प्रतिनिधित्व वा वारेन्टी दिँदैन र त्यस्ता जानकारीको प्रयोगको परिणामहरूको लागि कुनै दायित्व हुनेछैन।

अस्वीकरणहरू
सीमित वारेन्टी र दायित्व: यस कागजातमा जानकारी सही र विश्वसनीय छ भन्ने विश्वास गरिन्छ।
यद्यपि, NXP अर्धचालकहरूले त्यस्ता जानकारीको शुद्धता वा पूर्णताको रूपमा व्यक्त वा निहित कुनै प्रतिनिधित्व वा वारेन्टी दिँदैनन् र त्यस्ता जानकारीको प्रयोगको परिणामहरूको लागि कुनै दायित्व हुनेछैन।
NXP सेमीकन्डक्टरहरूले यस कागजातको सामग्रीको लागि कुनै जिम्मेवारी लिने छैन यदि NXP सेमीकन्डक्टरहरू बाहिरको जानकारी स्रोतद्वारा प्रदान गरिएको छ।
कुनै पनि अवस्थामा NXP सेमीकन्डक्टरहरू कुनै पनि अप्रत्यक्ष, आकस्मिक, दण्डात्मक, विशेष वा परिणामात्मक क्षतिहरूको लागि उत्तरदायी हुनेछैन (जसमा सीमा बिना - हराएको नाफा, हराएको बचत, व्यापार अवरोध, कुनै पनि उत्पादन वा पुन: कार्य शुल्कहरू हटाउन वा प्रतिस्थापन सम्बन्धी लागतहरू)। वा त्यस्ता क्षतिहरू चोट (लापरवाही सहित), वारेन्टी, सम्झौताको उल्लङ्घन वा कुनै अन्य कानुनी सिद्धान्तमा आधारित हुन्छन्।
जुनसुकै कारणले गर्दा ग्राहकलाई हुने कुनै पनि क्षतिको बाबजुद, यहाँ वर्णन गरिएका उत्पादनहरूका लागि NXP सेमीकन्डक्टरहरूको कुल र ग्राहकप्रतिको संचयी दायित्व NXP सेमीकन्डक्टरहरूको व्यावसायिक बिक्रीका नियम र सर्तहरू अनुसार सीमित हुनेछ।

परिवर्तन गर्ने अधिकार: NXP Semiconductors ले यस कागजातमा प्रकाशित जानकारीमा कुनै पनि समय र बिना सूचना बिना सीमा विनिर्देशहरू र उत्पादन विवरणहरू सहित परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ।
यस कागजातले यहाँ प्रकाशित हुनु अघि उपलब्ध गराइएका सबै जानकारीलाई हटाउँछ र प्रतिस्थापन गर्दछ।

प्रयोगको लागि उपयुक्तता: NXP सेमिकन्डक्टर उत्पादनहरू जीवन समर्थन, जीवन-महत्वपूर्ण वा सुरक्षा-महत्वपूर्ण प्रणाली वा उपकरणहरूमा प्रयोगको लागि उपयुक्त हुन डिजाइन, अधिकृत वा वारेन्टेड छैनन्, न त अनुप्रयोगहरूमा जहाँ NXP सेमीकन्डक्टर उत्पादनको असफलता वा खराबीले व्यक्तिगत रूपमा परिणामको अपेक्षा गर्न सकिन्छ। चोटपटक, मृत्यु वा गम्भीर सम्पत्ति वा वातावरणीय क्षति।
NXP सेमीकन्डक्टरहरू र यसका आपूर्तिकर्ताहरूले त्यस्ता उपकरण वा अनुप्रयोगहरूमा NXP सेमीकन्डक्टर उत्पादनहरू समावेश र/वा प्रयोगको लागि कुनै दायित्व स्वीकार गर्दैनन् र त्यसैले यस्तो समावेश र/वा प्रयोग ग्राहकको आफ्नै जोखिममा हुन्छ।

आवेदनहरू: यी कुनै पनि उत्पादनहरूको लागि यहाँ वर्णन गरिएका अनुप्रयोगहरू चित्रण उद्देश्यका लागि मात्र हुन्।
NXP सेमीकन्डक्टरहरूले कुनै प्रतिनिधित्व वा वारेन्टी गर्दैनन् कि त्यस्ता अनुप्रयोगहरू थप परीक्षण वा परिमार्जन बिना निर्दिष्ट प्रयोगको लागि उपयुक्त हुनेछन्।
NXP सेमीकन्डक्टर उत्पादनहरू प्रयोग गरेर आफ्ना एप्लिकेसनहरू र उत्पादनहरूको डिजाइन र सञ्चालनको लागि ग्राहकहरू जिम्मेवार छन्, र NXP सेमिकन्डक्टरहरूले अनुप्रयोगहरू वा ग्राहक उत्पादन डिजाइनमा कुनै पनि सहयोगको लागि कुनै दायित्व स्वीकार गर्दैनन्।
यो NXP सेमीकन्डक्टर उत्पादन ग्राहकको एप्लिकेसन र योजना अनुसारका उत्पादनहरूका लागि, साथै योजनाबद्ध अनुप्रयोग र ग्राहकको तेस्रो पक्ष ग्राहक(हरू) को प्रयोगका लागि उपयुक्त र उपयुक्त छ कि छैन भनी निर्धारण गर्ने जिम्मेवारी ग्राहकको हो।
ग्राहकहरूले उनीहरूको अनुप्रयोग र उत्पादनहरूसँग सम्बन्धित जोखिमहरू कम गर्न उपयुक्त डिजाइन र सञ्चालन सुरक्षाहरू प्रदान गर्नुपर्छ।
NXP सेमीकन्डक्टरहरूले ग्राहकको एप्लिकेसन वा उत्पादनहरूमा भएको कुनै कमजोरी वा पूर्वनिर्धारितमा वा ग्राहकको तेस्रो पक्ष ग्राहक(हरू) द्वारा प्रयोग वा प्रयोगमा आधारित कुनै पनि पूर्वनिर्धारित, क्षति, लागत वा समस्यासँग सम्बन्धित कुनै दायित्व स्वीकार गर्दैन।
ग्राहकको तेस्रो पक्ष ग्राहक(हरू) द्वारा एप्लिकेसन र उत्पादनहरू वा एप्लिकेसन वा प्रयोगको पूर्वनिर्धारित हुनबाट बच्न NXP सेमिकन्डक्टर उत्पादनहरू प्रयोग गरी ग्राहकका एप्लिकेसनहरू र उत्पादनहरूका लागि सबै आवश्यक परीक्षणहरू गर्नको लागि ग्राहक जिम्मेवार छ। NXP ले यस सम्बन्धमा कुनै दायित्व स्वीकार गर्दैन

व्यावसायिक बिक्रीका नियम र सर्तहरू: NXP सेमीकन्डक्टर उत्पादनहरू व्यावसायिक बिक्रीको सामान्य नियम र सर्तहरूको अधीनमा बिक्री गरिन्छ, जसमा प्रकाशित गरिएको छ http://www.nxp.com/profile/terms, मान्य लिखित व्यक्तिगत सम्झौतामा अन्यथा सहमत नभएसम्म।
यदि एक व्यक्तिगत सम्झौता निष्कर्षमा पुग्छ भने सम्बन्धित सम्झौताका सर्तहरू मात्र लागू हुनेछन्।
NXP Semiconductors यसद्वारा ग्राहकद्वारा NXP Semiconductors उत्पादनहरू खरिद गर्ने सम्बन्धमा ग्राहकका सामान्य नियम र सर्तहरू लागू गर्न स्पष्ट रूपमा आपत्ति जनाउँछन्।

निर्यात नियन्त्रण: यो कागजात साथै यहाँ वर्णन गरिएको वस्तु(हरू) निर्यात नियन्त्रण नियमहरूको अधीनमा हुन सक्छ।
निर्यातका लागि सक्षम अधिकारीहरूबाट पूर्व प्राधिकरण चाहिन्छ।

गैर-अटोमोटिभ योग्य उत्पादनहरूमा प्रयोगको लागि उपयुक्तता: जबसम्म यो डेटा पानाले स्पष्ट रूपमा यो विशिष्ट NXP सेमीकन्डक्टर उत्पादन अटोमोटिभ योग्य छ भनी बताउँदैन, उत्पादन अटोमोटिभ प्रयोगको लागि उपयुक्त छैन।
यो न त योग्य छ न त मोटर वाहन परीक्षण वा आवेदन आवश्यकताहरु अनुसार परीक्षण। NXP सेमीकन्डक्टरहरूले अटोमोटिभ उपकरण वा अनुप्रयोगहरूमा गैर-अटोमोटिभ योग्य उत्पादनहरूको समावेश र/वा प्रयोगको लागि कुनै दायित्व स्वीकार गर्दैन।
ग्राहकले अटोमोटिभ स्पेसिफिकेशन्स र मापदण्डहरूमा डिजाईन-इन र अटोमोटिभ एप्लिकेसनहरूमा प्रयोगको लागि उत्पादन प्रयोग गरेको घटनामा, ग्राहक (क) ले त्यस्ता अटोमोटिभ अनुप्रयोगहरू, प्रयोग र विशिष्टताहरूका लागि उत्पादनको NXP सेमीकन्डक्टरको वारेन्टी बिना उत्पादन प्रयोग गर्नेछ, र ( b) ग्राहकले NXP सेमीकन्डक्टरको स्पेसिफिकेशनभन्दा बाहिरको अटोमोटिभ एप्लिकेसनका लागि उत्पादन प्रयोग गर्दा यस्तो प्रयोग ग्राहकको आफ्नै जोखिममा हुनेछ, र (c) ग्राहकले NXP सेमिकन्डक्टरहरूलाई कुनै दायित्व, क्षति वा असफल उत्पादन दाबीहरूको लागि पूर्ण क्षतिपूर्ति गर्दछ। NXP सेमीकन्डक्टरको मानक वारेन्टी र NXP सेमीकन्डक्टरहरूको उत्पादन विशिष्टताभन्दा परको मोटर वाहन अनुप्रयोगहरूको लागि उत्पादन।

अनुवादहरू: कागजातको गैर-अंग्रेजी (अनुवादित) संस्करण, त्यस कागजातमा कानुनी जानकारी सहित, सन्दर्भको लागि मात्र हो।
अनुवादित र अंग्रेजी संस्करणहरू बीच कुनै भिन्नता भएमा अंग्रेजी संस्करण प्रबल हुनेछ।

सुरक्षा: ग्राहकले बुझ्दछन् कि सबै NXP उत्पादनहरू अज्ञात कमजोरीहरूको अधीनमा हुन सक्छन् वा स्थापित सुरक्षा मापदण्डहरू वा ज्ञात सीमाहरूको साथ निर्दिष्टीकरणहरूलाई समर्थन गर्न सक्छन्।
ग्राहकको एप्लिकेसन र उत्पादनहरूमा यी कमजोरीहरूको प्रभावलाई कम गर्नको लागि ग्राहक आफ्नो जीवनचक्र भर यसको अनुप्रयोग र उत्पादनहरूको डिजाइन र सञ्चालनको लागि जिम्मेवार छ।
ग्राहकको उत्तरदायित्व ग्राहकका अनुप्रयोगहरूमा प्रयोगको लागि NXP उत्पादनहरूद्वारा समर्थित अन्य खुला र/वा स्वामित्व प्रविधिहरूमा पनि विस्तार हुन्छ।
NXP ले कुनै पनि जोखिमको लागि कुनै दायित्व स्वीकार गर्दछ।
ग्राहकले नियमित रूपमा NXP बाट सुरक्षा अपडेटहरू जाँच गर्नुपर्छ र उचित रूपमा फलोअप गर्नुपर्छ।
ग्राहकले सुरक्षा सुविधाहरू भएका उत्पादनहरू चयन गर्नेछन् जुन उद्देश्यका अनुप्रयोगका नियमहरू, नियमहरू, र मापदण्डहरू पूरा गर्दछ र यसको उत्पादनहरू सम्बन्धी अन्तिम डिजाइन निर्णयहरू लिन्छ र यसको उत्पादनहरू सम्बन्धी सबै कानुनी, नियामक, र सुरक्षा सम्बन्धी आवश्यकताहरूको पालनाको लागि पूर्ण रूपमा जिम्मेवार हुन्छ। NXP द्वारा प्रदान गरिएको कुनै पनि जानकारी वा समर्थनको।
NXP सँग उत्पादन सुरक्षा घटना प्रतिक्रिया टोली (PSIRT) छ (PSIRT@nxp.com मा पुग्न सकिने) जसले NXP उत्पादनहरूको सुरक्षा कमजोरीहरूको अनुसन्धान, रिपोर्टिङ र समाधान जारी गर्ने प्रबन्ध गर्दछ।

NXP BV: NXP BV एक सञ्चालन कम्पनी होइन र यसले उत्पादनहरू वितरण वा बिक्री गर्दैन।

ट्रेडमार्कहरू

सूचना: सबै सन्दर्भ ब्रान्डहरू, उत्पादन नामहरू, सेवा नामहरू, र ट्रेडमार्कहरू तिनीहरूका सम्बन्धित मालिकहरूको सम्पत्ति हुन्।
NXP: वर्डमार्क र लोगो NXP BV का ट्रेडमार्क हुन्
i.MX: NXP BV को ट्रेडमार्क हो

ग्राहक समर्थन

थप जानकारीको लागि, कृपया भ्रमण गर्नुहोस्: http://www.nxp.com
Logo.png

कागजातहरू / स्रोतहरू

NXP AN13948 LVGL GUI अनुप्रयोगलाई स्मार्ट HMI प्लेटफर्ममा एकीकृत गर्दै [pdf] प्रयोगकर्ता पुस्तिका
AN13948 स्मार्ट HMI प्लेटफर्ममा LVGL GUI अनुप्रयोग एकीकृत गर्दै, AN13948, LVGL GUI अनुप्रयोगलाई स्मार्ट HMI प्लेटफर्ममा एकीकृत गर्दै

सन्दर्भहरू

एक टिप्पणी छोड्नुहोस्

तपाईंको इमेल ठेगाना प्रकाशित गरिने छैन। आवश्यक क्षेत्रहरू चिन्ह लगाइएका छन् *