nxp-لوگو

NXP AN14263 لاڳو ڪريو LVGL GUI منهن جي سڃاڻپ فريم ورڪ تي

NXP-AN14263-عمل درآمد-LVGL-GUI-Face-Recognition-on-Frameor-product

پيداوار جي ڄاڻ

وضاحتون

  • پيداوار جو نالو: LVGL GUI فريم ورڪ تي منهن جي سڃاڻپ
  • دستاويز جي نظرثاني: 1 - 19 اپريل 2024
  • لفظ: منهن جي سڃاڻپ، LVGL GUI، فريم ورڪ

پيداوار جي استعمال جون هدايتون

  1. مٿانview
    هي پراڊڪٽ هڪ فريم ورڪ تي منهن جي سڃاڻپ لاءِ AI ۽ ML وژن الگورٿم ماڊل کي فعال ڪري ٿو ته جيئن منهن جي سڃاڻپ واري فنڪشن کي هڪ سادي LVGL GUI ex.ampSLN-TLHMI-IOT بورڊ تي.
  2. فريم ورڪ ختمview
    حل سافٽ ويئر فريم ورڪ آرڪيٽيڪچر جي چوڌاري ٺهيل آهي جنهن ۾ ڊيوائس مينيجرز شامل آهن ڊوائيسز کي منظم ڪرڻ لاء ذميوار آهن، HAL ڊوائيسز بنيادي تفصيلن کي ختم ڪرڻ لاء، ۽ مختلف ڊوائيسز جي وچ ۾ رابطي لاء واقعا.
  3. خاصيتون
    پراڊڪٽ ڪئميرا پري ذريعي منهن جي سڃاڻپ جي فنڪشن کي لاڳو ڪرڻ جي اجازت ڏئي ٿيview GUI اسڪرين تي بٽڻن سان گڏ منهن جي رجسٽريشن، سڃاڻپ، ۽ هٽائڻ لاء. رجسٽر ٿيل چهرو ڊيٽا فليش تي محفوظ ڪيو ويندو آهي a ذريعي file سسٽم.
  4. ايپليڪيشن نوٽ جو مواد
    ايپليڪيشن نوٽ پيش ڪري ٿو LVGL GUI اسڪرين ڪئميرا پري سانview ۽ منهن سان لاڳاپيل عملن لاءِ بٽڻ. اهو ڊولپرز کي فريم ورڪ کي سمجهڻ ۾ مدد ڪري ٿو ۽ مهيا ڪيل اڳوڻي استعمال ڪندي منهن جي سڃاڻپ کي ڪيئن لاڳو ڪجيampلي.

مٿانview

NXP SLN-TLHMI-IOT نالي هڪ حل ڊولپمينٽ کٽ شروع ڪئي آهي جيڪا سمارٽ HMI ايپليڪيشنن تي ڌيان ڏئي ٿي. اهو هڪ NXP i.MX RT117H MCU تي لاڳو ڪيل ML وژن، آواز، ۽ گرافڪس UI سان سمارٽ HMI کي قابل بنائي ٿو. SDK جي بنياد تي، حل سافٽ ويئر فريم ورڪ نالي ھڪڙي ڊيزائن تي ٺاھيو ويو آھي جيڪو لچڪدار ڊيزائن ۽ وژن ۽ آواز جي ڪمن جي حسب ضرورت کي سپورٽ ڪري ٿو. صارفين کي سافٽ ويئر پليٽ فارم کي بهتر استعمال ڪرڻ ۾ مدد ڏيڻ لاء، ڪجهه بنيادي دستاويز مهيا ڪيا ويا آهن، مثال طورampلي، سافٽ ويئر ڊولپمينٽ صارف گائيڊ. ھدايت ڪندڙ ايپليڪيشنن جي بنيادي سافٽ ويئر ڊيزائن ۽ آرڪيٽيڪچر کي متعارف ڪرايو آھي جيڪو حل جي سڀني حصن کي ڍڪيندو آھي جنھن ۾ فريم ورڪ شامل آھي ڊولپرز کي SLN-TLHMI-IOT استعمال ڪندي انھن جي ايپليڪيشنن کي وڌيڪ آساني سان ۽ موثر طريقي سان لاڳو ڪرڻ ۾ مدد ڏيڻ لاءِ.
حل ۽ لاڳاپيل دستاويز بابت وڌيڪ تفصيل لاءِ، دورو ڪريو web NXP EdgeReady Smart HMI حل جو صفحو i.MX RT117H جي بنياد تي ايم ايل ويزن، وائيس، ۽ گرافڪ UI سان. بهرحال، اهو اڃا تائين آسان ناهي ڊولپرز لاءِ انهن بنيادي هدايتن جي حوالي سان انهن جي سمارٽ HMI ايپليڪيشنن کي لاڳو ڪرڻ. ايپليڪيشن نوٽس جو هڪ سلسلو منصوبابندي ڪئي وئي آهي ته جيئن فريم ورڪ تي قدم قدم تي ترقي جي مطالعي ۾ مدد ڪن. هي ايپليڪيشن نوٽ لاڳو ٿيل LVGL GUI ڪئميرا پري تي ٻڌل آهيview فريم ورڪ تي (دستاويز AN14147). هي ايپليڪيشن نوٽ بيان ڪري ٿو ته فريم ورڪ تي منهن جي سڃاڻپ لاءِ AI ۽ ML ويزن الگورٿم ماڊل کي ڪيئن چالو ڪيو وڃي ته جيئن ڪئميرا پري ذريعي منهن جي سڃاڻپ جي فنڪشن کي لاڳو ڪيو وڃي.view GUI اسڪرين تي هڪ سادي LVGL GUI سان گڏampSLN-TLHMI-IOT بورڊ تي. درخواست نوٽ ۾، اڳوڻيample پيش ڪري ٿو LVGL GUI اسڪرين هڪ ڪئميرا پري سانview ۽ منهن جي رجسٽريشن، سڃاڻڻ ۽ هٽائڻ لاءِ ڪجهه بٽڻ. رجسٽرڊ منهن جي ڊيٽا کي ٿوري ذريعي فليش تي ذخيرو ٿيل آهي file سسٽم.

هڪ اعلي سطح تي، ايپليڪيشن نوٽ هيٺ ڏنل مواد تي مشتمل آهي:

  • فريم ورڪ تي منهن جي سڃاڻپ جي خصوصيت کي فعال ڪريو.
  • ذريعي فريم ورڪ تي منهن ڊيٽابيس سپورٽ شامل ڪريو file فليش تي سسٽم.
  • LVGL GUI ايپ لاڳو ڪريو. مٿين تعارفن ذريعي، هي دستاويز ڊولپرز کي مدد ڪري ٿو:
  • سمجھو فريم ورڪ ۽ سمارٽ HMI حل سافٽ ويئر وڌيڪ گہرا.
  • LVGL GUI ايپ سان فريم ورڪ تي انهن جي AI ۽ ML منهن جي سڃاڻپ کي ترقي ڪريو.

فريم ورڪ ختمview
حل سافٽ ويئر بنيادي طور تي فريم ورڪ فن تعمير جي استعمال جي چوڌاري ٺهيل آهي جيڪو ڪيترن ئي مختلف حصن مان ٺهيل آهي:

  • ڊوائيس مينيجرز - بنيادي حصو
  • هارڊويئر ايبسٽرڪشن ليئر (HAL) ڊوائيسز
  • پيغام / واقعا

جيئن تصوير 1 ۾ ڏيکاريل آهي، اوورview فريم ورڪ جو ميکانيزم آهي:

ڊوائيس مينيجرز سسٽم پاران استعمال ڪيل ڊوائيسز کي منظم ڪرڻ جا ذميوار آهن. هر ڊيوائس جو قسم (ان پٽ، آئوٽ پٽ، وغيره) جو پنهنجو قسم-مخصوص ڊيوائس مئنيجر هوندو آهي. هڪ ڊيوائس مئنيجر سان گڏ شروع ٿيندڙ ڊوائيسز ان تي رجسٽر ٿيڻ کان پوءِ، اهو انتظار ڪري ٿو ۽ هڪ پيغام چيڪ ڪري ٿو ڊيٽا کي منتقل ڪرڻ لاءِ ڊوائيسز ۽ ٻين مينيجرز کي رجسٽرڊ ڊوائيسز کي شروع ڪرڻ ۽ شروع ڪرڻ کان پوءِ. HAL ڊوائيسز هيٺين سطح جي ڊرائيور ڪوڊ جي چوٽي تي لکيل آهن، ڪيترن ئي بنيادي تفصيلن کي ختم ڪندي ڪوڊ جي سمجھ ۾ اضافو ڪرڻ ۾ مدد ڪن ٿيون.

واقعا هڪ وسيلو آهن جن جي ذريعي معلومات مختلف ڊوائيسز جي وچ ۾ انهن جي مينيجرز ذريعي پهچائي ويندي آهي. جڏهن هڪ واقعو شروع ڪيو ويندو آهي، ڊوائيس جيڪو پهريون ڀيرو حاصل ڪيو آهي اهو واقعو ان جي مينيجر کي ٻڌائي ٿو، پوء ان جي بدلي ۾ اهو ٻين مينيجرز کي اطلاع ڏئي ٿو جيڪو واقعي حاصل ڪرڻ لاء نامزد ڪيو ويو آهي.

NXP-AN14263-Implement-LVGL-GUI Face-Recognition-on-Framewor-fig-(1)

فريم ورڪ جي تعميراتي جوڙجڪ ٽن بنيادي مقصدن تي مبني هئي:

  1. استعمال جي آسان
  2. لچڪدار / پورٽبلٽي
  3. ڪارڪردگي

فريم ورڪ ڊزائين ڪيل آهي مقصد سان مارڪيٽ ۾ وقت کي تيز ڪرڻ لاءِ ويزن ۽ ٻين مشين لرننگ ايپليڪيشنن لاءِ. مارڪيٽ ۾ تيز وقت کي يقيني بڻائڻ لاء، اهو ضروري آهي ته سافٽ ويئر پاڻ کي سمجهڻ ۽ تبديل ڪرڻ آسان آهي. هن مقصد کي ذهن ۾ رکندي، فريم ورڪ جي فن تعمير کي تبديل ڪرڻ آسان آهي بغير ڪنهن پابندي جي، ۽ ڪارڪردگي جي قيمت تي اچڻ کان سواء.
فريم ورڪ بابت وڌيڪ تفصيل لاءِ، ڏسو Smart HMI سافٽ ويئر ڊولپمينٽ يوزر گائيڊ (دستاويز MCU-SMHMI-SDUG).

لائيٽ ۽ ورسٽائل گرافڪس لائبريري (LVGL)
LVGL (لائيٽ ۽ ورسٽائل گرافڪس لائبريري) هڪ مفت ۽ اوپن سورس گرافڪس لائبريري آهي جيڪا هر شي مهيا ڪري ٿي جيڪا توهان کي استعمال ڪرڻ ۾ آسان گرافڪ عناصر، خوبصورت بصري اثرات ۽ گهٽ ميموري فوٽ پرنٽ سان ايمبيڊڊ GUI ٺاهڻ جي ضرورت آهي.

