NXP AN13948 LVGL GUI програмыг Smart HMI платформын хэрэглэгчийн гарын авлагад нэгтгэх
NXP AN13948 LVGL GUI програмыг Smart HMI платформд нэгтгэх

Танилцуулга

NXP нь SLN-TLHMI-IOT нэртэй шийдэл боловсруулах иж бүрдлийг гаргасан. Энэ нь кофены машин болон цахилгаан шат (ухаалаг самбарын програм удахгүй гарах болно) гэсэн хоёр програм агуулсан ухаалаг HMI програмуудад анхаарлаа хандуулдаг.
Хэрэглэгчдэд мэдээлэл өгөхийн тулд зарим үндсэн баримт бичгүүдийг оруулсан болно, жишээ ньample, хөгжүүлэгчийн гарын авлага.
Энэхүү гарын авлага нь бүх шийдлийн бүрэлдэхүүн хэсгүүдийг хамарсан програм хангамжийн үндсэн дизайн, архитектурыг танилцуулдаг.
Эдгээр бүрэлдэхүүн хэсгүүд нь SLN-TLHMI-IOT ашиглан програмуудаа илүү хялбар, үр дүнтэй хэрэгжүүлэхэд нь туслах зорилгоор ачаалагч, хүрээ, HAL дизайн зэргийг багтаасан болно.

Баримт бичиг болон шийдлийн талаар дэлгэрэнгүй мэдээлэл авахыг хүсвэл зочилно уу: ML Vision, дуу хоолой, график UI бүхий i.MX RT117H дээр суурилсан NXP EdgeReady Smart HMI шийдэл.

Гэсэн хэдий ч танилцуулга нь санаа, үндсэн хэрэглээнд анхаарлаа хандуулдаг. Хүрээнд суурилсан програм хангамж нь нийцэж байгаа тул хөгжүүлэгчид өөрсдийн програмаа хэрхэн хэрэгжүүлэхээ мэдэхэд амаргүй хэвээр байна.
Хөгжлийг хурдасгахын тулд үндсэн бүрэлдэхүүн хэсгүүдийг (жишээ нь) хэрхэн хэрэгжүүлэх талаар танилцуулах нэмэлт удирдамж шаардлагатайample, LVGL GUI, алсын хараа, дуу хоолой таних) алхам алхмаар.
Жишээ ньample, хэрэглэгчид шийдэлд байгаа одоогийн програмуудаас өөр өөрийн LVGL GUI програмтай байх ёстой.
LVGL GUI-г NXP-ээс өгсөн GUI Guider-ээр хэрэгжүүлсний дараа тэд үүнийг хүрээн дээр суурилсан ухаалаг HMI програм хангамжийн платформд нэгтгэх ёстой.

Энэхүү хэрэглээний тэмдэглэлд хэрэглэгчийн боловсруулсан LVGL GUI програмыг уг хүрээн дээр суурилсан ухаалаг HMI програм хангамжийн платформд хэрхэн нэгтгэх талаар тайлбарласан болно.
Лавлагааны кодуудыг мөн энэ хэрэглээний тэмдэглэлийн хамт үзүүлэв.

Жич: Энэхүү хэрэглээний тэмдэглэл нь GUI Guider програм хангамжийн хэрэгслээр LVGL дээр суурилсан GUI-г хэрхэн хөгжүүлэх талаар тайлбарлаагүй болно.

Дууслааview LVGL болон GUI гарын авлагыг 1.1 болон 1.2-т тайлбарласан болно.

Хөнгөн, олон талт график номын сан
Хөнгөн ба олон талын график номын сан (LVGL) нь үнэгүй, нээлттэй эхийн график номын сан юм.
Энэ нь хэрэглэхэд хялбар график элементүүд, үзэсгэлэнтэй визуал эффектүүд, санах ой багатай суулгагдсан GUI үүсгэхэд шаардагдах бүх зүйлийг хангадаг.

GUI хөтөч
GUI Guider нь NXP-ийн хэрэглэгчдэд ээлтэй график хэрэглэгчийн интерфэйсийг хөгжүүлэх хэрэгсэл бөгөөд нээлттэй эхийн LVGL график сан бүхий өндөр чанартай дэлгэцийг хурдан хөгжүүлэх боломжийг олгодог.
GUI Guider-ийн чирэх, буулгах редактор нь LVGL-ийн олон функцийг ашиглахад хялбар болгодог. Эдгээр функцууд нь виджетүүд, хөдөлгөөнт дүрсүүд болон хамгийн бага кодчилолгүйгээр GUI үүсгэх загваруудыг агуулдаг.
Нэг товчлуур дээр дарснаар та програмаа дууриамал орчинд ажиллуулах эсвэл зорилтот төсөл рүү экспортлох боломжтой.
GUI Guider-ээс үүсгэсэн кодыг таны төсөлд хялбархан нэмж, хөгжүүлэлтийн процессыг хурдасгаж, суулгагдсан хэрэглэгчийн интерфэйсийг өөрийн аппликейшнд саадгүй нэмэх боломжийг олгоно.
GUI Guider нь NXP-ийн ерөнхий зориулалтын болон кроссовер MCU-тай ашиглахад үнэ төлбөргүй бөгөөд дэмжигдсэн хэд хэдэн платформд зориулсан төслийн загваруудыг агуулдаг.
GUI Guider дээрх LVGL болон GUI хөгжүүлэлтийн талаар илүү ихийг мэдэхийг хүсвэл https://lvgl.io/ болон GUI Guider руу зочилно уу.

