NXP AN13948 په سمارټ HMI پلیټ فارم کارونکي لارښود کې د LVGL GUI غوښتنلیک مدغم کول
NXP AN13948 په سمارټ HMI پلیټ فارم کې د LVGL GUI غوښتنلیک مدغم کول

پیژندنه

NXP د SLN-TLHMI-IOT په نوم د حل پراختیا کټ په لاره اچولی دی. دا په سمارټ HMI غوښتنلیکونو تمرکز کوي چې دوه ایپسونه لري - کافي ماشین او لفټ (سمارټ پینل ایپ ډیر ژر راځي).
کاروونکي ته د معلوماتو چمتو کولو لپاره، ځینې اساسي اسناد شامل دي، د مثال لپارهample، د پراختیا کونکي لارښود.
لارښود د غوښتنلیکونو لومړني سافټویر ډیزاین او جوړښت معرفي کوي چې د حل ټولې برخې پوښي.
پدې برخو کې بوټلوډر، چوکاټ، او د HAL ډیزاین شامل دي ترڅو د پراختیا کونکو سره مرسته وکړي چې د SLN-TLHMI-IOT په کارولو سره خپل غوښتنلیکونه په اسانۍ او مؤثره توګه پلي کړي.

د اسنادو او حل په اړه د نورو معلوماتو لپاره، لیدنه وکړئ: NXP EdgeReady سمارټ HMI حل د i.MX RT117H پر بنسټ د ML ویژن، غږ او ګرافیکي UI سره.

په هرصورت، پیژندنه په نظرونو او بنسټیز کارونې تمرکز کوي. د چوکاټ پراساس د سافټویر موافقت له امله ، دا لاهم د پراختیا کونکو لپاره اسانه ندي چې پوه شي چې څنګه د دوی غوښتنلیکونه پلي کړي.
د پرمختګ ګړندي کولو لپاره ، اضافي لارښودونو ته اړتیا ده ترڅو د لویو برخو پلي کولو څرنګوالی معرفي کړي (د مثال لپارهample، LVGL GUI، لید، او غږ پیژندنه) ګام په ګام.
د مثال لپارهample، پیرودونکي باید خپل 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 ډیری ځانګړتیاو کارول اسانه کوي. پدې ب featuresو کې ویجټونه ، متحرکات او سټایلونه شامل دي ترڅو لږترلږه یا هیڅ کوډ کولو سره GUI رامینځته کړي.
د یوې تڼۍ په کلیک کولو سره، تاسو کولی شئ خپل غوښتنلیک په سمول شوي چاپیریال کې پرمخ بوځي یا د هدف پروژې ته صادر کړئ.
د GUI لارښود څخه رامینځته شوی کوډ په اسانۍ سره ستاسو په پروژه کې اضافه کیدی شي ، د پراختیا پروسه ګړندۍ کوي او تاسو ته اجازه درکوي په بې ساري ډول ستاسو غوښتنلیک ته د ایمبیډ شوي کارونکي انٹرفیس اضافه کړئ.
د GUI لارښود د NXP عمومي هدف او کراس اوور MCUs سره کارولو لپاره وړیا دی او د ډیری ملاتړ شوي پلیټ فارمونو لپاره جوړ شوي پروژې ټیمپلیټونه پکې شامل دي.
د 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 څخه دمخه په نسخو کې بګ د ملټي کور پروژې مناسب جوړونې ته اجازه نه ورکوي.
    نو ځکه، نسخه 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 پخوانیampد تولید لپاره خورا اسانه دی: د نوي شوي LVGL کتابتون V8.3.2 او د بورډ ټیمپلیټ سره د MIMXRT1176xxxxx په توګه د پروژې رامینځته کولو لپاره ، د GUI لارښود کارونکي لارښود ته مراجعه وکړئ (سند ګویډیروګ).
شکل 1 د پروژې ترتیبات ښیي.

یادونه: د پینل ډول باید غوره شي، لکه څنګه چې په 1 شکل کې په سور بکس کې ښودل شوي، لکه څنګه چې دا په اوسني پرمختیایي بورډ کې کارول کیږي.