GUI ھدايت ڪندڙ
GUI گائيڊر NXP کان هڪ صارف دوست گرافڪ يوزر انٽرفيس ڊولپمينٽ ٽول آهي جيڪو اوپن سورس LVGL گرافڪس لائبريري سان اعليٰ معيار جي ڊسپليز جي تيزيءَ سان ترقي ڪري ٿو. GUI گائيڊر جو ڊريگ ۽ ڊراپ ايڊيٽر LVGL جي ڪيترن ئي خاصيتن کي استعمال ڪرڻ آسان بڻائي ٿو جهڙوڪ ويجيٽس، اينيميشنز ۽ اسٽائلز کي GUI ٺاهڻ لاءِ گهٽ ۾ گهٽ يا بغير ڪوڊنگ جي.

هڪ بٽڻ جي ڪلڪ سان، توهان پنهنجي ايپليڪيشن کي نقلي ماحول ۾ هلائي سگهو ٿا يا ان کي ٽارگيٽ پروجيڪٽ ڏانهن برآمد ڪري سگهو ٿا. GUI Guider مان ٺاهيل ڪوڊ آساني سان توھان جي پروجيڪٽ ۾ شامل ڪري سگھجن ٿا، ترقي جي عمل کي تيز ڪرڻ ۽ توھان کي اجازت ڏئي ٿو ته توھان جي ايپليڪيشن ۾ ايمبيڊڊ يوزر انٽرفيس شامل ڪري سگھن. GUI Guider NXP جي عام مقصد ۽ ڪراس اوور MCUs سان استعمال ڪرڻ لاءِ مفت آھي ۽ ڪيترن ئي سپورٽ ٿيل پليٽ فارمن لاءِ بلٽ ان پروجيڪٽ ٽيمپليٽ شامل آھن. GUI گائيڊر تي LVGL ۽ GUI ڊولپمينٽ بابت وڌيڪ سکڻ لاءِ، چيڪ ڪريو لائيٽ ۽ ورسٽائل گرافڪس لائبريري ۽ GUI گائيڊ.

ترقي ماحول

پهريون، تيار ڪريو ۽ تيار ڪريو هارڊويئر ۽ سافٽ ويئر ماحول کي لاڳو ڪرڻ لاء اڳوڻيampلي فريم ورڪ تي.

هارڊويئر ماحول
هارڊويئر ماحول قائم ڪيو ويو آهي اڳوڻي جي تصديق ڪرڻ لاءِampاليزي:

  • NXP i.MX RT117H تي ٻڌل سمارٽ HMI ڊولپمينٽ کٽ (SLN_TLHMI_IOT کٽ)
  • SEGGER J-Link 9-pin Cortex-M اڊاپٽر ۽ V7.84a سان يا ڊرائيور جو نئون ورزن

سافٽ ويئر ماحول
سافٽ ويئر ماحول اڳوڻي ترقي لاء قائم ڪيو ويو آهيampاليزي:

  • MCUXpresso IDE V11.7.0
  • GUI گائيڊر V1.6.1-GA
  • lvgl_gui_camera_preview_cm7 - مثالampلي ڪوڊ آف سيڪنڊ ايپليڪيشن نوٽ جي طور تي ترقي جي بنيادي سافٽ ويئر. تفصيل لاءِ، ڏسو https://mcuxpresso.nxp.com/appcodehub.
  • RT1170 SDK V2.13.0 - ترقي لاءِ ڪوڊ ريسورس جي طور تي.
  • SLN-TLHMI-IOT سافٽ ويئر V1.1.2 - سمارٽ HMI سورس ڪوڊ NXP GitHub مخزن تي جاري ڪيو ويو جيئن ڪوڊ ريسورس ڊولپمينٽ لاءِ. تفصيل لاءِ ڏسو: GitHub – NXP/mcu-smhmi v1.1.2 تي

سافٽ ويئر ماحول جي حاصلات ۽ سيٽ اپ بابت تفصيل لاءِ، ڏسو: SLN-TLHMI-IOT سان شروعات ڪريو.

فريم ورڪ تي ويزن فن تعمير

فريم ورڪ تي وژن آرڪيٽيڪچر تصوير 2 ۾ ڏيکاريل آهي. ويزن الگو HAL (OASIS_HAL) ھيٺ ڏنل عمل آھن:

  • آئوٽ UI HAL مان لاڳاپيل واقعا حاصل ڪرڻ کان پوءِ AI&ML وژن الگورتھم ماڊل ذريعي رجسٽريشن ۽ سڃاڻپ کي منهن ڏيو. الورورٿم ماڊل مان UI HAL جي ٻاھر نڪرڻ واري نتيجن کي مطلع ڪريو.
  • رسائي (شامل ڪريو، حذف ڪريو...) منهن جي خصوصيت ڊيٽابيس جي بنياد تي ٿورڙي file سسٽم UI HAL مان لاڳاپيل واقعا حاصل ڪرڻ کان پوءِ FaceDB HAL جي APIs کي ڪال ڪندي.
  • ڪئميرا HAL کان ڪئميرا ويڊيو فريم جي درخواست ڪريو جڏهن منهن جي رجسٽريشن ۽ سڃاڻپ ڪندي.

NXP-AN14263-Implement-LVGL-GUI Face-Recognition-on-Framewor-fig-(3)

فريم ورڪ تي منهن جي سڃاڻپ کي لاڳو ڪريو

LVGL GUI منهن جي سڃاڻپ example (example بعد ۾ مهيا ڪئي وئي آهي) تي فريم ورڪ تي عمل ڪيو ويو آهي اڳوڻي جي بنياد تيampLVGL GUI ڪئميرا اڳ ۾ لاڳو ڪرڻ جا ڪوڊ ڪوڊview فريم ورڪ تي (دستاويز AN14147).

اڳوڻي ۾ منهن جي سڃاڻپ جي نمائش لاءampلي، GUI ايپ جو بنيادي فنڪشن (ڏسو مکيه اسڪرين شڪل 3 ۾) ٺهيل آهي جيئن هيٺ بيان ڪيو ويو آهي:

  • GUI ايپ کي ٽرگر ڪري ٿو منهن جي رجسٽريشن يا سڃاڻپ واري واقعي کي آئوٽ UI HAL ڏانهن جڏهن بٽڻ دٻايو رجسٽريشن يا سڃاڻپ. ۽ آئوٽ UI HAL صارف کي شامل ڪرڻ جي واقعي جي اطلاع ڏئي ٿو وژن الگو HAL ۾ منهن جي رجسٽريشن ڪامياب ٿيڻ کان پوءِ.
  • GUI ايپ يوزر کي ڊليٽ ڪرڻ جي واقعي کي ٽرگر ڪري ٿي آئوٽ پٽ UI HAL ۾ جڏهن بٽڻ تي ڪلڪ ڪري Delete User کان پوءِ صارف جو چهرو سڃاڻي ٿو.
  • GUI ايپ آئوٽ پٽ UI HAL تي هلندڙ اويس الگو کي روڪڻ جي واقعي کي شروع ڪري ٿي جڏهن بٽڻن ۽ تصويرن کان ٻاهر اسڪرين تي ڪلڪ ڪريو.

NXP-AN14263-Implement-LVGL-GUI Face-Recognition-on-Framewor-fig-(10)

تيار ڪريو سافٽ ويئر پيڪيج کي لاڳو ڪرڻ لاء اڳوڻيampلي.

  • بنيادي سافٽ ويئر ڪلون ڪريو lvgl_gui_camera_preview_cm7. پروجيڪٽ جو نالو ۽ مکيه تبديل ڪريو filelvgl_gui_face_rec_cm7 جو نالو.
  • فريم ورڪ کي سافٽ ويئر ۾ اپڊيٽ ڪرڻ جي ضرورت آهي جيئن فريم ورڪ ڪور لاءِ سورس ڪوڊس 1.1.2 ورزن کان GitHub تي عوامي ٿيڻ شروع ٿي ويا آهن.
  • فريم ورڪ فولڊر کي تبديل ڪريو V1.1.2 جي ڪاپي سان GitHub کان سواءِ files fwk_log.h ۽ fwk_common.h تحت inc\ جيئن اهي ايپليڪيشن نوٽ جي سيريز لاءِ تبديل ڪيا ويا آهن. آپريشن شڪل 4 ۾ ڏيکاريا ويا آهن:NXP-AN14263-Implement-LVGL-GUI Face-Recognition-on-Framewor-fig-(11)
  • فولڊر فريم ورڪ_cm7 کي حذف ڪريو libs گروپ جي تحت ۽ لائبريري فريم ورڪ_cm7 کي هٽايو ۽ ان جي ڳولا جو رستو پروجيڪٽ> پراپرٽيز> C/C++ Build> Settings> Tool Settings> MCU C++ Linker> Libraries ۾ ترتيب ڏنل آهي جڏهن ته ڪور جو سورس ڪوڊ مهيا ڪيو ويو آهي.

فريم ورڪ تي منهن جي سڃاڻپ جي خصوصيت کي فعال ڪريو
منهن جي سڃاڻپ جي خاصيت ايم ايل وژن الگورٿم ماڊل تي ٺهيل آهي هڪ جامد لائبريري جي طور تي مهيا ڪيل - هڪ اويس لائيٽ رن ٽائم لائبريري NXP پاران. لائبريري هڪ ننڍڙي، انتهائي موثر، ڪسٽمائيز، ۽ بهتر ڪيل AI لائبريري آهي. ماڊل ۾ منهن جي سڃاڻپ، منهن جي سڃاڻپ، شيشي جي سڃاڻپ، ۽ زندگي جي سڃاڻپ شامل آهي. اهو بنيادي طور تي API مهيا ڪري ٿو OASISLT_run_extended() منهن جي سڃاڻپ واري پائپ لائن کي هلائڻ لاءِ جڏهن ڪالر کي ايونٽ ڪال بڪس ذريعي نتيجن کي اپڊيٽ ڪرڻ، ۽ ماخذ فريم جي معلومات، ڪال بڪس، ۽ ميموري جي وضاحت ڪرڻ کان پوءِ فيس ڊيٽابيس ڪال بڪس ذريعي ڊيٽابيس ۾ چهرن کي شامل/اپڊيٽ/ڊيٽ ڪريو. هڪ ٻئي API OASISLT_init() کي ڪال ڪندي لائبريري طرفان استعمال ڪيل پول. APIs جي ڪالنگ ۽ ڪال بڪ افعال کي فريم ورڪ جي وژن الگو HAL ۾ لاڳو ڪيو ويو آھي.