Хөгжлийн орчин

GUI програмыг ухаалаг HMI платформтой нэгтгэх, хөгжүүлэх орчныг бэлтгэж, тохируулна уу.

Техник хангамжийн орчин

Хөгжүүлсний дараа үзүүлэхэд дараах техник хангамж шаардлагатай.

  • NXP i.MX RT117H дээр суурилсан ухаалаг HMI хөгжүүлэлтийн хэрэгсэл
  • 9 зүү Cortex-M адаптертай SEGGER J-Link

Програм хангамжийн орчин
Энэхүү хэрэглээний тэмдэглэлд ашигласан програм хангамжийн хэрэгслүүд болон тэдгээрийн хувилбаруудыг дараах байдлаар танилцуулав.

  • 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 Guider дээр LVGL GUI програмыг хөгжүүлэх
Дээр дурдсанчлан, GUI Guider дээр LVGL GUI-г хэрхэн хөгжүүлэх талаар энэ програмын тэмдэглэлд онцолсон зүйл биш юм.
Гэхдээ GUI хуучинampл хэрэгтэй.
Тиймээс GUI Guider-д өгсөн Slider Progress нэртэй энгийн GUI загварыг GUI хуучин загвараар сонгосон.ampхурдан тохируулахын тулд.
Slider Progress GUI загвар нь аппликешн дэх зургийн нөөцийг бий болгоход шаардлагатай дүрсийг агуулсан учраас ашиглагддаг.
GUI хуучинample үүсгэхэд маш хялбар: Шинэчлэгдсэн LVGL V8.3.2 номын сан болон MIMXRT1176xxxxx самбарын загвар бүхий төсөл үүсгэхийн тулд GUI Guider Хэрэглэгчийн гарын авлагаас (баримт бичиг) үзнэ үү. GUIGUIDERUG).
Зураг 1-т төслийн тохиргоог харуулав.

Жич: Одоогийн хөгжүүлэлтийн самбар дээр ашиглагдаж байгаа тул 1-р зураг дээрх улаан хайрцагт үзүүлсэн шиг самбарын төрлийг сонгох ёстой.

Төслийг үүсгэсний дараа холбогдох LVGL GUI кодуудыг үүсгэхийн тулд симулятор ажиллуулж, төслийг бас бүтээнэ.
Та өмнөх GUI-ийн нөлөөг шалгаж болноampсимулятор дээр.

Зураг 1. GUI Guider дээрх GUI төслийн тохиргоо
Төслийн тохиргоо

Ухаалаг HMI дээр төслөө үүсгэ
Жич: Эхлээд MCUXpresso IDE дээр төслөө үүсгэ.

LVGL GUI-ийн дараа хуучинample бүтээгдсэн бол энэ нь таны GUI програмыг хэрэгжүүлэхийн тулд MCUXpresso төслийн ухаалаг HMI програм хангамжийн платформд нэгтгэх үндсэн зорилт руу явж болно.
Энгийн бөгөөд хурдан арга бол ухаалаг HMI платформ дээр танилцуулсан одоогийн програмын төслийг хуулбарлах явдал юм.
Лифтийн програм нь энгийн хэрэгжүүлэлттэй тул хувилсан эх сурвалжийн хувьд илүү сайн сонголт юм.

Төслөө үүсгэхийн тулд дараах алхмуудыг дагана уу.

  1. GitHub-аас хуулбарласан ухаалаг HMI эх кодод "лифт" хавтсыг хуулж буулгана уу. Үүнийг өөрийнхөө нэрээр өөрчил.
    Энэ эксample, бид GUI хуучин нэрийг дагаж "slider_progress"-ийг сонгосонample.
  2. "Slider_progress" хавтсанд LVGL GUI төслийг агуулсан "lvgl_vglite_lib" хавтсыг оруулна уу.
  3. Төсөлтэй холбоотой зүйлийг нээнэ үү files .cproject болон .project ба "лифт" гэсэн бүх мөрийг өөрийн төслийн нэрийн "slider_progress" мөрөөр солино.
  4. Төсөлд ижил төстэй орлуулалтыг хий files "cm4" болон "cm7" хавтсанд байна.
    Лифтийн төслийг клончлох замаар төслөө тохируулаарай files.
    Зурагт үзүүлснээр Зураг 2 Таны төслүүдийг MCUXpresso IDE дээр лифтний төсөлтэй ижил аргаар нээх боломжтой.