د پروژې رامینځته کولو وروسته ، سمیلیټر چل کړئ ترڅو اړوند LVGL GUI کوډونه رامینځته کړي او پروژه هم جوړه کړي.
تاسو کولی شئ د GUI پخوانی اغیز وګورئampپه سمیلیټر کې.

شکل 1. په GUI لارښود کې د GUI پروژې تنظیم کول
د پروژې ترتیب

خپله پروژه په سمارټ HMI کې جوړه کړئ
یادونه: لومړی، خپله پروژه په MCUXpresso IDE کې جوړه کړئ.

د LVGL GUI example جوړ شوی دی، دا کولی شي اصلي هدف ته لاړ شي ترڅو دا ستاسو د GUI غوښتنلیک پلي کولو لپاره د MCUXpresso پروژې په سمارټ HMI سافټویر پلیټ فارم کې مدغم کړي.
ساده او ګړندۍ میتود د سمارټ HMI پلیټ فارم کې وړاندې شوي اوسني غوښتنلیک پروژه کلون کول دي.
د لفټ ایپ د کلون شوي سرچینې په توګه غوره انتخاب دی ځکه چې دا ساده پلي کول لري.

د خپلې پروژې د جوړولو لپاره، لاندې مرحلې تعقیب کړئ:

  1. د GitHub څخه په کلون شوي سمارټ HMI سرچینې کوډ کې د "لفټ" فولډر کاپي او پیسټ کړئ. خپل نوم یې بدل کړئ.
    د دې لپاره پخوانیample، موږ د GUI پخواني نوم په تعقیب، "slider_progress" غوره کړی دیample.
  2. په "slider_progress" فولډر کې، د "lvgl_vglite_lib" فولډر داخل کړئ چې د LVGL GUI پروژه لري.
  3. د پروژې اړوند خلاص کړئ files .cproject او .project او ټول تار "لفټ" د خپلې پروژې نوم تار "slider_progress" سره بدل کړئ.
  4. د دواړو پروژو لپاره ورته بدیل ترسره کړئ fileپه "cm4" او "cm7" فولډرونو کې.
    د لفټ پروژې کلون کولو سره خپله پروژه تنظیم کړئ files.
    لکه څنګه چې ښودل شوي شکل 2 ستاسو پروژې اوس په MCUXpresso IDE کې د لفټ پروژې په څیر پرانستل کیدی شي.