وژن الگو ماڊل لائبريري شامل ڪريو

  1. فولڊر رڻ کي نقل ڪريو جنهن ۾ لائبريري ۽ لاڳاپيل هيڊر شامل آهن file سمارٽ HMI\coffee_machine\cm7\libs\ کان فولڊر libs ۾ampلي SW.
  2. سر جي ڳولا جو رستو شامل ڪريو file پروجيڪٽ ۾ > پراپرٽيز > C/C++ تعمير > سيٽنگون > ٽول سيٽنگون > MCU C مرتب ڪندڙ > شامل آهن ۽ MCU C++ مرتب ڪندڙ > شامل آهن: “${workspace_loc:/${ProjName}/libs/oasis/include}”
  3. پراجيڪٽ > پراپرٽيز > C/C++ Build > Settings > MCU C++ Linker > Libraries: liboasis_lite2D_DEFAULT_117f_ae.a “${workspace_loc:/${ProjName}/libs/oasis}” ۽ ميڪرو جي تعريف تي lib ۽ ان جي ڳولا جو رستو شامل ڪريو فيچر کي فعال ڪريو پراجيڪٽ > پراپرٽيز > C/C++ Build > Settings > Tool Settings > MCU C Compiler > Preprocessor and MCU C++ compiler > Preprocessor: SMART_TLHMI_2D

وژن algo HAL کي فعال ڪريو
وژن الگو HAL ڪم ڪرڻ لاءِ وژن الگو ماڊل کي ڊرائيو ڪري ٿو ۽ ان کان واقعا حاصل ڪرڻ کان پوءِ UI آئوٽ HAL کي نتيجن جو جواب ڏئي ٿو.

ان کي فعال ڪرڻ لاء، موجود ساڳي HAL ڊرائيور کي ڪلون ڪريو file جتي هيٺ ڏنل ڪمن کي لاڳو ڪيو ويو آهي:

  • منهن ڊيٽابيس جي عملن ۽ واقعن کي سنڀالڻ جي ڪال بڪ کي لاڳو ڪريو.
  • اويس لائبريري جي APIs کي ڪال ڪري ڪم ڪرڻ لاءِ ويزن الگو کي ڊرائيو ڪريو.
  • صارف جي منهن جي ڊيٽابيس ۽ ايپ ڊيٽابيس تائين رسائي ڪريو (انهي جي ضرورت ناهي اڳ ۾ampلي).
  • واقعا وصول ڪريو ۽ نتيجن کي ٻاھر موڪليو UI HAL ڏانھن.

اڳوڻي لاءِ HAL کي لاڳو ڪرڻ لاءِ اهم ڪمampاهي آهن:

  • موجود HAL ڊرائيور کي ڪلون ڪريو file ۽ لاڳاپيل نالا تبديل ڪريو.
  • ايپ ڊيٽا جي عملن سان لاڳاپيل ڪوڊ هٽايو.
  • تازه ڪاري ڪريو وصفون ۽ ڪمن کي سنڀالڻ لاءِ واقعن کي سنڀالڻ لاءِ آئوٽ UI HAL في ex the exampلي ڊيزائن.
  • نخلستان جي شروعات ۾ گهربل ترتيبن کي شامل ڪريو.