Зураг 2. MCUXpresso дээрх төслүүдийн тохиргоо
Төслийн тохиргоо

Ухаалаг HMI-ийн нөөцийг бий болго
Ерөнхийдөө GUI-д зургуудыг ашигладаг (дуут сануулгад ашигладаг дуу).
Зураг, дуу чимээг нөөц гэж нэрлэдэг бөгөөд дарааллаар нь флэшээр хадгалдаг. Тэдгээрийг флэш дээр програмчлахын өмнө нөөцийг хоёртын хувилбарт оруулах хэрэгтэй file.
Гол ажил бол лавлах програмын (лифт) нэрийг өөрийнхөөр солих явдал юм.

Үүнийг хийхийн тулд дараах алхмуудыг дагана уу.

  1. slider_progress/resource доор байгаа хувилсан "зураг" хавтсыг устгана уу.
  2. Өөрийн GUI Guider төслийн \generated доор байгаа "зураг" хавтсыг хуулна уу.
  3. Үүнийг slider_progress/resource-ийн доор буулгана уу (Өөрөөр хэлбэл, лифтний апп-н зургуудаас илүү өөрийнхөө зургийг ашиглана уу).
  4. *.mk-г устгана уу file "зураг" хавтсанд байгаа GUI Guider-д ашигладаг.
  5. нэрийг өөрчлөх files elevator_resource.txt, elevator_resource_build.bat болон elevator_resource_build.sh "resource" хавтсанд өөрийн төслийн нэрийн slider_progress_resource.txt, slider_progress_resource_build.bat, болон slider_progress_resource_build.sh.
    Тайлбар:
    • elevator_resource.txt: програмд ​​ашигласан бүх нөөцийн (зураг ба дуу чимээ) зам, нэрийг агуулсан.
    • elevator_resource_build.bat/elevator_resource_build.sh: Windows болон Линукс дээрх нөөцийг зохих ёсоор бүтээхэд ашигладаг.
  6. slider_progress_resource.txt файлыг нээсний дараа file, "elevator" гэсэн бүх мөрийг "slider_progress" гэж солино.
  7. Бүх хуучин зургуудыг устгаад шинэ зургийг өөрийн зургаар нэмнэ үү file нэрс (энд "_scan_example_597x460.c”), жишээлбэл зураг ../../slider_progress/resource/images/_scan_example_597x460.c.
  8. slider_progress_resource.bat-г нээнэ үү file Windows-д зориулсан "elevator" гэсэн бүх мөрийг "slider_progress" гэж солино. Үүнтэй ижил зүйлийг хий file Linux-д зориулсан slider_progress_resource.sh.
  9. Багцыг давхар товшино уу file Windows-д зориулсан slider_progress_resource_build.bat.
  10. Зургийн нөөцийн хоёртын файлыг үүсгэхийн тулд тушаалын цонх гарч ирэх ба автоматаар ажиллана file Флэш дэх зургийн бүх байршил, зургийн нийт байт хэмжээг тохируулах С код агуулсан зургийн өгөгдөл, нөөцийн хандалтын мэдээллийг агуулсан.
    "Нөөцийг үүсгэж дууслаа!" гэсэн мессежийг харуулсны дараа зургийн нөөцийн хоёртын хувилбар file нэртэй slider_progress_resource.bin болон нөөцийн хандалтын мэдээлэл file нэртэй resource_information_table.txt нь "resource" хавтсанд үүсгэгддэг.
    Зургийн хоёртын нөөц 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 код болон нөөцийг нэмнэ үү
Ухаалаг HMI-д ашигладаг LVGL GUI програмын кодууд нь GUI Guider төслийн "захиалгат" болон "үүсгэсэн" хавтсанд байдаг.

Ухаалаг HMI-д код нэмэхийн тулд дараах алхмуудыг дагана уу.

  1. Slider_progress/cm4/custom/ доорх custom.c болон custom.h-г GUI Guider төслийн "custom" хавтсанд байгаа файлуудаар солино уу.
  2. slider_progress/cm4/-аас "үүсгэсэн" фолдеруудыг устгана уу.
    Дараа нь GUI Guider төслөөс "үүсгэсэн" хавтсыг хуулж аваад slider_progress/cm4/ руу буулгана уу.
  3. "Image" болон "mPythonImages" хавтас болон бүх зүйлийг устгана уу files *.mk ба *.py "үүсгэсэн" хавтсанд.
    Дээр дурдсанчлан "зураг" хавтсанд байгаа зургууд нь хоёртын файлд суурилагдсан болно file, тиймээс "зураг" хавтас шаардлагагүй.
    "mPythonImages" хавтас болон бүх files *.mk болон *.py нь ухаалаг HMI-д хэрэггүй.
  4. Ухаалаг HMI платформ дээр суурилсан мутекс хяналтыг нэмж, флаш дээрх зургийн байршлыг тохируулахын тулд тохиргоог өөрчил file MCUXpresso IDE дээрх custom.c.
    Эдгээр нь бүгд RT_PLATFORM-оор тодорхойлогддог.
  5. MCUXpresso IDE дээр нээлттэй цахилгаан шатны төсөл. RT_PLATFORM макро тодорхойлолтыг custom.c дотроос sln_smart_tlhmi_elevator_cm4 > custom доороос хайгаад #if defined(RT_PLATFORM)-аас #endif руу бүх кодын мөрийг хуулж аваад, дарсан хэсэгт буулгана уу. file custom.c доор sln_smart_tlhmi_slider_progress_cm4 > custom.
  6. Лифтний GUI-д ашиглагддаг тул #else-ийн доор #else агуулсан кодын мөрүүдийг устгана уу.
    Нэмэгдсэн кодын мөрүүд нь дараахь зүйлийг хамарна.
    • Үүнд орно files нь дараах байдалтай байна.
      Код ба нөөц

    • Хувьсагчийн мэдэгдэл дараах байдалтай байна.
      Код ба нөөц
    • custom_init() функц дэх С кодууд дараах байдалтай байна:
      Код ба нөөц
      Код ба нөөц
    • Си нь бүх зургийн байршлыг тохируулсан _takeLVGLMutex(), _giveLVGLMutex(), setup_imgs() функцүүдийн кодыг заадаг.
  7. setup_imgs() функцын кодыг resource_information_table.txt доторх зургийн байршлын тохиргооны кодоор солино уу. file (3.3-р хэсгийг үзнэ үү).
    Энэхүү програмын тэмдэглэлд _scan_ex гэж тохируулсан цорын ганц зургийн нөөц байнаample_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_example_597x460.c) GUI Guider төслийн /үүсгэсэн/ зураг/ доор.
      Төгсгөлд байгаа зургийн тодорхойлолтыг хуулна уу file. Үүнийг lvgl_images_internal.h дээр буулгана уу file цахилгаан шатны програмын зургийн талаархи бүх анхны тодорхойлолтыг устгасны дараа.
    • .data = _scan_ex-г устгахamp.өгөгдөл setup_imgs() функцэд тохируулагдсан тул массив дахь le_597x460_map.
      Массивыг эцэст нь 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 > framework > hal > MCUXpresso төсөл дээр дэлгэц. Аппликешнийнхээ нэрийг hal_display_lvgl_sliderprogress.c болгон өөрчил.
    2. -г нээнэ үү file hal_display_lvgl_sliderprogress.c ба "elevator" гэсэн бүх мөрийг "SliderProgress" програмын мөрөөр солино уу. file.
  • Гаралтын HAL төхөөрөмжийг хэрэгжүүлэх
    1. hal_output_ui_elevator.c-г хуулж буулгана уу file бүлгийн sln_smart_tlhmi_slider_progress_cm4 > framework > 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[]-аас бусад тоо, массив зэрэг бүх хувьсагчийн мэдэгдлүүдийг устгана уу.
    6. "Elevator" гэсэн бүх мөрийг "SliderProgress" програмын мөрөөр солино уу.
  • HAL төхөөрөмжийг хоёуланг нь идэвхжүүлж, тохируулна уу
    1. board_define.h-г нээнэ үү file sln_smart_tlhmi_slider_progress_cm4 > самбарын доор.
      "Elevator" гэсэн бүх мөрийг "SliderProgress" програмын мөрөөр солино уу file.
      Энэ нь ENABLE_DISPLAY_DEV_LVGLSliderProgress болон ENABLE_OUTPUT_DEV_UiSliderProgress гэсэн тодорхойлолтоор дэлгэц болон гаралтын HAL төхөөрөмжүүдийг идэвхжүүлж, тохируулдаг.
    2. lvgl_support.c-г нээнэ үү file sln_smart_tlhmi_slider_progress_cm4 > самбарын доор. "Elevator" гэсэн бүх мөрийг "SliderProgress" програмын мөрөөр солино уу file.
      Энэ нь камерыг урьдчилан идэвхжүүлдэгview дэлгэцийн драйверын түвшинд GUI дээр.
  • HAL төхөөрөмжийг хоёуланг нь бүртгүүлнэ үү
    M4 үндсэн sln_smart_tlhmi_cm4.cpp-г нээнэ үү file sln_smart_tlhmi_slider_progress_cm4 > эх сурвалжийн доор.
    "Elevator" гэсэн бүх мөрийг "SliderProgress" програмын мөрөөр солино уу file.
    Энэ нь лифтний програмын оронд таны хэрэглээний дэлгэц, гаралтын HAL төхөөрөмжийг бүртгэдэг.
    Тиймээс ухаалаг HMI дээр үндсэн LVGL GUI програмыг ажиллуулахын тулд нэгтгэх ажил дууссан.
    Аппликешнд тавигдах илүү шаардлагаас хамааран нэгдсэн үндсэн програм дээр үндэслэн илүү олон хэрэгжилтийг нэмж болно.