شکل 2. په 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 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 example) او د جوړ شوي عکس سرچینې، د لاسرسي معلوماتو په شمول، په سمارټ 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 پلیټ فارم پراساس د mutex کنټرول اضافه کولو لپاره او په فلش کې د عکس ځایونه تنظیم کړئ ، ترمیم کړئ file custom.c په MCUXpresso IDE کې.
    دا ټول د RT_PLATFORM لخوا تعریف شوي.
  5. په MCUXpresso IDE کې د لفټ پروژه خلاص کړئ. د sln_smart_tlhmi_elevator_cm4 > custom لاندې custom.c کې د میکرو تعریف RT_PLATFORM وپلټئ او د کوډ ټولې کرښې د #if تعریف شوي (RT_PLATFORM) څخه #endif ته کاپي کړئ، او په کې یې پیسټ کړئ. file custom.c د sln_smart_tlhmi_slider_progress_cm4 > دود لاندې.
  6. د #else لاندې کوډ لاینونه حذف کړئ چې #else پکې شامل دي ځکه چې دوی د لفټ GUI لپاره کارول کیږي.
    اضافه شوي کوډ لاینونه لاندې پوښي:
    • شامل دي files په لاندې ډول دي:
      کوډ او سرچینې

    • د متغیر اعلامیه په لاندې ډول ده:
      کوډ او سرچینې
    • په custom_init() فنکشن کې د C کوډونه په لاندې ډول دي:
      کوډ او سرچینې
      کوډ او سرچینې
    • د _takeLVGLMutex()، _giveLVGLMutex()، او setup_imgs() لپاره د C کوډونه چیرته چې د ټولو انځورونو ځایونه ټاکل شوي.
  7. په resource_information_table.txt کې د عکسونو لپاره د ځای ترتیب کوډونو سره په فنکشن setup_imgs() کې کوډونه بدل کړئ file (3.3 برخه وګورئ).
    د دې غوښتنلیک یادښت کې، یوازې د عکس سرچینه شتون لري چې په دې ډول ترتیب شوی: _scan_example_597x460.data = (base + 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 د لفټ ایپ لپاره د عکسونو په اړه ټول اصلي تعریفونه حذف کولو وروسته.
    • .ډاټا = _scan_ex حذف کړئample_597x460_map په صف کې ځکه چې .data په فنکشن setup_imgs().
      صف په پای کې په lvgl_images_internal.h کې تعریف شوی fileلکه څنګه چې لاندې ښودل شوي:
      کوډ او سرچینې
      تبصره:
      د ټول انځور لپاره پورته عملیات تکرار کړئ files یو له بل سره که چیرې څو عکسونه شتون ولري 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.
نو ځکه، دا باید دواړه کلون کړي fileد اوسني لفټ غوښتنلیک څخه s او ستاسو د 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 او ټول تارونه "لفټ" د خپل غوښتنلیک سټینګ "SliderProgress" سره بدل کړئ 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. ټول متغیر اعلانونه لرې کړئ، پشمول د enum او array، پرته له هغه چې s_UiSurface او s_AsBuffer[] د عام تطبیق لپاره کارول کیږي.
    6. ټول تارونه "لفټ" د خپل غوښتنلیک سټرینګ "SliderProgress" سره بدل کړئ.
  • دواړه HAL وسیلې فعال او تنظیم کړئ
    1. board_define.h خلاص کړئ file د sln_smart_tlhmi_slider_progress_cm4 > بورډ لاندې.
      ټول تارونه "لفټ" د خپل غوښتنلیک سټرینګ "SliderProgress" سره بدل کړئ file.
      دا د ENABLE_DISPLAY_DEV_LVGLSliderProgress او ENABLE_OUTPUT_DEV_UiSliderProgress تعریفونو له مخې د ښودنې او محصول HAL وسایل فعال او تنظیموي.
    2. lvgl_support.c خلاص کړئ file د sln_smart_tlhmi_slider_progress_cm4 > بورډ لاندې. ټول تارونه "لفټ" د خپل غوښتنلیک سټرینګ "SliderProgress" سره بدل کړئ file.
      دا د کیمرې پری فعالويview په GUI کې د ښودلو چلوونکي په کچه.
  • د HAL دواړه وسایل راجستر کړئ
    د M4 اصلي sln_smart_tlhmi_cm4.cpp خلاص کړئ file لاندې sln_smart_tlhmi_slider_progress_cm4 > سرچینه.
    ټول تارونه "لفټ" د خپل غوښتنلیک سټرینګ "SliderProgress" سره بدل کړئ file.
    دا د لفټ غوښتنلیک پرځای ستاسو د غوښتنلیک لپاره د ښودنې او محصول HAL وسیله راجسټر کوي.
    له همدې امله ، ادغام په سمارټ HMI کې د لومړني LVGL GUI غوښتنلیک چلولو لپاره بشپړ شوی.
    د غوښتنلیک لپاره د نورو اړتیاو پورې اړه لري، د مدغم لومړني غوښتنلیک پراساس نور پلي کول اضافه کیدی شي.

مظاهره

د "slider_progress" غوښتنلیک ډیمو د دې غوښتنلیک یادداشت سره پلي کیږي.

د ډیمو سافټویر کڅوړه له زپ کولو وروسته ، لاندې یې واچوئ files او فولډر په سمارټ HMI سافټویر کې:

  • د file hal_display_lvgl_sliderprpgress.c لاندې [demo]\framework\hal\display\ لارې ته [سمارټ HMI]\ چوکاټ\hal\ ښودنه\
  • د file hal_output_ui_slider_progress.c لاندې [demo]\framework\hal\output\ لارې ته [smart HMI]\framework\hal\output\
  • د [سمارټ HMI] ریښې لارې ته د "slider_progress" فولډر
    پروژې په MCUXpresso IDE کې پرانستل کیدی شي ، لکه د کافي ماشین / لفټ ایپ په څیر چې په سمارټ HMI پلیټ فارم کې وړاندې شوی.
    د پروګرام کولو وروسته جوړ شوی *.axf file پته 0x30100000 او د سرچینې بائنری ته file پته 0x30700000 ته، د LVGL GUI ډیمو کولی شي په سمارټ HMI پرمختیایي بورډ کې په بریالیتوب سره پرمخ بوځي (د سکرین نندارې لپاره 3 شکل وګورئ).
    یادونه: که د MCUXpresso IDE v1.7.0 کاروئ، د CM4 پروژې جوړولو دمخه په ترتیب کې د "منیج لینک سکریپټ" فعال کړئ> MCU C++ Linker> Managed Linker Script.
    شکل 3. LVGL GUI ډیمو ډیمو په سمارټ HMI پرمختیا بورډ کې
    ډیمو ښودنه

د بیاکتنې تاریخ

د بیاکتنې تاریخ پدې سند کې بیاکتنې لنډیز کوي.

جدول 1. د بیاکتنې تاریخ

د بیاکتنې شمیره نیټه د پام وړ بدلونونه
1 ۱۵ جون ۲۰۲۲ ابتدايي خوشې کول

په سند کې د سرچینې کوډ په اړه یادونه وکړئ

Exampپه دې سند کې ښودل شوی کوډ لاندې کاپي حق لري او د BSD-3-Clause جواز لري:
د کاپي حق 2023 NXP بیا توزیع او د سرچینې او بائنری فورمو کې کارول، د تعدیل سره یا پرته، اجازه لري چې لاندې شرایط پوره کړي:

  1. د سرچینې کوډ بیا توزیع باید د کاپي حق پورتنۍ خبرتیا، د شرایطو لیست او لاندې اعلانات وساتي.
  2. په بائنری شکل کې بیا توزیع باید د پورتنۍ کاپي حق خبرتیا بیا تولید کړي ، د شرایطو دا لیست او په اسنادو کې لاندې اعلان او / یا نور توکي باید د توزیع سره چمتو شي.
  3. نه د کاپي رایټ لرونکي نوم او نه هم د دې شریک کونکي نومونه د ځانګړي مخکیني لیکلي اجازې پرته د دې سافټویر څخه ترلاسه شوي محصولاتو تایید یا فروغ لپاره کارول کیدی شي.

دا سافټویر د کاپي حقدارانو او مرسته کونکو لخوا چمتو شوی "لکه څنګه چې دی" او هر ډول څرګند یا ضمیمه تضمینونه، په شمول، مګر محدود نه دي، د خبرتیا او د خبرتیا وړ تضمین شوي تضمین.
په هیڅ صورت کې د کاپي حق لرونکی یا ونډه اخیستونکي به د کوم مستقیم، غیر مستقیم، تصادفي، ځانګړي، مثالي، یا پایله لرونکي زیانونو لپاره مسؤل نه وي (پشمول، مګر محدود نه ساتل کیږي ES؛ د کارونې، ډاټا، یا ګټې ضایع کول؛ یا د سوداګرۍ مداخله) که څه هم د مسؤلیت په هره تیورۍ کې رامینځته کیږي، که په تړون کې وي، سخت مسؤلیت، یا شکنجه (په شمول د غفلت یا بل ډول) له الرې په هر وخت کې د امریکا څخه وروسته له الرې رامینځته کیږي د دې ډول امکاناتو ED
تاوان.

قانوني معلومات

تعریفونه
مسوده:
په سند کې د مسودې حالت ښیي چې مینځپانګه لاهم د داخلي بیاکتنې لاندې دهview او د رسمي تصویب تابع وي ، کوم چې ممکن د تعدیلاتو یا اضافاتو پایله ولري.
د NXP سیمی کنډکټرونه د اسنادو په مسوده کې شامل شوي معلوماتو دقت یا بشپړتیا په اړه هیڅ ډول نمایش یا تضمین نه ورکوي او د داسې معلوماتو کارولو پایلو لپاره هیڅ مسؤلیت نلري.

ددفتروسایل
محدود تضمین او مسؤلیت: په دې سند کې معلومات د اعتبار وړ او دقیق دي.
په هرصورت، د NXP سیمیکمډکټرونه د داسې معلوماتو دقت یا بشپړتیا په اړه هیڅ ډول نمایش یا تضمین نه ورکوي، څرګند یا ضمیمه شوي او د داسې معلوماتو کارولو پایلو لپاره هیڅ مسؤلیت نلري.
د NXP سیمیکنډکټرونه په دې سند کې د مینځپانګې مسؤلیت په غاړه نه اخلي که چیرې د NXP سیمیکمډکټر څخه بهر د معلوماتو سرچینې لخوا چمتو شوي وي.
په هیڅ صورت کې د NXP سیمیکمډکټرونه د کوم غیر مستقیم، حادثې، جزا، ځانګړي یا نتیجه لرونکي زیانونو لپاره مسؤل نه دي (پشمول - پرته له محدودیت څخه - له لاسه ورکړې ګټې، ضایع شوي سپما، د سوداګرۍ خنډ، د کوم محصول یا د بیا کار کولو لګښتونو لرې کولو یا بدلولو پورې اړوند لګښتونه) که نه. یا نه دا ډول زیانونه د شکنجې (د غفلت په ګډون)، تضمین، د تړون سرغړونې یا کومې بلې قانوني نظریې پراساس دي.
د هر ډول زیانونو سره سره چې پیرودونکي ممکن د هر دلیل له امله پیښ شي، د NXP سیمیکمډکټرونو مجموعي او مجموعي مسؤلیت د پیرودونکي په وړاندې د هغه محصولاتو لپاره چې دلته تشریح شوي باید د NXP سیمیکمډکټرونو د سوداګریز پلور د شرایطو او شرایطو سره سم محدود وي.

د بدلونونو حق: د NXP سیمی کنډکټر حق لري چې په دې سند کې خپاره شوي معلوماتو کې بدلونونه راولي، په شمول د محدودیت مشخصاتو او د محصول توضیحاتو پرته، هر وخت او پرته له خبرتیا.
دا سند د خپریدو دمخه چمتو شوي ټول معلومات ځای په ځای کوي او ځای په ځای کوي.

د استعمال لپاره مناسبیت: د NXP سیمیکمډکټر محصولات ډیزاین ، مجاز یا تضمین ندي چې د ژوند ملاتړ ، د ژوند مهم یا خوندیتوب مهم سیسټمونو یا تجهیزاتو کې د کارولو لپاره مناسب وي ، او نه هم په غوښتنلیکونو کې چیرې چې د NXP سیمیکمډکټر محصول ناکامي یا نیمګړتیا په معقول ډول تمه کیدی شي شخصي پایله ولري. ژوبل، مړینه یا شدید ملکیت یا چاپیریال زیان.
د NXP سیمیکنډکټرونه او د هغې عرضه کونکي په داسې تجهیزاتو یا غوښتنلیکونو کې د NXP سیمیکمډکټر محصولاتو شاملولو او/یا کارولو لپاره هیڅ مسؤلیت نه مني او له همدې امله دا ډول شاملول او/یا کارول د پیرودونکي په خپل خطر کې دي.

غوښتنلیکونه: هغه غوښتنلیکونه چې دلته د دې محصولاتو لپاره تشریح شوي یوازې د مثالي موخو لپاره دي.
د NXP سیمیکمډکټرونه هیڅ استازیتوب یا تضمین نه کوي چې دا ډول غوښتنلیکونه به د نورو ازموینې یا ترمیم پرته د ټاکل شوي کارونې لپاره مناسب وي.
پیرودونکي د NXP Semiconductors محصولاتو په کارولو سره د خپلو غوښتنلیکونو او محصولاتو ډیزاین او عملیاتو مسؤلیت لري، او د NXP سیمیکمډکټر د غوښتنلیکونو یا پیرودونکي محصول ډیزاین سره د مرستې لپاره هیڅ مسؤلیت نه مني.
دا د پیرودونکي یوازینی مسؤلیت دی چې دا معلومه کړي چې ایا د NXP سیمیکمډکټر محصول د پیرودونکي غوښتنلیکونو او محصولاتو لپاره مناسب او مناسب دی چې پالن شوي، او همدارنګه د پالن شوي غوښتنلیک او د پیرودونکي د دریمې ډلې پیرودونکي کارولو لپاره.
پیرودونکي باید مناسب ډیزاین او عملیاتي محافظتونه چمتو کړي ترڅو د دوی غوښتنلیکونو او محصولاتو پورې اړوند خطرونه کم کړي.
د NXP سیمیکنډکټرونه د کوم ډیفالټ ، زیان ، لګښت یا ستونزې پورې اړوند هیڅ مسؤلیت نه مني چې د پیرودونکي غوښتنلیکونو یا محصولاتو کې د کوم ضعف یا ډیفالټ پراساس وي ، یا د پیرودونکي دریم اړخ پیرودونکي لخوا غوښتنلیک یا کارول.
پیرودونکي د NXP سیمیکمډکټر محصولاتو په کارولو سره د پیرودونکي غوښتنلیکونو او محصولاتو لپاره د ټولو اړینو ازموینو ترسره کولو مسؤلیت لري ترڅو د غوښتنلیکونو او محصولاتو یا غوښتنلیک یا د پیرودونکي د دریمې ډلې پیرودونکي لخوا کارولو څخه مخنیوی وشي. NXP پدې برخه کې هیڅ مسؤلیت نه مني

د تجارتي خرڅلاو شرایط او شرایط: د NXP سیمی کنډکټر محصولات د سوداګریز پلور عمومي شرایطو او شرایطو سره سم پلورل کیږي، لکه څنګه چې په کې خپاره شوي http://www.nxp.com/profile/terms، پرته لدې چې په بل ډول په یوه معتبر لیکلي انفرادي تړون کې موافقه شوې وي.
په هغه صورت کې چې یو انفرادي تړون پای ته رسیږي یوازې د اړوند تړون شرایط او شرایط پلي کیږي.
د NXP سیمیکنډکټرونه دلته په ښکاره ډول د پیرودونکي لخوا د NXP سیمیکمډکټر محصولاتو پیرودلو په اړه د پیرودونکي عمومي شرایطو او شرایطو پلي کولو اعتراض کوي.

د صادراتو کنټرول: دا سند او همدارنګه هغه توکي چې دلته تشریح شوي ممکن د صادراتو کنټرول مقرراتو تابع وي.
صادرات ممکن د وړ چارواکو څخه مخکینۍ اجازې ته اړتیا ولري.

په غیر اتوماتیک وړ محصولاتو کې د کارولو لپاره مناسبیت: پرته لدې چې دا ډیټا شیټ په څرګند ډول وايي چې دا ځانګړي NXP سیمیکمډکټر محصول د موټرو وړ دی ، محصول د موټرو کارولو لپاره مناسب ندی.
دا د موټرو ازموینې یا غوښتنلیک اړتیاو سره سم نه وړ دی او نه ازمول شوی. د NXP سیمیکمډکټرونه د موټرو تجهیزاتو یا غوښتنلیکونو کې د غیر اتومات وړ وړ محصولاتو شاملولو او/یا کارولو لپاره هیڅ مسؤلیت نه مني.
په هغه صورت کې چې پیرودونکی محصول د اتوماتیک غوښتنلیکونو کې د ډیزاین کولو او کارولو لپاره د موټرو مشخصاتو او معیارونو لپاره کاروي ، پیرودونکي (a) باید محصول د دې ډول اتومات غوښتنلیکونو ، کارولو او مشخصاتو لپاره د محصول د 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 په سمارټ HMI پلیټ فارم کې د LVGL GUI غوښتنلیک مدغم کول [pdf] د کارونکي لارښود
AN13948 په سمارټ HMI پلیټ فارم کې د LVGL GUI غوښتنلیک ادغام، AN13948، په سمارټ HMI پلیټ فارم کې د LVGL GUI غوښتنلیک ادغام

حوالې

یو نظر پریږدئ

ستاسو بریښنالیک پته به خپره نشي. اړین ساحې په نښه شوي *