تفصيلي قدم هيٺ ڏنل آهن:

  1. ڪلون hal_vision_algo_oasis_coffeemachine.c. تبديل ڪريو fileنالو hal_vision_algo_oasis_guifacerec.c. ۽ سڀني تارن کي تبديل ڪريو CoffeeMachine ۾ GUIFaceRec سان file.
  2. ايپ ڊيٽابيس سان لاڳاپيل اسٽرنگ coffeedb (ڪيس حساس نه آهي) تي مشتمل ڪوڊز کي هٽايو، مثال لاءِample, #include hal_sln_coffeedb.h.
  3. تبديلي آڻيو فنڪشن HAL_VisionAlgoDev_OasisGUIFaceRec_InputNotify() آئوٽ پٽ UI HAL مان واقعن کي سنڀالڻ لاءِ.
    • ايونٽ جي وصف kEventFaceRecId_RegisterCoffeeSelection کي kEventFaceRecId_RegisterUserFace ۾ تبديل ڪريو ۽ ريٽرڪچر اسٽرنگ regCoffeeSelection کي regGUIFaceRec ۾ تبديل ڪريو ايونٽ هينڊلنگ لاءِ ڊيٽابيس ۾ نئون چهرو فيچر ڊيٽا شامل ڪرڻ لاءِ.
    • اڳوڻي ۾ منهن جي سڃاڻپ جي عملن جي معياري عمل کي ڏيکارڻ لاءample، رياستن جي وصفن سان kEventFaceRecID_OasisSetState جي صورت ۾ سنڀالڻ کي تبديل ڪريو:
      • kOASISLIteState
      • رجسٽريشن kOASISLIteState
      • سڃاڻپ kOASISLIteState
      • روڪيو
  4. مٿي ڏنل قدم ۾ ذڪر ڪيل واقعن جي وصفن کي شامل ڪريو ۽ تبديل ڪريو.
    • هيڊر ڪاپي ڪريو file smart_tlhmi_event_descriptor.h smart HMI\coffee_machine \cm7\source\event_handlers\ کان فولڊر ماخذ ۾ exeampلي SW. اپڊيٽ ڪريو file جيئن هيٺ ڏنل:
    • تبديل ڪريو واقعي جي تعريف kEventFaceRecId_RegisterCoffeeSelection کي kEventFaceRecId_RegisterUserFace ۾ enum قسم _event_smart_tlhmi_id ۾ ۽ ساخت جي اسٽرنگ regCoffeeSelection کي regGUIFaceRec ۾ struct _event_smart_smart. تنهن ڪري، regCoffeeSelection لاءِ struct register_coffee_selection_event_t تبديل ڪريو register_gui_facerec_event_t.
    • ڪافي مشين ايپ لاءِ استعمال ٿيل ٻيو مواد حذف ڪريو، مثال طورample، آواز بابت ڪوڊ لائن: # "hal_event_descriptor_voice.h" شامل ڪريو.
    • هيٺ ڏنل پروجيڪٽ ۾ فريم ورڪ>hal>vision تحت hal_vision_algo.h ۾ enum قسم oasis_lite_state_t ۾ kOASISLiteState_Stopped ۽ kOASISLiteState_Running قسم شامل ڪريو:
      ٽائيپ ڊيف اينم _oasis_lite_state {
      • kOASISLIteState
      • هلندڙ، kOASISLIteState
      • روڪيو ويو، kOASISLIteState
      • سڃاڻپ،
      • kOASISLIteState
      • رجسٽريشن، kOASISLIteState
      • ڊي رجسٽريشن، kOASISLIteState
      • ريموٽ رجسٽريشن، kOASISLIteState
      • شمار
    • مٿي ڏنل اپ ڊيٽ ٿيل struct oasis_lite_state_t استعمال ڪريو struct oasis_state_event_t کي بهتر ڪرڻ لاءِ hal_event_descriptor_face_rec.h ۾ فريم ورڪ>hal> وژن هيٺ پروجيڪٽ ۾: typedef struct _oasis_state_event_t { oasis_lite_state_t state; } oasis_state_event_t;
  5. سڀ kEventInfo_Remote کي kEventInfo_Local ۾ تبديل ڪريو واقعا موڪلڻ لاءِ وژن algo HAL کان ٻين HALs تائين جيڪي ساڳي ڪور تي ھلندا آھن جيئن ڊول-ڪور جي بدران سنگل ڪور استعمال ڪيو ويندو آھي اڳ ۾.ampلي.
  6. OASISLT_init():
    • board_define.h: #define OASIS_RGB_FRAME_WIDTH 800 ۾ وڊيو فريم لاءِ ميڪرو وصفون ۽ ميموري سيڪشن شامل ڪريو
      • # define OASIS_RGB_FRAME_HEIGHT 600
      • # define OASIS_RGB_FRAME_SRC_FORMAT kPixelFormat_YUV1P444_RGB
      • # define OASIS_RGB_FRAME_BYTE_PER_PIXEL 3
      • # define AT_FB_SHMEM_SECTION_ALIGN(var, alignbytes) \
      • __attribute__((سيڪشن(“.bss.$fb_sh_mem,\"aw\",%nobits @"))) var
      • __صفت__((منظم ٿيل(alignbytes)))
    • ميموري اسائنمينٽ کي ترتيب ڏيو مٿين ميموري سيڪشن fb_sh_mem تي پروجيڪٽ > پراپرٽيز > C/C++ Build > MCU سيٽنگون شڪل 5 ۾ ڏيکاريل آهن:NXP-AN14263-Implement-LVGL-GUI Face-Recognition-on-Framewor-fig-(12)
    • lvgl_gui_face_rec_cm7.cpp: AT_NONCACHEABLE_SECTION_ALIGN_DTC (uint8_t g_DTCOPBuf[DTC_OPTIMIZE_BUFFER_SIZE]، 4) ۾ گلوبل متغير g_DTCOPBuf جو اعلان ڪريو؛
    • مٿي ڏنل متغير ۾ استعمال ڪيل وصفون شامل ڪرڻ جاري رکو:
    • مٿي ڏنل حصي کي board_define.h ۾ بيان ڪريو:
      • # define AT_NONCACHEABLE_SECTION_ALIGN_DTC(var، alignbytes) \
      • خاصيت__((سيڪشن(“.bss.$SRAM_DTC_cm7,\"aw\",%nobits@"))) var
      • وصف__((منظم ٿيل(alignbytes)))
    • سر شامل ڪريو file hal_vision_algo.h جنهن ۾ ميڪرو تعريف DTC_OPTIMIZE_BUFFER_SIZE شامل آهي app_config.h ۾ شامل آهي lvgl_gui_face_rec_cm7.cpp.
  7. سيٽ ڪريو متغير s_debugOption کي صحيح طور تي منهن جي سڃاڻپ تي ترقي واري صورتحال ڏيکارڻ لاء.
  8. سر جي ڳولا جو رستو شامل ڪريو fileپروجيڪٽ تي HAL جو ويزن > پراپرٽيز > C/C++ ٺاھڻ > سيٽنگون > ٽول سيٽنگز > MCU C ڪمپائلر > شامل آھن ۽ MCU C++ ڪمپائلر > شامل آھن: “${workspace_loc:/${ProjName}/framework/hal/vision}”
  9. board_define.h ۾ وژن الگو HAL کي فعال ڪرڻ لاءِ ھيٺ ڏنل تعريف شامل ڪريو: #define ENABLE_VISIONALGO_DEV_Oasis_GUIFaceRec

آئوٽ UI HAL کي فعال ڪريو
آئوٽ UI HAL واقعن کي وژن الگو HAL کي اطلاع ڪري ٿو ۽ وژن الگو HAL مان نتيجن جي نتيجن جو جواب ڏئي ٿو. GUI ايپ سان، واقعا عام طور تي ايپ ذريعي شروع ڪيا ويندا آهن ۽ نتيجا ايپ تي ڏيکاريا ويندا آهن.

ان کي فعال ڪرڻ لاء، موجود ساڳي HAL ڊرائيور کي ڪلون ڪريو file جتي عام طور تي هيٺيان ڪم لاڳو ڪيا ويا آهن:

  • منهن جي سڃاڻپ ۽ ڊيٽابيس جي رسائي لاء واقعن کي اطلاع ڏيو.
  • واقعن کي متحرڪ ڪرڻ لاءِ GUI ايپ لاءِ ڪال بڪ لاڳو ڪريو.
  • وژن الگو ماڊل مان نتيجن جي نتيجن کي سنڀاليو.
  • ڏيکاريو عمل ۽ واقعن جا نتيجا UI تي ھلڻ واري پروگريس بار ذريعي ڪنٽرول ٿيل ٽائمرز ۽ منهن گائيڊ مستطيل سان.

اڳوڻي لاءِ HAL کي لاڳو ڪرڻ لاءِ اهم ڪمampهن دستاويز ۾ استعمال ٿيل آهن:

  • موجود HAL ڊرائيور کي ڪلون ڪريو file ۽ لاڳاپيل نالا تبديل ڪريو.
  • ايپ سان لاڳاپيل ڪوڊ هٽايو.
  • واقعن جي نوٽيفڪيشن لاءِ افعال کي اپڊيٽ ڪريو ۽ نتيجن جي جوابن جي اڳڪٿي ڪريوampلي ڊيزائن.
  • GUI ايپ لاءِ ڪال بڪ شامل ڪريو واقعن کي ٽرگر ڪرڻ لاءِ.

تفصيلي قدم هيٺ ڏنل آهن:

  1. ڪلون hal_output_ui_coffee_machine.c. تبديل ڪريو fileنالو hal_ output_ui_guifacerec.c.
  2. سڀني تارن کي تبديل ڪريو CoffeeMachine ۾ GUIFaceRec سان file.
  3. ايپ سان لاڳاپيل ڪوڊ هٽايو - ڪافي مشين.
    • افعال کي هٽايو WakeUp() ۽ _StandBy() ۽ لاڳاپيل ڪوڊس (شايد اسٽرنگ wake_up ۽ standby جي ڳولا ڪري سگھن ٿا).
    • پري هٽايوview HAL_OutputDev_UiGUIFaceRec_Input Notify().
    • UI_xxx_Callback() ۽ ڪافي مشين جي GUI سان لاڳاپيل اسٽرنگ gui_ ۽ اسڪرين تي مشتمل ڪوڊس کي ختم ڪريو سواءِ gui_set_virtual_face() کان اڳview موڊ خاصيت.
    • ڪيفي مشين ايپ سان لاڳاپيل s_IsWaitingAnotherSelection ۽ s_IsWaitingRegisterSelection سان لاڳاپيل سڀئي ڪوڊ هٽايو.
    • آواز، آڊيو، ۽ ٻولي سان لاڳاپيل ڪوڊ هٽايو. مثال طورampاليزي:
      • #شامل "hal_voice_algo_asr_local.h"،
      • #شامل "hal_event_descriptor_voice.h"
  4. مختلف واقعن جي نوٽيفڪيشن لاءِ، نوان فنڪشن لاڳو ڪريو _OutputManagerNotify()، _SetFaceRec()، _RegisterGUIFaceRec()، ۽ DeregisterGUIFaceRec() فنڪشن جو حوالو ڏيو _StopFaceRec()، _RegisterCoffeeSelection()، ۽ DeregisterCoffeeSelection() ان کان اڳ.
    • _OutputManagerNotify() وژن algo HAL ڏانهن ايونٽ موڪلڻ لاءِ بنيادي ايونٽ آئوٽ پٽ فنڪشن لاڳو ڪري ٿو. هيٺيون فنڪشن ان کي سڏين ٿا انهن جي پنهنجي واقعن کي موڪلڻ لاء.
    • _SetFaceRec() ايونٽ kEventFaceRecID_OasisSetState موڪلي ٿو وژن الگو کي ٽرگر ڪرڻ لاءِ منهن جي رجسٽريشن، سڃاڻڻ ۽ الگو کي روڪڻ لاءِ.
    • _RegisterGUIFaceRec() ايونٽ kEventFaceRecId_RegisterGUIFaceRec موڪلي ٿو جيڪو smart_tlhmi_event_descriptor.h ۾ بيان ڪيو ويو آهي ڊيٽابيس ۾ منهن جي خاصيت واري ڊيٽا کي شامل ڪرڻ لاءِ جڏهن رجسٽريشن ٺيڪ آهي.
    • DeregisterGUIFaceRec() ايونٽ kEventFaceRecID_DelUser موڪلي ٿو ڊيٽابيس مان چهري جي خاصيت واري ڊيٽا کي حذف ڪرڻ لاءِ جڏهن چهري جي سڃاڻپ پاس ڪري ٿي.
  5. لاڳاپيل ڪارناما ڪرڻ لاءِ ڪوڊس کي اپڊيٽ ڪريو بشمول GUI کي ريفريش ڪرڻ لاءِ LVGL GUI ايپ مان APIs کي ڪال ڪري منهن جي رجسٽريشن ۽ سڃاڻپ جي نتيجن جي نتيجن لاءِ فنڪشن _InferComplete_Vision() per the ex.ampجي ڊيزائن. مثال لاءِample, جڏهن منهن جي رجسٽريشن ڪامياب آهي،
    • _FaceRecProcess_Stop () کي ڪال ڪندي پيش رفت ڏيکارڻ بند ڪريو؛
    • _SetFaceRec(kOASISLiteState_Stopped) کي ڪال ڪندي منهن جي رجسٽريشن کي روڪيو؛
    • GUI تي ڪامياب نتيجو ڏيکاريو: gui_show_face_rec_result(kFaceRecResult_OK, s_UserId)؛
    • ڊيٽابيس ۾ منهن جي ڊيٽا کي رجسٽر ڪريو: _RegisterUserFace(s_UserId)؛
  6. واقعن کي سنڀالڻ لاءِ UI ڪال بڪ افعال شامل ڪريو: اڳview, منهن جي رجسٽريشن، سڃاڻپ، ۽ صارف کي حذف ڪرڻ GUI مان شروع ڪيو ويو. مثال طورample, the face registration callback: void UI_Registration_Callback(){ _SetFaceRec(kOASISLiteState_Registration)؛ _FaceRecProcess_Start(); }
    • ۽ شامل ڪريو فنڪشن _FaceRecProcess_Start() ۽ _FaceRecProcess_Stop() مختلف واقعن ۽ نتيجن ۾ پيش رفت ۽ حيثيت ڏيکارڻ لاءِ.
    • ٽائمر ISR ڪال بڪ فنڪشن کي اپڊيٽ ڪريو _SessionTimer_Callback() ڪال ڪندي ٽائم آئوٽ جي ڪيس کي سنڀالڻ لاءِ: gui_show_face_rec_result(kFaceRecResult_TimeOut, s_UserId);
  7. board_define.h ۾ UI output HAL کي فعال ڪرڻ لاءِ ھيٺيون وصفون شامل ڪريو: #define ENABLE_OUTPUT_DEV_UiGUIFaceRec

نوٽيس:
منهن جي سڃاڻپ جي خاصيت کي بهتر طور تي پيش ڪرڻ لاءِ، آئوٽ UI HAL ۾ منهن جي سڃاڻپ جي عمل ۽ نتيجن کي ڏيکارڻ لاءِ فنڪشن رکو. فنڪشن هيٺ بيان ڪيو ويو آهي

  • چهرو گائيڊ مستطيل ڏيکاري ٿو نيرو، ۽ پيش رفت بار ڏيکاري ٿو پيش رفت جڏهن منهن جي رجسٽريشن يا سڃاڻپ شروع ڪندي.
  • جڏهن منهن جي رجسٽريشن ڪامياب ٿئي ٿي ته منهن جي رهنمائي وارو مستطيل ڳاڙهي ڏيکاري ٿو.
  • جڏهن منهن جي سڃاڻپ ڪامياب ٿئي ٿي ته منهن جي رهنمائي وارو مستطيل سائو ڏيکاري ٿو.
  • منهن گائيڊ مستطيل نيري رکي ٿو، ۽ ترقي وارو بار مڪمل ترقي ڏيکاري ٿو جڏهن عمل ٽائمر جي ختم ٿيڻ کان پوء ناڪام ٿئي ٿي. انهي نقطي تي، منهن جي رجسٽريشن يا سڃاڻپ کي روڪيو.

پيش رفت بار ۽ منهن گائيڊ مستطيل پيش ڪيا ويا آهن آئڪن جي طور تي جيڪي وسيلن جي بائنري ۾ ٺهيل آهن file فليش ۾ پروگرام ڪيو وڃي. SDRAM تي آئڪن ڊيٽا ڏانهن اشارو LoadIcons(APP_ICONS_BASE) فنڪشن ۾ سيٽ ڪيو ويو آهي جنهن کي آئوٽ UI HAL ڊيوائس جي شروعات ۾ آئوٽ UI HAL ۾ سڏيو ويندو آهي. ان کي لازمي طور تي فنڪشن لاءِ آئڪن سپورٽ کي لاڳو ڪرڻ گهرجي.

آئڪن جي سپورٽ کي لاڳو ڪريو

  1. LVGL GUI ايپ ۾ استعمال ٿيل تصويرن سان گڏ آئڪن کي گڏ ڪرڻ جو وسيلو ٺاهيو:
    • چار آئڪن هيڊر کي ڪلون ڪريو files process_bar_240x14.h، virtual_face_blue_420x426.h، virtual_face_green_420x426.h، ۽ virtual_face_red_420x426.h سمارٽ HMI کان
      \coffee machine\resource\icons\ to the new فولڊر icons to under the resource فولڊر exampلي SW.
    • چار آئڪن لاء ڳولا جو رستو شامل ڪريو files camera_pre ۾view_resource.txt file ريسورس فولڊر ۾، مثال طورample: icon ../resource/icons/process_bar_240x14.h
    • ڪئميرا_پري تي عمل ڪريوview_resource_build.bat تصويرن ۽ آئڪن جي وسيلن کي ٺاهڻ لاءِ بن پيدا ڪرڻ لاءِ file camera_preview_resource.bin ۽ معلومات file resource_information_table.txt (ڏسو شڪل 6).NXP-AN14263-Implement-LVGL-GUI Face-Recognition-on-Framewor-fig-(13)
  2. SDRAM تي شروعاتي ايڊريس ۽ app_config.h ۾ آئڪن جي سائيز جي وضاحت ڪريو. پتو GUI ايپ جي تصويرن جي اڳيان شروع ٿئي ٿو. معلومات ۾ ماپ ٺاهي وئي آهي file. # define APP_ICONS_BASE (APP_RES_SHMEM_BASE + APP_LVGL_IMGS_SIZE) # define APP_ICONS_SIZE 0x107c40
  3. res_sh_mem نالي ميموري سيڪشن جي تفويض ڪيل سائيز کي اپڊيٽ ڪريو 0x200000 تي ان کي ٻيهر وضاحت ڪندي app_config.h: #define RES_SHMEM_TOTAL_SIZE 0x200000 ۽ لاڳاپيل سيٽنگ پروجيڪٽ > پراپرٽيز > C/C++ Build > MCU سيٽنگون.
  4. مکيه ۾ فنڪشن APP_LoadResource() ۾ Flash کان SDRAM تائين لوڊ ڪيل وسيلن جي ڪل سائيز ۾ آئڪن جي سائيز شامل ڪريو file lvgl_gui_face_rec_cm7.cpp: memcpy((void *)APP_LVGL_IMGS_BASE, pLvglImages, APP_LVGL_IMGS_SIZE + APP_ICONS_SIZE)؛

نوٽيس: منهن جي سڃاڻپ جي خصوصيت کي مڪمل ڪرڻ لاءِ، LVGL GUI ايپ سپورٽ جي ضرورت آهي. آئوٽ پٽ UI HAL ۾ UI ڪال بڪ افعال کي UI اسڪرين مان واقعن کي سنڀالڻ لاءِ LVGL GUI ايپ پاران سڏيو وڃي ٿو. ٻئي طرف، آئوٽ UI HAL UI کي تازه ڪاري ڪرڻ لاءِ LVGL GUI ايپ مان APIs کي سڏي ٿو نتيجو ۽ حالت ڏيکارڻ لاءِ. LVGL GUI ايپ جي ترقي نسبتا آزاد آهي ۽ سيڪشن 4.3 ۾ متعارف ڪرايو ويو آهي.

4.1.5 منهن جي سڃاڻپ لاءِ HAL ڊوائيسز ۽ مئنيجر شروع ڪريو
فعال ٿيل وژن الگو HAL ۽ UI آئوٽ HAL ۽ انهن جا مينيجر مکيه ۾ شروع ڪيا ويا آهن file
lvgl_gui_face_rec_cm7.cpp هيٺ ڏنل فريم ورڪ تي ترقي جي تبديلين جي پٺيان:

  1. سر شامل ڪريو file ڪوڊ لائن شامل ڪندي ٻن HAL مينيجرز سان لاڳاپيل:
    • # شامل ڪريو ”fwk_output_manager.h“
    • #شامل "fwk_vision_algo_manager.h"
  2. HAL ڊوائيسز جو اعلان ڪريو:
    • HAL_VALGO_DEV_DECLARE(OasisGUIFaceRec)؛
    • HAL_OUTPUT_DEV_DECLARE(UiGUIFaceRec)؛
  3. HAL ڊوائيسز کي رجسٽر ڪريو:
    • HAL_VALGO_DEV_REGISTER(OasisGUIFaceRec، ريٽ)؛
    • HAL_OUTPUT_DEV_REGISTER(UiGUIFaceRec، ريٽ)؛
  4. مينيجرز کي شروع ڪريو:
    • FWK_MANAGER_INIT(VisionAlgoManager, ret);
    • FWK_MANAGER_INIT(OutputManager, ret);
  5. مينيجرز شروع ڪريو:
    • FWK_MANAGER_START(VisionAlgoManager, VISION_ALGO_MANAGER_TASK_PRIORITY, ret);
    • FWK_MANAGER_START(Output Manager, OUTPUT_MANAGER_TASK_PRIORITY, ret);
  6. مئنيجر جي ڪمن جي ترجيح کي بيان ڪريو:
    • # بيان ڪريو VISION_ALGO_MANAGER_TASK_PRIORITY 3
    • # define OUTPUT_MANAGER_TASK_PRIORITY 1

فريم ورڪ تي منهن ڊيٽابيس سپورٽ شامل ڪريو
رجسٽرڊ چهرو فيچر ڊيٽا تائين رسائي حاصل ڪئي ويندي آهي منهن جي ڊيٽابيس ۾ ذخيرو ٿيل فليش ذريعي ٿوري file سسٽم. منهن ڊيٽابيس سپورٽ شامل ڪرڻ جا قدم هيٺ بيان ڪيا ويا آهن.

فليش اسٽوريج لاءِ ڊرائيور شامل ڪريو
فليش انٽرفيس کي نقل ڪريو FlexSPI ڊرائيور files fsl_flexspi.c ۽ fsl_flexspi.h، ۽ ڊيٽا انڪرپشن ڊرائيور files fsl_caam.c ۽ fsl_caam.h رستي کان SDK_2_13_0_MIMXRT1170-EVK\devices \MIMRX1176\drivers\ کان اڳ جي ڊرائيور فولڊر ڏانهنampلي SW.

بورڊ جي سطح جي حمايت شامل ڪريو

  1. فليش ڊيوائس لاءِ استعمال ٿيل FlexSPI جون وصفون شامل ڪريو بورڊ تي بورڊ ۾:
    • # define BOARD_FLEXSPI FLEXSPI1
    • # define BOARD_FLEXSPI_CLOCK kCLOCK_FlexSpi1
    • # وضاحت ڪريو BOARD_FLEXSPI_AMBA_BASE FlexSPI1_AMBA_BASE
  2. آپريٽرز ۽ ترتيبن کي نقل ڪريو fileفليش ڊيوائس جو s flexspi_nor_flash_ops.c, flexspi_nor_flash_ops.h, sln_flash_config.c, sln_flash_config_w25q256jvs.h, andsln_flash_ops.h رستي جي هيٺان سمارٽ HMI\coffee\coffee بورڊ جو فولڊر exma_ine\coffeeboard exma_ine\coffeeboardampلي SW.
    • C/C++ Build > Settings ۾ ”Exclude Resource from build“ کي چيڪ ڪريو ساڄي پاسي ڪلڪ ڪرڻ کان پوءِ. files جو نالو ۽ پراپرٽيز کي کولڻ لاءِ انھن کي پروجيڪٽ ۾ ٺاھيو وڃي.
  3. شامل هيڊر تبديل ڪريو fileنالو sln_flash_config.h کان sln_flash_config_w25q256jvs.h ۾ sln_flash_config.c ۽ flexspi_nor_flash_ops.h.
  4. ۾ FlexSPI1 گھڙي جو ذريعو سيٽ ڪريو file clock_config.c جو حوالو ڏنو ويو ڪافي مشين ايپ.

اڊاپٽر ۽ وچولي سطح جي سپورٽ شامل ڪريو

  1. ڪاپي ڪريو files sln_flash.c، sln_flash.h، sln_encrypt.c، ۽ sln_encrypt.h جيئن اڊاپٽر ڊرائيورن لاءِ file سسٽم ۽ ايپ سمارٽ HMI\coffee_machine\cm7\source\ جي رستي کان فولڊر ماخذ تائينample. تازه ڪاري ڪريو نئون files:
    • ان کي چيڪ ڪريو "تعمير مان وسيلن کي خارج ڪريو" عمارت لاءِ انھن تي.
    • سڀ شامل هيڊر تبديل ڪريو file نالو sln_flash_config.h کي sln_flash_config_w25q256jvs.h.
  2. فولڊر کي نقل ڪريو fileننڍڙن لاءِ APIs تي مشتمل سسٽم fileسسٽم ۽ HAL ڊرائيور سمارٽ HMI \coffee_machine\cm7\source\ کان اڳ تائينampلي SW. ۽ نئين فولڊر لاء تازه ڪاري:
    • ان کي چيڪ ڪريو "تعمير مان وسيلن کي خارج ڪريو" عمارت لاءِ ان تي.
    • شامل ڪريو رستو شامل ڪريو ان لاءِ پروجيڪٽ سيٽنگن ۾: “${workspace_loc:/${ProjName}/fileسسٽم}"
    • شامل هيڊر تبديل ڪريو file نالو sln_flash_config.h کي sln_flash_config_w25q256jvs.h ۽ fica_definition.h کي app_config.h ۾ file sln_flash_littlefs.h.
  3. فولڊر کي نقل ڪريو littlefs جنهن ۾ وچولي سامان شامل آهي - ٿورو fileسسٽم SDK_2_13_0_ MIMXRT1170-EVK\midleware\ کان اڳ تائينampلي SW. ۽ نئون فولڊر اپڊيٽ ڪريو:
    • ان کي چيڪ ڪريو "تعمير مان وسيلن کي خارج ڪريو" عمارت لاءِ ان تي.
    • پروجيڪٽ سيٽنگن ۾ ان لاءِ شامل رستو شامل ڪريو: “${workspace_loc:/${ProjName}/littlefs}”

HAL ڊرائيور شامل ڪريو 

  • هتي ٻه HAL ڊوائيس آهن - file سسٽم ۽ فيس ڊيٽابيس HAL ڊيٽابيس جي رسائي جي خاصيت لاءِ سپورٽ ڪئي وئي آهي ۽ اهي پهريان ئي فريم ورڪ ۾ بغير ڪنهن تبديلي جي لاڳو ٿيل آهن. board_define.h ۾ ھيٺيون وصفون شامل ڪندي انھن کي فعال ڪريو:
    • ENABLE_FLASH_DEV_Littlefs جي وضاحت ڪريو
    • # ENABLE_FACEDB جي وضاحت ڪريو

۽ اڳوڻي لاءِ منهن جي ڊيٽابيس جو نالو تبديل ڪريوample: # define OASIS_FACE_DB_DIR “oasis_gui_face_rec”

ايپ-سطح جي حمايت شامل ڪريو

  1. مکيه کي اپڊيٽ ڪريو file lvgl_gui_face_rec_cm7.cpp:
    • سر شامل ڪريو file فليش سان لاڳاپيل file سسٽم HAL مئنيجر ڪوڊ لائن شامل ڪندي: # شامل ڪريو "fwk_flash.h"
    • اعلان ڪريو ۽ رجسٽر ڪريو file سسٽم HAL ڊوائيس:
      • HAL_FLASH_DEV_DECLARE(ننڍيون)؛
      • HAL_FLASH_DEV_REGISTER(ننڍيون شيون، ريٽ)؛
        نوٽ: جي file سسٽم HAL ڊيوائس کي رجسٽر ٿيڻ گھرجي ان کان اڳ جو سڀ ڊيوائس مينيجرز کي فنڪشن ۾ شروع ڪيو وڃي APP_InitFramework().
    • APP_BoardInit() ۾ فنڪشن BOARD_ConfigMPU() کي ڪال ڪريو MPU کي ترتيب ڏيڻ لاءِ.
  2. سيٽ ڪريو file ۾ فليش تي سسٽم اسائنمينٽ file app_config.h ۾ استعمال ٿيل ميڪرو وصفن جي وضاحت ڪندي file sln_flash_littlefs.h:
    • FICA_IMG_ جي وضاحت ڪريوFILE_SYS_ADDR (FLASH_IMG_SIZE + RES_SHMEM_TOTAL_SIZE)
    • FICA_ جي وضاحت ڪريوFILE_SYS_SIZE (0x280000)

ترتيبون
ڪجھ فليش سان لاڳاپيل ڪوڊس ڪافي ڪارڪردگي لاءِ SRAM ITC ايريا ۾ جاري ڪيا ويا آھن. فولڊر لنڪ اسڪرپٽ کي نقل ڪريو جنهن ۾ لنڪر ترتيبن تي مشتمل آهي پاٿ سمارٽ HMI\coffee_machine\cm7\ کان اڳampلي SW.

LVGL GUI ايپ لاڳو ڪريو
فريم ورڪ جي بنياد تي LVGL GUI ايپ جي ڊولپمينٽ APIs کي آئوٽ UI HAL مان ڪال ڪري ٿي ۽ APIs کي UI HAL کي آئوٽ ڪرڻ لاءِ مهيا ڪري ٿي (ڏسو سيڪشن 4.1.3 آئوٽ پٽ UI HAL جي عمل درآمد لاءِ).

جڏهن ته، هڪ LVGL GUI ايپ جو تفصيلي عمل درآمد جي ضرورتن ۽ ڊزائين تي منحصر آهي. هن اڳوڻي ۾ GUI ايپampلي سيڪشن 4 جي شروعات ۾ بيان ڪيل طور تي ٺهيل آهي.

هيٺ ڏنل عملن جو تعارف آهي:

  1. ڪسٽمائيز ڪوڊس GUI گائيڊر پاران ڏنل custom.c ۽ custom.h ۾ GUI گائيڊر پروجيڪٽ ۽ ايمبيڊڊ سسٽم پروجيڪٽ جي وچ ۾ انٽرفيس طور لاڳو ڪيا ويا آهن.
    •  نئون فنڪشن شامل ڪريو gui_xxx() جي نالي سان custom.c ۾ ھيٺ ڏنل افعال حاصل ڪرڻ لاءِ:
      • UI کي اپڊيٽ ڪرڻ لاءِ آئوٽ UI HAL ۽ GUI ايپ لاءِ.
      • GUI ايپ لاءِ ايونٽ کي ٽرگر ڪرڻ لاءِ UI ڪالبڪ فنڪشن کي ڪال ڪري آئوٽ پٽ UI HAL مان.
        مثال طورample، نئون فنڪشن gui_event_face_rec_action() UI ڪال بڪ افعال کي ڪال ڪري ٿو منهن جي رجسٽريشن جي واقعن مان هڪ کي سنڀالڻ لاءِ، منهن جي سڃاڻپ ۽ GUI ايپ مان شروع ٿيل صارف کي حذف ڪرڻ جڏهن لاڳاپيل بٽڻ تي ڪلڪ ڪيو ويندو آهي.
        نوٽ: فنڪشن gui_set_virtual_face() اڳي لاءِ آئوٽ UI HAL ۾ سڏيو ويندو آهيview موڊ کي custom.c ۾ لاڳو ڪرڻ جي ضرورت آهي:
    •  ڪلون فنڪشن gui_set_virtual_face() کان سمارٽ HMI\coffee_machine\cm4\custom\custom.c.
    •  ويجيٽ جو نالو تبديل ڪريو home_img_cameraPreview screen_img_camera_pre ڏانهنview فنڪشن ۾.
    •  UI ڪال بڪ افعال کي ساڳيو پروٽوٽائپ سان لاڳو ڪريو سڀني کي آئوٽ پٽ UI HAL ۾ ميڪرو تعريف جي ڪنٽرول هيٺ #ifndef RT_PLATFORM ڪسٽم.c ۾ GUI گائيڊر پروجيڪٽ سان مطابقت رکڻ لاءِ ڇاڪاڻ ته اهي ڪم آئوٽ پٽ UI HAL تي منحصر آهن. شامل ٿيل پليٽ فارم. Custom.c ۾، اهي GUI گائيڊر تي سموليٽر تي ڀاڙين ٿا ۽ ايمبيڊڊ پليٽ فارم تي آزاد آهن. مثال طورample، منهن جي رجسٽريشن ڪال بڪ لاڳو ڪئي وئي آهي هيٺ ڏنل GUI گائيڊ سميلٽر هلائڻ لاءِ: #ifndef RT_PLATFORM void UI_Registration_Callback() { gui_hide_del_user_btn(true)؛ s_InAction = ڪوڙو؛ واپسي؛ }
      نوٽ: سيڪشن 6 جي قدم 4.1.3 ۾ متعارف ٿيل فنڪشن جو ساڳيو پروٽوٽائپ ڏسو
      ميڪرو تعريف RT_PLATFORM MCUXpresso جي پروجيڪٽ سيٽنگن تي ٺھيل آھي جيئن تصوير 7 ۾ ڏيکاريل آھي:NXP-AN14263-Implement-LVGL-GUI Face-Recognition-on-Framewor-fig-(14)
    • UI_xxx_Callback() ۽ gui_xxx() نالي سڀني ڪمن جو اعلان ڪريو custom.h ۾ ۽ شامل ڪريو custom.h شامل ڪريو smart_tlhmi_event_descriptor.h ۾ GUI APIs کي UI آئوٽ HAL ۾ شيئر ڪرڻ لاءِ.
  2. GUI گائيڊر تي GUI ٺاھيو:
    • فولڊر ڪئميرا اڳ ڪلون ڪريوview بيس سافٽ ويئر پيڪيج ۾ gui_guider فولڊر ۾ GUI گائيڊ پروجيڪٽ سافٽ ويئر شامل آهي lvgl_gui_camera_preview_cm7. تبديل ڪريو لاڳاپيل نالو camera_preview to face_rec نئين اڳوڻي لاءِampلي.
    • مٿي ڏنل تازه ڪاري custom.c ۽ ڪسٽم کي نقل ڪريو. h ڏانهن نئون GUI گائيڊر پروجيڪٽ سافٽ ويئر.
    •  GUI Guider تي نئون face_rec پروجيڪٽ کوليو. ھيٺ ڏنل اپڊيٽ ڪريو:
      • نئون بٽڻ شامل ڪريو استعمال ڪندڙ کي حذف ڪريو ليبل ٿيل. شامل ڪريو پرچم پوشیدہ ان ۾ ته جيئن بٽڻ لڪايو ويندو جڏهن GUI ايپ شروع ٿيندي.
      • API gui_event_face_rec_action() کي ڪال ڪرڻ جي ڪوڊ لائن شامل ڪريو مختلف ايونٽ ID پيراميٽر سان "رليز ٿيل" ٽرگر تي سڀني بٽڻن جي ايونٽ سيٽنگ ۾ رجسٽريشن، سڃاڻپ ۽ صارف کي حذف ڪرڻ جي واقعن کي متحرڪ ڪرڻ لاءِ منهن جي رجسٽريشن، منهن جي سڃاڻپ ۽ صارف کي حذف ڪرڻ. شڪل 8 بٽڻ جي رجسٽريشن جي واقعن لاء ڪوڊ ڏيکاري ٿو:NXP-AN14263-Implement-LVGL-GUI Face-Recognition-on-Framewor-fig-(15)
  3. MCUXpresso پروجيڪٽ تي GUI گائيڊر کان ٺاهيل ڪوڊ تازه ڪاري ڪريو.
    • MCUXpresso پروجيڪٽ SW جي ٺاهيل فولڊر ۾ فولڊر تصويرن کانسواءِ مواد کي تبديل ڪريو GUI گائيڊر پروجيڪٽ SW جي ٺاهيل فولڊر ۾ لاڳاپيل تصويرن سان.

نوٽ: مٿي متعارف ڪيل ترميمن بابت وڌيڪ تفصيل لاءِ، چيڪ ڪريو اڳوڻوample سافٽ ويئر تي https://mcuxpresso.nxp.com/appcodehub.

اڳوڻي سان تصديقampلي پروجيڪٽ

اڳوڻي حاصل ڪرڻ لاءample سافٽ ويئر پيڪيج جنهن ۾ هن ايپليڪيشن نوٽ لاءِ وسيلن ۽ اوزار شامل آهن، دورو ڪريو: https://mcuxpresso.nxp.com/appcodehub. اڳوڻي کوليوampلي پروجيڪٽ MCUXpresso IDE تي. .axf ٺاهيو ۽ پروگرام ڪريو file پتي تي 0x30000000 ۽ پروگرام ريسورس بن file camera_preview_resource.bin پتي تي 0x30800000.

LVGL GUI منهن جي سڃاڻپ exampعام طور تي هيٺ ڏنل ڪم ڪري ٿو:

  • اڳيview: پاور اپ سان، ڪئميرا طرفان قبضو ڪيل وڊيو اسٽريمز ڪيمرا اڳ جي مخصوص علائقي تي ڏيکاري ٿوview GUI اسڪرين تي. اسٽيٽس ليبل ڏيکاري ٿو "پريview…“. تفصيل لاءِ، ڏسو شڪل 3. بٽڻ دٻايو استعمال ڪندڙ لڪيل آهي. جڏهن بٽڻ ۽ تصويرن کان ٻاهر واري علائقي کي ڪلڪ ڪندي، اهو اڳي ڏيکاري ٿوview منهن جي رجسٽريشن يا سڃاڻپ واري عمل جي ختم ٿيڻ کان پوءِ مٿي بيان ڪيو ويو.
  • رجسٽريشن:
    • ٽارٽ اپ: جڏهن رجسٽريشن بٽڻ تي ڪلڪ ڪيو ويندو، منهن جي رجسٽريشن شروع ٿيندي. اسٽيٽس ليبل ”رجسٽريشن…“ کي ڊسپلي ڪرڻ لاءِ بدلجي ٿو، منهن جي رهنمائي وارو مستطيل نيرو ڏيکاري ٿو، ۽ ترقي وارو بار پيش رفت ڏيکارڻ شروع ٿئي ٿو. پڪ ڪريو ته صارف جو چهرو رجسٽري لاءِ نيري چهري واري گائيڊ مستطيل ۾ ڏيکاري رهيو آهي.
    • ڪاميابي: اسٽيٽس ليبل ڏيکاري ٿو “رجسٽريشن…OK” ۽ رجسٽرڊ يوزر آئي ڊي نمبر، جيڪڏهن منهن جي رجسٽريشن ڪامياب ٿي وڃي ته منهن جي گائيڊ مستطيل ڳاڙهي ٿي ويندي آهي اڳڀرائي بار تي مڪمل ظاهر ٿيڻ کان اڳ.
    • ناڪامي -> وقت ختم: اسٽيٽس ليبل ڏيکاري ٿو "رجسٽريشن... وقت ختم" جيڪڏهن منهن جي رجسٽريشن اڃا ناڪام ٿي وئي آهي جڏهن ترقي بار تي مڪمل ڏيکاري ٿي.
    • ناڪامي -> نقل: اسٽيٽس ليبل ڏيکاري ٿو "رجسٽريشن... ناڪامي"، منهن جي گائيڊ مستطيل سائي ٿي ويندي آهي جيڪڏهن رجسٽرڊ چهرو تسليم ڪيو وڃي ان کان اڳ جو پيش رفت بار تي مڪمل ظاهر ٿئي.
  • سڃاڻپ:
    • شروعاتي: جڏهن سڃاڻپ بٽڻ تي ڪلڪ ڪيو ويندو آهي، منهن جي سڃاڻپ شروع ٿيندي. اسٽيٽس ليبل بدلجي ٿو ڊسپلي ڪرڻ لاءِ ”ريڪگنيشن…“، منهن گائيڊ مستطيل ڏيکاري ٿو نيرو، ۽ پيش رفت بار پيش رفت ڏيکارڻ شروع ڪري ٿو. پڪ ڪريو ته صارف جو چهرو رجسٽري لاءِ نيري چهري واري گائيڊ مستطيل ۾ ڏيکاريل آهي.
    • ڪاميابي: اسٽيٽس ليبل ڏيکاري ٿو ”سڃاڻپ…ٺيڪ“ ۽ سڃاتل يوزر آئي ڊي نمبر، جيڪڏهن چهري جي سڃاڻپ ڪامياب ٿئي ٿي ته منهن جي رهنمائي وارو مستطيل سائو ٿي ويندو آهي اڳڀرائي بار تي مڪمل ظاهر ٿيڻ کان اڳ. پوائنٽ تي، بٽڻ ظاهر ٿئي ٿو صارف کي حذف ڪريو. ان جو مطلب اهو آهي ته صارف کي ختم ڪرڻ جي اجازت ڏني وئي آهي صرف ان وقت جڏهن اها سڃاڻپ ڪئي وئي آهي.
    • بيماري: اسٽيٽس ليبل ڏيکاري ٿو ”پنهنجي سڃاڻپ… وقت ختم“ جيڪڏهن منهن جي سڃاڻپ اڃا ناڪام ٿئي ٿي جڏهن پيش رفت بار تي مڪمل ڏيکاري ٿي.
  • استعمال ڪندڙ کي ختم ڪريو: جڏهن بٽڻ کي دٻايو ويندو آهي “Delete User”، منهن جي سڃاڻپ ڪامياب ٿيڻ کان پوءِ، اسٽيٽس ليبل بدلجي ويندو آهي “Delete User…OK” ڏيکارڻ لاءِ جنهن ۾ چهرو گائيڊ مستطيل نيرو ٿي ويندو آهي ۽ بار تي مڪمل پيش رفت ڏيکاريندي آهي. بٽڻ کي حذف ڪريو استعمال ڪندڙ ٻيهر لڪيل آهي. سڃاتل چهرو/استعمال ڪندڙ ڊيٽابيس مان ڊهي ويو آهي. ان جو مطلب اهو آهي ته هي چهرو/ استعمال ڪندڙ کي سڃاڻي نه ٿو سگهجي جيستائين ٻيهر رجسٽر ٿيل نه آهي.

دستاويز ۾ سورس ڪوڊ بابت نوٽ ڪريو
Exampهن دستاويز ۾ ڏيکاريل ڪوڊ هيٺ ڏنل ڪاپي رائيٽ ۽ BSD-3-Clause لائسنس آهي:

ڪاپي رائيٽ 2024 NXP وري ورهائڻ ۽ ماخذ ۽ بائنري فارمن ۾ استعمال، ترميم سان يا بغير، اجازت ڏني وئي آھي ته ھيٺيون شرطون پوريون ڪيون وڃن:

  1. ماخذ ڪوڊ جي ٻيهر ورهاست کي لازمي طور تي مٿي ڏنل ڪاپي رائيٽ نوٽس، شرطن جي هن فهرست ۽ هيٺ ڏنل رد ڪرڻ لازمي آهي.
  2. بائنري فارم ۾ ٻيهر ورهائڻ لاءِ مٿي ڏنل ڪاپي رائيٽ نوٽس کي ٻيهر پيش ڪرڻ گهرجي، شرطن جي هن فهرست ۽ دستاويزن ۽/يا ٻيون مواد ۾ هيٺ ڏنل ترديد کي تقسيم سان مهيا ڪيو وڃي.
  3. نه ته ڪاپي رائيٽ هولڊر جو نالو ۽ نه ئي ان جي مدد ڪندڙن جا نالا هن سافٽ ويئر مان نڪتل پروڊڪٽس جي تصديق يا فروغ ڏيڻ لاءِ استعمال ڪري سگهجن ٿا بغير ڪنهن خاص تحريري اجازت کان

هي سافٽ ويئر ڪاپي رائيٽ هولڊرز ۽ تعاون ڪندڙن پاران مهيا ڪيل آهي "جيئن آهي" ۽ ڪنهن به ظاهري يا ضمير وارن وارنٽيز، بشمول، پر ان تائين محدود نه آهي، مضمني وارنٽيز ۽ مالڪن جي مضمر وارنٽي مقصد رد ڪيا ويا آهن. ڪنهن به صورت ۾ ڪاپي رائيٽ هولڊر يا شرڪت ڪندڙ ڪنهن به سڌي، اڻ سڌي، اتفاقي، خاص، مثالي، يا نتيجي ۾ ٿيندڙ نقصانن لاءِ ذميوار نه هوندا (بشمول، پر محدود، غير محفوظ ٿيل يا خدمتون؛ استعمال جو نقصان، ڊيٽا، يا ڪاروبار ۾ رڪاوٽ) بهرحال سبب ۽ ذميواري جي ڪنهن به نظريي تي، چاهي معاهدي ۾ هجي، سخت ذميواري، يا غير قانوني طور تي هن سافٽ ويئر جي استعمال کان ٻاهر ڪنهن به طرح، جيتوڻيڪ جيڪڏهن اهڙي نقصان جي امڪان جي صلاح ڏني.

نظرثاني جي تاريخ

NXP-AN14263-Implement-LVGL-GUI Face-Recognition-on-Framewor-fig-(16)

قانوني ڄاڻ

وصفون
مسودو - هڪ دستاويز تي هڪ مسودو جي حيثيت ظاهر ڪري ٿو ته مواد اڃا تائين اندروني ٻيهر هيٺ آهيview ۽ باضابطه منظوري جي تابع، جنهن جي نتيجي ۾ تبديليون يا اضافو ٿي سگهي ٿو. NXP Semiconductors ڪنهن دستاويز جي مسودي ۾ شامل معلومات جي درستگي يا مڪمليت جي حوالي سان ڪا به نمائندگي يا ضمانت نه ڏيندا آهن ۽ اهڙي معلومات جي استعمال جي نتيجن لاءِ ڪو به ذميوار نه هوندو.

رد ڪرڻ

  • محدود وارنٽي ۽ ذميواري - هن دستاويز ۾ معلومات کي صحيح ۽ قابل اعتماد سمجهيو ويندو آهي. جڏهن ته، NXP سيميڪنڊڪٽرز اهڙي معلومات جي درستگي يا مڪمليت جي حوالي سان ڪا به نمائندگي يا ضمانت نه ٿا ڏين، ظاهر ڪيل يا تقاضا، ۽ اهڙي معلومات جي استعمال جي نتيجن جي ذميواري نه هوندي. NXP Semiconductors هن دستاويز ۾ مواد جي ڪا به ذميواري نه کڻندا آهن جيڪڏهن NXP Semiconductors کان ٻاهر هڪ معلوماتي ماخذ طرفان مهيا ڪيل هجي.
    ڪنهن به صورت ۾ NXP سيميڪنڊڪٽرز ڪنهن به اڻ سڌي، حادثاتي، سزا واري، خاص يا نتيجي ۾ ٿيندڙ نقصانن جا ذميوار نه هوندا (بشمول - بغير ڪنهن حد جي -گم ٿيل منافعو، گم ٿيل بچت، ڪاروباري رڪاوٽ، ڪنهن به پروڊڪٽ کي هٽائڻ يا بدلائڻ يا ٻيهر ڪم ڪرڻ جي چارجن سان لاڳاپيل خرچ) ڇا يا نه ته اهڙا نقصان تشدد (بشمول غفلت)، وارنٽي، معاهدي جي ڀڃڪڙي يا ڪنهن ٻئي قانوني نظريي تي ٻڌل آهن.
    ڪنهن به نقصان جي باوجود جيڪو صارف ڪنهن به سبب جي ڪري برداشت ڪري سگهي ٿو، NXP سيميڪنڊڪٽرز جي مجموعي ۽ مجموعي ذميواري ڪسٽمر جي لاءِ هتي بيان ڪيل مصنوعات جي شرطن ۽ شرطن جي مطابق محدود هوندي NXP سيمي ڪنڊڪٽرز جي تجارتي وڪرو جي شرطن جي مطابق.
  • تبديليون ڪرڻ جو حق — NXP Semiconductors هن دستاويز ۾ شايع ٿيل معلومات ۾ تبديليون ڪرڻ جو حق محفوظ رکي ٿو، بشمول ڪنهن به وقت ۽ بغير ڪنهن اطلاع جي. هي دستاويز هتي جي اشاعت کان اڳ فراهم ڪيل سڀني معلومات کي ختم ڪري ٿو ۽ تبديل ڪري ٿو.
  • استعمال لاء مناسب - NXP Semiconductors پراڊڪٽس ڊزائين ڪيل، مجاز يا وارنٽي نه ڏنيون ويون آھن جيڪي لائف سپورٽ، لائف-نازڪ يا سيفٽي-نازڪ سسٽم يا سامان ۾ استعمال لاءِ موزون ھجن، ۽ نه ئي ايپليڪيشنن ۾ جتي NXP سيمڪانڊڪٽر پراڊڪٽ جي ناڪامي يا خرابيءَ جي نتيجي ۾ مناسب طور تي توقع رکي سگھجي ٿي. ذاتي زخم، موت يا سخت ملڪيت يا ماحولياتي نقصان. NXP Semiconductors ۽ ان جا سپلائرز شامل ڪرڻ ۽/يا NXP Semiconductors پروڊڪٽس جي اهڙين سامان يا ايپليڪيشنن ۾ استعمال جي ذميواري قبول نٿا ڪن ۽ ان ڪري اهڙي شموليت ۽/يا استعمال صارف جي پنهنجي خطري تي آهي.
  • درخواستون - ايپليڪيشنون جيڪي هتي بيان ڪيون ويون آهن انهن مان ڪنهن به پراڊڪٽ لاءِ صرف مثالي مقصدن لاءِ. NXP Semiconductors ڪا به نمائندگي يا وارنٽي نه ٿو ڏئي ته اهڙيون ايپليڪيشنون مخصوص استعمال لاءِ موزون هونديون بغير ڪنهن وڌيڪ جاچ يا ترميم جي.
    گراهڪ NXP Semiconductors پروڊڪٽس استعمال ڪندي انهن جي ايپليڪيشنن ۽ پروڊڪٽس جي ڊيزائن ۽ آپريشن جا ذميوار آهن، ۽ NXP Semiconductors ايپليڪيشنن يا ڪسٽمر پراڊڪٽ ڊيزائن سان ڪنهن به مدد جي ذميواري قبول نٿا ڪن. اها ڪسٽمر جي واحد ذميواري آهي ته اهو طئي ڪري ته ڇا NXP Semiconductors پراڊڪٽ مناسب ۽ مناسب آهي گراهڪ جي ايپليڪيشنن ۽ پروڊڪٽس جي منصوبابندي لاءِ، گڏوگڏ رٿيل ايپليڪيشن ۽ صارف جي ٽئين پارٽي گراهڪ جي استعمال لاءِ. صارفين کي انهن جي ايپليڪيشنن ۽ شين سان لاڳاپيل خطرن کي گھٽائڻ لاء مناسب ڊيزائن ۽ آپريٽنگ حفاظت فراهم ڪرڻ گهرجي. NXP Semiconductors ڪنهن به ڊفالٽ، نقصان، قيمت يا مسئلي سان لاڳاپيل ڪنهن به ذميواري کي قبول نه ڪندا آهن جيڪي ڪسٽمر جي ايپليڪيشنن يا پروڊڪٽس ۾ ڪنهن به ڪمزوري يا ڊفالٽ تي ٻڌل آهن، يا صارف جي ٽئين پارٽي گراهڪ طرفان استعمال يا استعمال. ڪسٽمر ذميوار آهي NXP Semiconductors پراڊڪٽس استعمال ڪندي ڪسٽمر جي ايپليڪيشنن ۽ پروڊڪٽس لاءِ سڀ ضروري ٽيسٽ ڪرڻ لاءِ ته جيئن ايپليڪيشنن ۽ پروڊڪٽس يا ايپليڪيشن جي ڊفالٽ کان بچڻ لاءِ يا صارف جي ٽئين پارٽي گراهڪ(ز) پاران استعمال ڪيو وڃي. NXP ان سلسلي ۾ ڪا به ذميواري قبول نٿو ڪري.
  • تجارتي وڪرو جا شرط ۽ شرط — NXP Semiconductors پراڊڪٽس وڪرو ڪيا وڃن ٿا تجارتي وڪري جي عام شرطن ۽ شرطن جي تابع، جيئن شايع ٿيل https://www.nxp.com/profile/شرط، جيستائين ٻي صورت ۾ صحيح لکيل انفرادي معاهدي ۾ اتفاق نه ڪيو وڃي. ان صورت ۾ جڏهن هڪ فرد معاهدو ڪيو ويو آهي صرف لاڳاپيل معاهدي جا شرط ۽ شرط لاڳو ٿيندا. NXP Semiconductors ھتي واضح طور تي ڪسٽمر پاران NXP Semiconductors پروڊڪٽس جي خريداري جي حوالي سان ڪسٽمر جي عام شرطن ۽ شرطن کي لاڳو ڪرڻ تي اعتراض ڪن ٿا.
  • برآمد ڪنٽرول - ھي دستاويز ۽ ھتي بيان ڪيل شيون (ص) برآمد ڪنٽرول ضابطن جي تابع ٿي سگھي ٿي. ايڪسپورٽ کي قابل اختيار اختيارين کان اڳواٽ اجازت جي ضرورت هجي.
  • غير گاڏين جي قابل مصنوعات ۾ استعمال لاء مناسب - جيستائين هي دستاويز واضح طور تي بيان ڪري ٿو ته هي مخصوص NXP Semiconductors پراڊڪٽ آٽوميٽڪ قابل آهي، پراڊڪٽ گاڏين جي استعمال لاءِ مناسب ناهي. اهو نه ته قابل آهي ۽ نه ئي آزمائشي آٽوميٽڪ ٽيسٽنگ يا ايپليڪيشن گهرجن جي مطابق. NXP Semiconductors شامل ڪرڻ ۽/يا غير آٽوميٽڪ قابل پراڊڪٽس جي استعمال جي ذميواري قبول نه ڪندا آهن آٽوميٽڪ سامان يا ايپليڪيشنن ۾.
    ان صورت ۾ ته گراهڪ پراڊڪٽ کي ڊيزائين لاءِ استعمال ڪري ٿو ۽ آٽوميٽڪ ايپليڪيشنن ۾ آٽو موٽر جي وضاحتن ۽ معيارن لاءِ استعمال ڪري ٿو، گراهڪ (a) پراڊڪٽ کي NXP Semiconductors وارن وارنٽي کان سواءِ استعمال ڪندو پراڊڪٽ جي اهڙين آٽوميٽڪ ايپليڪيشنن، استعمال ۽ وضاحتن لاءِ، ۽ ( b) جڏهن به گراهڪ پراڊڪٽ استعمال ڪندو آٽوموٽو ايپليڪيشنن لاءِ NXP Semiconductors جي وضاحتن کان ٻاهر ته جيئن استعمال صرف صارف جي پنهنجي خطري تي هوندو، ۽ (c) گراهڪ مڪمل طور تي NXP سيمڪنڊڪٽرز کي ڪنهن به ذميواري، نقصان يا ناڪام پراڊڪٽ جي دعويٰ لاءِ معاوضو ڏئي ٿو جيڪو صارف جي ڊيزائن ۽ استعمال جي نتيجي ۾ NXP Semiconductors جي معياري وارنٽي ۽ NXP Semiconductors جي پراڊڪٽ جي وضاحتن کان ٻاهر آٽوميٽڪ ايپليڪيشنن لاءِ پراڊڪٽ.
  • ترجما - هڪ دستاويز جو هڪ غير انگريزي (ترجمو ڪيل) نسخو، جنهن ۾ ان دستاويز ۾ قانوني معلومات شامل آهي، صرف حوالي لاءِ آهي. ترجمو ٿيل ۽ انگريزي ورزن جي وچ ۾ ڪنهن به فرق جي صورت ۾ انگريزي ورزن غالب هوندو.
  • سيڪيورٽي - ڪسٽمر سمجھي ٿو ته سڀئي NXP پروڊڪٽس اڻڄاتل خطرن جي تابع ٿي سگھن ٿيون يا سڃاتل حدن سان قائم ڪيل حفاظتي معيارن يا وضاحتن جي مدد ڪري سگھن ٿيون. ڪسٽمر پنهنجي زندگيءَ جي دوران ان جي ايپليڪيشنن ۽ پراڊڪٽس جي ڊيزائن ۽ آپريشن لاءِ ذميوار هوندو آهي ته جيئن صارف جي ايپليڪيشنن ۽ پروڊڪٽس تي انهن ڪمزورين جو اثر گهٽجي. ڪسٽمر جي ذميواري ٻين کليل ۽/يا پراپرائيٽري ٽيڪنالاجيز تائين به وڌي ٿي جيڪا NXP پروڊڪٽس جي مدد سان ڪسٽمر جي ايپليڪيشنن ۾ استعمال لاءِ. NXP ڪنهن به خطري جي ذميواري قبول نه ڪندو آهي. ڪسٽمر کي باقاعدي NXP کان سيڪيورٽي اپڊيٽ چيڪ ڪرڻ گهرجي ۽ مناسب طريقي سان پيروي ڪرڻ گهرجي. ڪسٽمر حفاظتي خصوصيتن سان پروڊڪٽس کي چونڊيندو جيڪي قاعدن، ضابطن ۽ ارادي واري ايپليڪيشن جي معيارن کي بهترين طور تي پورا ڪن ۽ ان جي پروڊڪٽس جي حوالي سان حتمي ڊيزائن جا فيصلا ڪن ۽ ان جي پروڊڪٽس جي حوالي سان سڀني قانوني، ريگيوليٽري، ۽ سيڪيورٽي سان لاڳاپيل گهرجن جي تعميل لاءِ مڪمل طور تي ذميوار آهي، قطع نظر ڪنهن به معلومات يا مدد جي جيڪا شايد NXP پاران مهيا ڪئي وئي هجي.

NXP وٽ پراڊڪٽ سيڪيورٽي حادثن جي جوابي ٽيم (PSIRT) (PSIRT@nxp.com تي دستياب آهي) جيڪا NXP پروڊڪٽس جي سيڪيورٽي خطرن جي تحقيقات، رپورٽنگ، ۽ حل جاري ڪرڻ جو انتظام ڪري ٿي.
NXP B.V. - NXP B.V. هڪ آپريٽنگ ڪمپني ناهي ۽ اها پراڊڪٽس کي ورهائي يا وڪرو نه ڪري ٿي.

ٽريڊ مارڪ
نوٽيس: سڀئي حوالا ڏنل برانڊ، پراڊڪٽ جا نالا، سروس جا نالا، ۽ ٽريڊ مارڪ انهن جي لاڳاپيل مالڪن جي ملڪيت آهن.

اين ايڪس پي - لفظ نشان ۽ لوگو NXP BV جا ٽريڊ مارڪ آھن

AMBA, Arm, Arm7, Arm7TDMI, Arm9, Arm11, Artisan, big.LITTLE, Cordio, CoreLink, CoreSight, Cortex, DesignStart, DynamIQ, Jazelle, Keil, Mali, Mbed, Mbed Enabled, NEON, POP, RealView, SecurCore, Socrates, Thumb, TrustZone, ULINK, ULINK2, ULINK-ME, ULINK-PLUS, ULINKpro, μVision, Versatile — ٽريڊ مارڪ ۽/يا رجسٽرڊ ٽريڊمارڪس آھن Arm Limited (يا ان جي ماتحت ادارن يا ساٿي) آمريڪا ۾ ۽/يا ٻي جاءِ. لاڳاپيل ٽيڪنالاجي ڪنهن به يا سڀني پيٽرن، ڪاپي رائيٽ، ڊيزائن ۽ واپاري رازن جي طرفان محفوظ ٿي سگهي ٿي. سڀ حق محفوظ آهن.

  • i.MX - هڪ ٽريڊ مارڪ آهي NXP BV
  • جي-لنڪ - SEGGER Microcontroller GmbH جو ٽريڊ مارڪ آھي.

Microsoft، Azure، ۽ ThreadX - Microsoft گروپ آف ڪمپنين جا ٽريڊ مارڪ آھن.

مهرباني ڪري آگاهه رهو ته هن دستاويز بابت اهم نوٽيس ۽ هتي بيان ڪيل پروڊڪٽس، سيڪشن 'قانوني ڄاڻ' ۾ شامل ڪيا ويا آهن.

© 2024 NXP BV
وڌيڪ معلومات لاء، مهرباني ڪري دورو ڪريو: https://www.nxp.com

  • ڇڏڻ جي تاريخ: 19 اپريل 2024
  • دستاويز جي سڃاڻپ ڪندڙ: AN14263

FAQ

عبرت: هن پيداوار جو بنيادي مقصد ڇا آهي؟
ج: بنيادي مقصد هڪ سادي LVGL GUI ex سان گڏ هڪ AI ۽ ML ويزن الگورٿم ماڊل استعمال ڪندي منهن جي سڃاڻپ جي فنڪشن کي فعال ڪرڻ آهي.ampSLN-TLHMI-IOT بورڊ تي.

سوال: ڊولپرز هن ايپليڪيشن نوٽ مان ڪيئن فائدو حاصل ڪري سگهن ٿا؟
ج: ڊولپرز سکي سگھن ٿا ته فريم ورڪ تي منهن جي سڃاڻپ کي ڪيئن لاڳو ڪجي قدم بہ قدم مهيا ڪيل استعمال ڪنديampڊيوائس مئنيجرز، HAL ڊوائيسز، ۽ واقعن جي ميکانيزم کي سمجھو.

دستاويز / وسيلا

NXP AN14263 لاڳو ڪريو LVGL GUI منهن جي سڃاڻپ فريم ورڪ تي [pdf] استعمال ڪندڙ ھدايت
AN14263 Framewor تي LVGL GUI منهن جي سڃاڻپ، AN14263 لاڳو ڪريو، فريمور تي LVGL GUI منهن جي سڃاڻپ، فريمور تي LVGL GUI منهن جي سڃاڻپ، فريمور تي منهن جي سڃاڻپ، فريمور تي سڃاڻپ،

حوالو

تبصرو ڇڏي ڏيو

توهان جو اي ميل پتو شايع نه ڪيو ويندو. گهربل فيلڊ نشان لڳل آهن *