Жагсаал

"Slider_progress" програмын үзүүлэнг энэ програмын тэмдэглэлийн хамт хэрэгжүүлсэн.

Демо програм хангамжийн багцыг задласны дараа доорх зүйлийг тавь files болон хавтсыг ухаалаг HMI програм хангамж руу оруулна уу:

  • The file hal_display_lvgl_sliderprpgress.c [demo]\framework\hal\display\ доороос [ухаалаг HMI]\framework\hal\display\
  • The file hal_output_ui_slider_progress.c [demo]\framework\hal\output\ замд [ухаалаг HMI]\framework\hal\output\
  • “Slider_progress” хавтас нь [smart HMI]-ийн үндсэн зам руу
    Төсөлүүдийг ухаалаг HMI платформ дээр танилцуулсан кофены машин/лифт програмын нэгэн адил MCUXpresso IDE дээр нээх боломжтой.
    Баригдсан *.axf программчлагдсаны дараа file хаяг руу 0x30100000 болон нөөцийн хоёртын file 0x30700000 хаягаар LVGL GUI демо нь ухаалаг HMI хөгжүүлэлтийн самбар дээр амжилттай ажиллах боломжтой (дэлгэцийг харуулахын тулд Зураг 3-ыг үзнэ үү).
    Жич: Хэрэв MCUXpresso IDE-ийн v1.7.0-г ашиглаж байгаа бол CM4 төслийг бүтээхээс өмнө Тохиргоо > MCU C++ Linker > Managed Linker скрипт хэсэгт "Холбоос скриптийг удирдах"-ыг идэвхжүүлнэ үү.
    Зураг 3. Ухаалаг HMI хөгжүүлэлтийн самбар дээрх LVGL GUI demo дэлгэц
    Демо дэлгэц

Хяналтын түүх

Засварын түүх нь энэ баримт бичгийн засваруудыг нэгтгэн харуулав.

Хүснэгт 1. Хяналтын түүх

Хяналтын дугаар Огноо Үндсэн өөрчлөлтүүд
1 16 оны зургадугаар сарын 2023 Анхны хувилбар

Баримт бичигт байгаа эх кодын талаар анхаарна уу

ExampЭнэ баримт бичигт үзүүлсэн le код нь дараах зохиогчийн эрх болон BSD-3-Зүйлийн лицензтэй:
Зохиогчийн эрх 2023 NXP Дараах нөхцөлийг хангасан тохиолдолд дахин хуваарилах, эх болон хоёртын хэлбэрт өөрчлөлт оруулах эсвэл өөрчлөхгүйгээр ашиглахыг зөвшөөрнө.

  1. Эх кодын дахин хуваарилалт нь дээрх зохиогчийн эрхийн мэдэгдэл, нөхцөлүүдийн жагсаалт болон дараах мэдэгдлийг агуулсан байх ёстой.
  2. Хоёртын хувилбарт дахин хуваарилалт нь дээрх зохиогчийн эрхийн мэдэгдлийг хуулбарласан байх ёстой, эдгээр нөхцлийн жагсаалт болон баримт бичиг болон/эсвэл бусад материалд дараахь татгалзлыг түгээлтийн хамт өгөх ёстой.
  3. Зохиогчийн эрх эзэмшигчийн нэр болон хувь нэмэр оруулагчдын нэрсийг энэхүү програм хангамжаас гаргаж авсан бүтээгдэхүүнийг сурталчлахад ашиглаж болохгүй.

ЭНЭ ПРОГРАММЫ ХЭРЭГЛЭЭГ ЗОХИОГЧИЙН ЭРХ ЭЗЭМШИГЧИД болон хувь нэмэр оруулагчдаас “Байгаагаар нь” ӨГӨГДӨГӨӨ БОЛОН ХУДАЛДААНЫ ХЭРЭГСЭЛИЙН ХЭРЭГЛЭЭНИЙ АЛБАН ТУШААЛЫН БАТАЛГААГ ОРУУЛАХ ГЭХДЭЭ ХЯЗГААРЛАГДАХГҮЙ аливаа ил тод, далд баталгаа.
ЯМАР ч тохиолдолд ЗОХИОГЧИЙН ЭРХ ЭЗЭМШИГЧ ЭСВЭЛ ОРОЛЦОГЧИД ШУУД, ШУУД БУС, САНАМЖИЙН, ТУСГАЙ, ҮЛГЭРИЙН ЭСВЭЛ ҮҮСЭЛТ ХЭРЭГЛЭЛИЙГ ХАРИУЦАХГҮЙ. АШИГЛАЛТ, ӨГӨГДӨЛ, АШИГТ АЛДАХ; ЭСВЭЛ БИЗНЕСИЙН ТАВАЛДАЛ) ГЭРЭЭН ХЭРЭГТЭЙ ХЭРЭГТЭЙ ХЭРЭГТЭЙ ХЭРЭГЛЭЭД ҮҮСЭХ ХАРИУЦЛАГЫН ОНОЛЫН дагуу, ХАТУУ ХАРИУЦЛАГА, ЭСВЭЛ ЗОРИУЛСАН ЭСВЭЛ ИЙМ БАЙХ БОЛОМЖТОЙ
Хохирол.

Хууль эрх зүйн мэдээлэл

Тодорхойлолт
Ноорог:
Баримт бичиг дээрх нооргийн төлөв нь агуулга нь дотоод шинэчлэлтийн дор байгааг харуулж байнаview мөн албан ёсны зөвшөөрөлтэй байх бөгөөд үүнд өөрчлөлт, нэмэлт оруулах боломжтой.
NXP Semiconductors нь баримт бичгийн ноорог хувилбарт оруулсан мэдээллийн үнэн зөв, бүрэн байдлын талаар ямар нэгэн мэдэгдэл, баталгаа өгөхгүй бөгөөд ийм мэдээллийг ашигласны үр дагаварт хариуцлага хүлээхгүй.

Анхааруулга
Хязгаарлагдмал баталгаа ба хариуцлага: Энэхүү баримт бичигт байгаа мэдээллийг үнэн зөв, найдвартай гэж үзэж байна.
Гэсэн хэдий ч NXP Semiconductors нь эдгээр мэдээллийн үнэн зөв, бүрэн байдлын талаар илэрхий эсвэл далд хэлбэрээр ямар нэгэн мэдэгдэл, баталгаа өгөхгүй бөгөөд ийм мэдээллийг ашигласны үр дагаварт хариуцлага хүлээхгүй.
NXP Semiconductors нь NXP Semiconductors-аас гадуурх мэдээллийн эх сурвалжаас өгсөн бол энэ баримт бичгийн агуулгад хариуцлага хүлээхгүй.
NXP Semiconductors нь ямар ч тохиолдолд шууд бус, санамсаргүй, шийтгэл, тусгай болон үр дагаварт учирсан хохирлыг хариуцахгүй (үүнд хязгаарлалтгүйгээр - алдагдсан ашиг, алдагдсан хуримтлал, бизнесийн тасалдал, аливаа бүтээгдэхүүнийг зайлуулах, солихтой холбоотой зардал эсвэл дахин боловсруулалтын төлбөр) эсхүл ийм хохирол нь зөрчил (үүнд хайхрамжгүй байдал), баталгаа, гэрээг зөрчсөн эсвэл бусад хууль эрх зүйн онол дээр үндэслээгүй.
Хэрэглэгч ямар нэгэн шалтгаанаар учирч болох аливаа хохирлыг үл харгалзан NXP Semiconductors-ийн нийт болон энд тайлбарласан бүтээгдэхүүний хэрэглэгчийн өмнө хүлээх хариуцлага нь NXP Semiconductors-ийг арилжааны хэлбэрээр худалдах нөхцөл, нөхцлийн дагуу хязгаарлагдана.

Өөрчлөлт хийх эрх: NXP Semiconductors нь энэ баримт бичигт нийтлэгдсэн мэдээлэл, түүний дотор техникийн үзүүлэлтүүд болон бүтээгдэхүүний тайлбарыг ямар ч хязгаарлалтгүйгээр, хэзээ ч мэдэгдэлгүйгээр өөрчлөх эрхтэй.
Энэхүү баримт бичиг нь нийтлэхээс өмнө өгсөн бүх мэдээллийг орлож, орлоно.

Хэрэглэхэд тохиромжтой байдал: NXP Semiconductors бүтээгдэхүүнүүд нь амьдралыг дэмжих, амьдралын чухал эсвэл аюулгүй байдлын чухал систем, тоног төхөөрөмж, түүнчлэн NXP Semiconductors бүтээгдэхүүний эвдрэл, доголдол нь хувийн осолд хүргэж болзошгүй хэрэглээнд ашиглахад тохиромжгүй, зөвшөөрөлгүй эсвэл баталгаатай биш юм. гэмтэл, үхэл, эд хөрөнгө, байгаль орчны ноцтой хохирол.
NXP Semiconductors болон түүний ханган нийлүүлэгчид нь NXP Semiconductors бүтээгдэхүүнийг ийм төхөөрөмж, хэрэглээнд оруулах болон/эсвэл ашиглахад ямар ч хариуцлага хүлээхгүй бөгөөд ийм байдлаар оруулах болон/эсвэл ашиглалтын эрсдэл нь үйлчлүүлэгч өөрөө хариуцна.

Хэрэглээ: Эдгээр бүтээгдэхүүний аль нэгэнд зориулсан энд тайлбарласан програмууд нь зөвхөн тайлбарлах зорилготой.
NXP Semiconductors нь нэмэлт туршилт, өөрчлөлт хийхгүйгээр эдгээр хэрэглээг заасан хэрэглээнд тохирно гэсэн баталгаа, баталгаа өгөхгүй.
Үйлчлүүлэгчид NXP Semiconductors бүтээгдэхүүнийг ашиглан өөрсдийн хэрэглээ, бүтээгдэхүүний загвар, ашиглалтыг хариуцдаг бөгөөд NXP Semiconductors нь хэрэглээний болон хэрэглэгчийн бүтээгдэхүүний дизайнтай холбоотой аливаа тусламжийн төлөө хариуцлага хүлээхгүй.
NXP Semiconductors бүтээгдэхүүн нь хэрэглэгчийн хэрэглээ, төлөвлөж буй бүтээгдэхүүн, түүнчлэн гуравдагч этгээдийн үйлчлүүлэгч(үүд)-ийн төлөвлөсөн хэрэглээ, хэрэглээнд тохирох эсэхийг тодорхойлох нь зөвхөн хэрэглэгчийн үүрэг юм.
Үйлчлүүлэгчид өөрсдийн хэрэглээ, бүтээгдэхүүнтэй холбоотой эрсдлийг багасгахын тулд зохих дизайн, ашиглалтын хамгаалалтыг хангах ёстой.
NXP Semiconductors нь хэрэглэгчийн хэрэглээний программууд, бүтээгдэхүүнүүд, хэрэглэгчийн гуравдагч талын үйлчлүүлэгч(үүд)-ийн хэрэглээ, хэрэглээнд үндэслэсэн аливаа дутагдал, гэмтэл, зардал, асуудалтай холбоотой аливаа хариуцлага хүлээхгүй.
Үйлчлүүлэгч нь NXP Semiconductors бүтээгдэхүүнийг ашиглан хэрэглэгчийн хэрэглээний программууд болон бүтээгдэхүүнүүдэд шаардлагатай бүх туршилтыг хийх үүрэгтэй бөгөөд уг программууд болон бүтээгдэхүүнүүд эсвэл хэрэглэгчийн гуравдагч талын үйлчлүүлэгч(үүд)-ийн хэрэглээнээс зайлсхийхийн тулд хэрэглэгчдэд шаардлагатай бүх туршилтыг хийх үүрэгтэй. NXP энэ талаар ямар ч хариуцлага хүлээхгүй

Арилжааны борлуулалтын нөхцөл: NXP Semiconductors бүтээгдэхүүнийг нийтэлсэн арилжааны ерөнхий нөхцөл, нөхцлийн дагуу зардаг http://www.nxp.com/profile/terms, хүчин төгөлдөр бичгээр байгуулсан хувь хүний ​​гэрээнд өөрөөр заагаагүй бол.
Ганцаарчилсан гэрээ байгуулсан тохиолдолд зөвхөн тухайн гэрээний нөхцөл, болзлыг баримтална.
NXP Semiconductors нь үйлчлүүлэгч NXP Semiconductors бүтээгдэхүүнийг худалдан авахтай холбоотой хэрэглэгчийн ерөнхий нөхцөлийг хэрэгжүүлэхийг үүгээр эсэргүүцэж байна.

Экспортын хяналт: Энэ баримт бичиг болон энд тайлбарласан зүйл(үүд) нь экспортын хяналтын зохицуулалтад хамрагдаж болно.
Экспортод эрх бүхий байгууллагаас урьдчилан зөвшөөрөл авах шаардлагатай байж болно.

Автомашины бус шаардлага хангасан бүтээгдэхүүнд хэрэглэхэд тохиромжтой байдал: Энэхүү мэдээллийн хуудсанд энэхүү NXP Semiconductors бүтээгдэхүүн нь автомашины шаардлага хангасан гэдгийг тодорхой заагаагүй бол уг бүтээгдэхүүн нь автомашины хэрэглээнд тохиромжгүй.
Энэ нь автомашины туршилт эсвэл хэрэглээний шаардлагын дагуу мэргэшсэн эсвэл шалгагдаагүй болно. NXP Semiconductors нь автомашины бус шаардлага хангасан бүтээгдэхүүнийг автомашины тоног төхөөрөмж, хэрэглээнд оруулах ба/эсвэл ашиглах хариуцлага хүлээхгүй.
Үйлчлүүлэгч уг бүтээгдэхүүнийг автомашины техникийн үзүүлэлт, стандартын дагуу автомашины хэрэглээнд загварчлах, ашиглах зорилгоор ашиглах тохиолдолд (а) уг бүтээгдэхүүнийг NXP Semiconductors-ын баталгаагүйгээр автомашины хэрэглээ, техникийн үзүүлэлтүүдэд ашиглах ёстой бөгөөд ( б) хэрэглэгч бүтээгдэхүүнийг NXP Semiconductors-ийн техникийн үзүүлэлтээс хэтрүүлэн автомашины хэрэглээнд ашиглах бүрд түүний эрсдэл нь зөвхөн хэрэглэгчийн өөрийнх нь хариуцах бөгөөд (в) хэрэглэгчийн дизайн болон ашиглалтын үр дүнд үүссэн аливаа хариуцлага, гэмтэл, бүтэлгүйтсэн бүтээгдэхүүний нэхэмжлэлийг хэрэглэгч NXP Semiconductors-д бүрэн хариуцна. NXP Semiconductors-ийн стандарт баталгаа болон NXP Semiconductors-ын техникийн үзүүлэлтээс давсан автомашины хэрэглээнд зориулагдсан бүтээгдэхүүн.

Орчуулга: Баримт бичгийн англи бус (орчуулсан) хувилбар, түүний дотор тухайн баримт бичигт байгаа хууль эрх зүйн мэдээлэл нь зөвхөн лавлагаанд зориулагдсан болно.
Орчуулсан болон англи хэл дээрх хувилбаруудын хооронд зөрүү гарсан тохиолдолд англи хувилбарыг баримтална.

Аюулгүй байдал: Хэрэглэгч бүх NXP бүтээгдэхүүнүүд нь тодорхойгүй эмзэг байдалд өртөж болзошгүй эсвэл тогтоосон аюулгүй байдлын стандартууд эсвэл мэдэгдэж буй хязгаарлалттай техникийн үзүүлэлтүүдийг дэмждэг болохыг ойлгодог.
Үйлчлүүлэгч нь эдгээр эмзэг байдлын хэрэглэгчийн хэрэглээ, бүтээгдэхүүнд үзүүлэх нөлөөллийг багасгахын тулд өөрийн хэрэглээний болон бүтээгдэхүүний амьдралын мөчлөгийн туршид дизайн, ашиглалтыг хариуцна.
Хэрэглэгчийн үүрэг хариуцлага нь NXP бүтээгдэхүүнээр дэмжигдсэн бусад нээлттэй ба/эсвэл хэрэглэгчийн программд ашиглахад зориулагдсан өмчлөлийн технологид хамаарна.
NXP нь аливаа эмзэг байдлын төлөө хариуцлага хүлээхгүй.
Хэрэглэгч NXP-ийн аюулгүй байдлын шинэчлэлтүүдийг тогтмол шалгаж, зохих ёсоор дагаж мөрдөх ёстой.
Үйлчлүүлэгч нь зориулалтын хэрэглээний дүрэм, журам, стандартад хамгийн сайн нийцсэн хамгаалалтын шинж чанартай бүтээгдэхүүнийг сонгож, бүтээгдэхүүнийхээ дизайны эцсийн шийдвэрийг гаргах бөгөөд бүтээгдэхүүнтэй холбоотой хууль эрх зүй, зохицуулалт, аюулгүй байдалтай холбоотой бүх шаардлагыг дангаараа хариуцна. NXP-ээс өгч болох аливаа мэдээлэл эсвэл дэмжлэг.
NXP нь NXP бүтээгдэхүүний аюулгүй байдлын эмзэг байдлыг судлах, тайлагнах, шийдвэрлэх ажиллагааг удирддаг Бүтээгдэхүүний аюулгүй байдлын ослын хариу арга хэмжээний баг (PSIRT) (PSIRT@nxp.com хаягаар холбогдох) байдаг.

NXP BV: NXP BV нь үйл ажиллагаа явуулдаг компани биш бөгөөд бүтээгдэхүүн борлуулдаггүй.

Барааны тэмдэг

Анхааруулга: Бүх иш татсан брэнд, бүтээгдэхүүний нэр, үйлчилгээний нэр, барааны тэмдэг нь тус тусын эздийнхээ өмч юм.
NXP: үгийн тэмдэг болон лого нь NXP BV-ийн худалдааны тэмдэг юм
i.MX: нь NXP BV-ийн худалдааны тэмдэг юм

ХЭРЭГЛЭГЧИЙГ ДЭМЖИХ

Дэлгэрэнгүй мэдээллийг дараах хаягаар авна уу. http://www.nxp.com
Logo.png

Баримт бичиг / нөөц

NXP AN13948 LVGL GUI програмыг Smart HMI платформд нэгтгэх [pdf] Хэрэглэгчийн гарын авлага
AN13948 LVGL GUI програмыг Smart HMI платформд нэгтгэж байна, AN13948, LVGL GUI програмыг Smart HMI платформд нэгтгэж байна

Лавлагаа

Сэтгэгдэл үлдээгээрэй

Таны имэйл хаягийг нийтлэхгүй. Шаардлагатай талбаруудыг тэмдэглэсэн *