NXP AN13948 Інтэграцыя прыкладання LVGL GUI у платформу Smart HMI Кіраўніцтва карыстальніка
NXP AN13948 Інтэграцыя прыкладання LVGL GUI у платформу Smart HMI

Уводзіны

NXP запусціла набор для распрацоўкі рашэння пад назвай SLN-TLHMI-IOT. Ён сканцэнтраваны на разумных праграмах HMI, якія змяшчаюць дзве праграмы - кавамашыну і ліфт (прыкладанне разумнай панэлі хутка з'явіцца).
Каб даць інфармацыю карыстальніку, уключаны некаторыя асноўныя дакументы, напрыкладample, кіраўніцтва распрацоўшчыка.
Кіраўніцтва знаёміць з базавым дызайнам праграмнага забеспячэння і архітэктурай прыкладанняў, якія ахопліваюць усе кампаненты рашэння.
Гэтыя кампаненты ўключаюць загрузнік, структуру і дызайн HAL, каб дапамагчы распрацоўшчыкам больш лёгка і эфектыўна рэалізоўваць свае прыкладанні з дапамогай SLN-TLHMI-IOT.

Каб атрымаць больш падрабязную інфармацыю аб дакументах і рашэнні, наведайце: Рашэнне NXP EdgeReady Smart HMI на базе i.MX RT117H з ML Vision, галасавым і графічным інтэрфейсам.

Тым не менш, уводзіны сканцэнтраваны на ідэях і базавым выкарыстанні. З-за адпаведнасці праграмнага забеспячэння, заснаванага на фрэймворку, распрацоўшчыкам усё яшчэ няпроста ведаць, як рэалізаваць свае прыкладанні.
Каб паскорыць распрацоўку, патрабуюцца дадатковыя інструкцыі, якія паказваюць, як рэалізаваць асноўныя кампаненты (напрыклад,ample, LVGL GUI, зрок і распазнаванне голасу) крок за крокам.
Напрыкладample, кліенты павінны мець сваё ўласнае прыкладанне LVGL GUI, адрознае ад цяперашніх прыкладанняў у рашэнні.
Пасля ўкаранення графічнага інтэрфейсу LVGL з GUI Guider, прадастаўленым NXP, яны павінны інтэграваць яго ў праграмную платформу смарт-HMI, заснаваную на фрэймворку.

У гэтай нататцы па дадатку апісваецца, як інтэграваць прыкладанне LVGL GUI, распрацаванае карыстальнікам, у праграмную платформу смарт-HMI, заснаваную на фрэймворку.
Даведачныя коды таксама прадстаўлены разам з гэтай заўвагай да заяўкі.

Заўвага: Гэта заўвага аб дадатку не тлумачыць, як распрацаваць графічны інтэрфейс на аснове LVGL з дапамогай праграмнага інструмента GUI Guider.

Надview LVGL і GUI Guider апісаны ў раздзелах 1.1 і 1.2.

Лёгкая і ўніверсальная графічная бібліятэка
Light and Versatile Graphics Library (LVGL) - гэта бясплатная графічная бібліятэка з адкрытым зыходным кодам.
Ён забяспечвае ўсё неабходнае для стварэння ўбудаванага графічнага інтэрфейсу з простымі ў выкарыстанні графічнымі элементамі, прыгожымі візуальнымі эфектамі і невялікім аб'ёмам памяці.

Кіраўніцтва графічнага інтэрфейсу
GUI Guider - гэта зручны інструмент распрацоўкі графічнага карыстальніцкага інтэрфейсу ад NXP, які дазваляе хутка распрацоўваць высакаякасныя дысплеі з дапамогай графічнай бібліятэкі LVGL з адкрытым зыходным кодам.
Рэдактар ​​GUI Guider з функцыяй перацягвання дазваляе лёгка выкарыстоўваць мноства функцый LVGL. Гэтыя функцыі ўключаюць віджэты, анімацыю і стылі для стварэння графічнага інтэрфейсу з мінімальным кадзіраваннем або без яго.
Адным націскам кнопкі вы можаце запусціць сваё прыкладанне ў змадэляваным асяроддзі або экспартаваць яго ў мэтавы праект.
Згенераваны код з GUI Guider можна лёгка дадаць у ваш праект, паскараючы працэс распрацоўкі і дазваляючы бесперашкодна дадаваць убудаваны карыстальніцкі інтэрфейс у ваша прыкладанне.
GUI Guider можна бясплатна выкарыстоўваць з NXP агульнага прызначэння і перакрыжаванымі MCU і ўключае ў сябе ўбудаваныя шаблоны праектаў для некалькіх падтрымоўваных платформаў.
Каб даведацца больш аб распрацоўцы LVGL і GUI на GUI Guider, наведайце https://lvgl.io/ і GUI Guider.

Асяроддзе распрацоўкі

Падрыхтуйце і наладзьце асяроддзе распрацоўкі для распрацоўкі і інтэграцыі прыкладання з графічным інтэрфейсам у разумную платформу HMI.

Апаратнае асяроддзе

Для дэманстрацыі пасля распрацоўкі патрабуецца наступнае абсталяванне:

  • Інтэлектуальны камплект распрацоўшчыка HMI на базе NXP i.MX RT117H
  • SEGGER J-Link з 9-кантактным адаптарам Cortex-M

праграмнае асяроддзе
Праграмныя сродкі і іх версіі, якія выкарыстоўваюцца ў гэтай заўвазе па заяўцы, прадстаўлены ніжэй:

  • GUI Guider 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

Платформа праграмнага забеспячэння Smart HMI пабудавана на фреймворкавай архітэктуры. Распрацоўшчыкам цяжка дадаць сваё прыкладанне з графічным інтэрфейсам LVGL да праграмнай платформы смарт-HMI, нават калі яны прачыталі кіраўніцтва распрацоўшчыка і ведаюць пра структуру.
У наступных раздзелах паэтапна тлумачыцца, як гэта рэалізаваць.

Распрацоўка прыкладання LVGL GUI на GUI Guider
Як згадвалася вышэй, як распрацаваць LVGL GUI на GUI Guider не з'яўляецца акцэнтам у гэтай нататцы аб дадатку.
Але GUI example неабходна.
Такім чынам, адзін просты шаблон GUI пад назвай Slider Progress, прадстаўлены ў GUI Guider, абраны ў якасці GUI example для хуткай налады.
Шаблон Slider Progress GUI выкарыстоўваецца, таму што ён утрымлівае выяву, якая патрабуецца для дэманстрацыі стварэння рэсурсаў выявы ў дадатку.
GUI example вельмі лёгка стварыць: Каб стварыць праект з абноўленай бібліятэкай LVGL V8.3.2 і шаблонам платы MIMXRT1176xxxxx, звярніцеся да Кіраўніцтва карыстальніка GUI Guider (дакумент КІРАЎНІК).
На малюнку 1 паказаны налады праекта.

Заўвага: Трэба выбраць тып панэлі, як паказана ў чырвоным полі на малюнку 1, бо ён выкарыстоўваецца на бягучай плаце распрацоўкі.

Пасля стварэння праекта запусціце сімулятар, каб згенераваць адпаведныя коды GUI LVGL і таксама пабудаваць праект.
Вы можаце праверыць эфект GUI example на трэнажоры.

Малюнак 1. Налада праекта GUI на GUI Guider
Налада праекта

Стварыце свой праект на разумным HMI
Заўвага: Спачатку стварыце свой праект у IDE MCUXpresso.

Пасля LVGL GUI example быў створаны, ён можа перайсці да галоўнай мэты, каб інтэграваць яго ў разумную праграмную платформу HMI у праекце MCUXpresso для рэалізацыі вашага прыкладання з графічным інтэрфейсам.
Просты і хуткі метад - кланаваць бягучы праект прыкладання, прадстаўлены на платформе смарт-HMI.
Прыкладанне elevator - лепшы выбар у якасці кланаванай крыніцы, паколькі яно мае простую рэалізацыю.

Каб стварыць свой праект, выканайце наступныя дзеянні:

  1. Скапіруйце і ўстаўце папку «ліфт» у кланаваны зыходны код смарт-HMI з GitHub. Перайменаваць яго ў свой.
    Для гэтага эксample, мы абралі «slider_progress», пасля назвы GUI exampле.
  2. У тэчцы «slider_progress» увядзіце папку «lvgl_vglite_lib», якая змяшчае праект LVGL GUI.
  3. Адкрыйце звязаны з праектам files .cproject і .project і замяніце ўвесь радок «elevator» радком назвы вашага праекта «slider_progress».
  4. Зрабіце падобную замену для абодвух праектаў files у папках «cm4» і «cm7».
    Наладзьце свой праект, кланаваўшы праект ліфта files.
    Як паказана ў Малюнак 2 вашы праекты цяпер можна адкрыць у MCUXpresso IDE такім жа чынам, як і праект ліфта.

Малюнак 2. Налада праектаў на MCUXpresso
Настройка праекта

Стварыце рэсурсы для разумнага HMI
Як правіла, выявы выкарыстоўваюцца ў графічным інтэрфейсе (гукі таксама выкарыстоўваюцца ў галасавых падказках).
Выявы і гукі называюцца рэсурсамі, якія захоўваюцца ў флэш-памяці паслядоўна. Перш чым праграмаваць іх на флэш-памяці, рэсурсы павінны быць убудаваны ў двайковы файл file.
Асноўная задача - замяніць назвы эталоннага прыкладання (ліфта) вашымі.

Каб зрабіць гэта, выканайце наступныя дзеянні:

  1. Выдаліце ​​кланаваную папку «images» у slider_progress/resource.
  2. Скапіруйце папку «images» у \generated у вашым праекце GUI Guider.
  3. Устаўце яго пад slider_progress/resource (Гэта значыць, выкарыстоўвайце ўласныя выявы, а не выявы з праграмы ліфта).
  4. Выдаліце ​​*.mk file выкарыстоўваецца для GUI Guider у тэчцы «images».
  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 і Linux адпаведна.
  6. Пасля адкрыцця slider_progress_resource.txt file, замяніць усе радкі «ліфт» на «слайдэр_прагрэс».
  7. Выдаліце ​​ўсе старыя выявы і дадайце новыя з вашай выявай file імёны (тут «_scan_example_597x460.c”), напрыклад выява ../../slider_progress/resource/images/_scan_example_597x460.c.
  8. Адкрыйце slider_progress_resource.bat file для Windows і замяніць усе радкі «ліфт» на «slider_progress». Зрабіце тое ж самае з file slider_progress_resource.sh для Linux.
  9. Двойчы пстрыкніце партыю file slider_progress_resource_build.bat для Windows.
  10. З'явіцца акно каманд і аўтаматычна запусціцца для стварэння двайковага файла рэсурсу выявы file які змяшчае даныя выявы і інфармацыю аб доступе да рэсурсаў, якая змяшчае коды C для ўстаноўкі ўсіх месцазнаходжанняў выявы ў флэш-памяці і агульны памер выявы ў байтах.
    Пасля паказу паведамлення "Стварэнне рэсурсу завершана!", двайковы файл рэсурсу выявы file пад назвай slider_progress_resource.bin і інфармацыя аб доступе да рэсурсу file пад назвай resource_information_table.txt ствараюцца ў тэчцы «рэсурс».
    Двайковы файл рэсурсу выявы file запраграмавана на флэш-памяці, і інфармацыя аб доступе да рэсурсу выкарыстоўваецца для доступу да рэсурсаў на смарт-HMI (гл. Раздзел 3.4.1).

Інтэграцыя прыкладання LVGL GUI ў разумны HMI
Коды прыкладанняў GUI LVGL (вось SliderProgress GUI, напрыкладample) і створаныя рэсурсы выявы, уключаючы інфармацыю аб доступе, могуць быць дададзены ў разумны HMI.
Акрамя таго, для рэалізацыі вашага прыкладання LVGL GUI на смарт-HMI патрабуецца дадаць прылады HAL, звязаныя з LVGL GUI і адпаведнымі канфігурацыямі.
Дадатак LVGL GUI працуе на ядры M4, а адпаведная рэалізацыя амаль у праекце M4 «sln_smart_tlhmi_slider_progress_cm4».
Падрабязныя крокі апісаны ў далейшых падраздзелах.

Дадайце коды і рэсурсы GUI LVGL
Коды прыкладанняў LVGL GUI, якія выкарыстоўваюцца для разумнага HMI, знаходзяцца ў папках «custom» і «generated» у праекце GUI Guider.

Каб дадаць коды ў разумны HMI, выканайце наступныя дзеянні:

  1. Замяніце custom.c і custom.h у slider_progress/cm4/custom/ на тыя, якія знаходзяцца ў папцы «custom» у праекце GUI Guider.
  2. Выдаліце ​​«згенераваныя» папкі з slider_progress/cm4/.
    Затым скапіруйце «генераваную» тэчку з праекта GUI Guider і ўстаўце яе ў slider_progress/cm4/.
  3. Выдаліце ​​папкі «image» і «mPythonImages» і ўсё files *.mk і *.py у тэчцы «generated».
    Як згадвалася вышэй, выявы ў тэчцы «image» убудаваныя ў двайковы файл рэсурсу file, таму папка «image» не патрабуецца.
    Тэчка «mPythonImages» і ўсё files *.mk і *.py непажаданыя для разумнага HMI.
  4. Каб дадаць кіраванне м'ютэксам на аснове смарт-платформы HMI і ўсталяваць размяшчэнне малюнкаў на флэш-памяці, змяніце file custom.c на MCUXpresso IDE.
    Усе яны вызначаны RT_PLATFORM.
  5. Адкрыты праект ліфта ў IDE MCUXpresso. Знайдзіце вызначэнне макраса 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. Выдаліце ​​радкі кода пад #else, якія змяшчаюць #else, паколькі яны выкарыстоўваюцца для графічнага інтэрфейсу ліфта.
    Дададзеныя радкі кода ахопліваюць наступнае:
    • Уключыце files наступныя:
      Код і рэсурсы

    • Аб'ява зменнай выглядае наступным чынам:
      Код і рэсурсы
    • Коды C у функцыі custom_init() наступныя:
      Код і рэсурсы
      Код і рэсурсы
    • Коды C для функцый _takeLVGLMutex(), _giveLVGLMutex() і setup_imgs(), дзе ўсталёўваюцца месцазнаходжання ўсіх відарысаў.
  7. Заменіце коды ў функцыі setup_imgs() кодамі налад месцазнаходжання для малюнкаў у resource_information_table.txt file (гл. Раздзел 3.3).
    У гэтай заўвазе да прыкладання ёсць толькі адзін рэсурс выявы, які наладжаны як: _scan_example_597x460.data = (база + 0); Пасля гэтага функцыя setup_imgs() паказана ніжэй:
    Код і рэсурсы
  8. Каб дадаць вызначэнне макраса і дэкларацыю функцыі, звязаныя з custom.c, змяніце custom.h file пад sln_smart_tlhmi_slider_progress_cm4 > карыстальніцкі, як паказана ніжэй:
    Код і рэсурсы
  9. Каб вызначыць выявы ў вашым дадатку з графічным інтэрфейсам LVGL, змяніце lvgl_images_internal.h file пад sln_smart_tlhmi_slider_progress_cm4 > карыстальніцкі.
    • Адкрыйце адну выяву *.c file (вось _scan_example_597x460.c) у /generated/ image/ у праекце GUI Guider.
      Скапіруйце вызначэнне выявы ў канцы file. Устаўце яго ў lvgl_images_internal.h file пасля выдалення ўсіх зыходных азначэнняў пра выявы для праграмы ліфта.
    • Выдаліць .data = _scan_example_597x460_map у масіве, паколькі .data зададзены ў функцыі setup_imgs().
      Масіў канчаткова вызначаны ў lvgl_images_internal.h file, як паказана ніжэй:
      Код і рэсурсы
      Заўвага:
      Паўтарыце апісаныя вышэй дзеянні для ўсіх малюнкаў files адзін за адным, калі ёсць некалькі малюнкаў files.
  10. Наладзьце агульны памер рэсурсу выявы, вызначыўшы вызначэнне макраса APP_LVGL_IMGS_SIZE у app_config.h file пад sln_smart_tlhmi_slider_progress_cm7 > крыніца з новым памерам малюнкаў.
    Гэты новы памер даступны ва ўбудаваным рэсурсе resource_information_table.txt file.

Дадайце прылады і канфігурацыі HAL
На аснове архітэктуры фрэймворка дзве прылады HAL (дысплей і прылады вываду) прызначаны для прымянення графічнага інтэрфейсу LVGL.
Рэалізацыі дзвюх прылад адрозніваюцца ў залежнасці ад розных прыкладанняў графічнага інтэрфейсу LVGL, хоць для іх ёсць агульныя архітэктурныя канструкцыі.
Яны рэалізуюцца асобна ў два files.
Такім чынам, ён павінен кланаваць два files з бягучага прыкладання ліфта і змяніце сваё прыкладанне LVGL GUI.
Затым уключыце свае прылады ў канфігурацыі file.
Ваша прыкладанне LVGL GUI пабудавана на разумнай платформе HMI, заснаванай на фрэймворку.

Падрабязныя змены можна зрабіць у IDE MCUXpresso, як паказана ніжэй:

  • Рэалізаваць прыладу адлюстравання HAL
    1. Скапіруйце і ўстаўце hal_display_lvgl_elevator.c file у групе sln_smart_tlhmi_slider_progress_cm4 > framework > hal > display on MCUXpresso project. Перайменуйце яго ў 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. Заменіце ўсе радкі «ліфт» на радок вашага прыкладання «SliderProgress».
  • Уключыце і наладзьце абедзве прылады HAL
    1. Адкрыйце board_define.h file пад sln_smart_tlhmi_slider_progress_cm4 > дошка.
      Заменіце ўсе радкі "ліфт" на радок вашага прыкладання "SliderProgress" у file.
      Ён уключае і наладжвае прылады адлюстравання і вываду HAL з дапамогай азначэнняў ENABLE_DISPLAY_DEV_LVGLSliderProgress і ENABLE_OUTPUT_DEV_UiSliderProgress.
    2. Адкрыйце lvgl_support.c file пад sln_smart_tlhmi_slider_progress_cm4 > дошка. Заменіце ўсе радкі "ліфт" на радок вашага прыкладання "SliderProgress" у file.
      Гэта дазваляе камеры папярэднеview на графічным інтэрфейсе на ўзроўні драйвера дысплея.
  • Зарэгіструйце абедзве прылады HAL
    Адкрыйце галоўны M4 sln_smart_tlhmi_cm4.cpp file пад sln_smart_tlhmi_slider_progress_cm4 > крыніца.
    Заменіце ўсе радкі "ліфт" на радок вашага прыкладання "SliderProgress" у file.
    Ён рэгіструе прыладу адлюстравання і вываду HAL для вашага прыкладання замест прыкладання ліфта.
    Такім чынам, інтэграцыя завершана для запуску базавага прыкладання LVGL GUI на разумным HMI.
    У залежнасці ад дадатковых патрабаванняў да прыкладання можна дадаць больш рэалізацый на аснове інтэграванага базавага прыкладання.

Дэманстрацыя

Дэманстрацыя прыкладання «slider_progress» рэалізавана разам з гэтай заўвагай да прыкладання.

Пасля распакавання дэма-пакета праграмнага забеспячэння змесціце ніжэй files і тэчку ў праграмнае забеспячэнне разумнага HMI:

  • The file hal_display_lvgl_sliderprpgress.c у [demo]\framework\hal\display\ да шляху [smart HMI]\framework\hal\display\
  • The file hal_output_ui_slider_progress.c у [demo]\framework\hal\output\ да шляху [smart HMI]\framework\hal\output\
  • Папка «slider_progress» у каранёвы шлях [smart HMI]\
    Праекты можна адкрываць у IDE MCUXpresso, як і дадатак для кавамашыны/ліфта, прадстаўленае на разумнай платформе HMI.
    Пасля праграмавання ўбудаванага *.axf file на адрас 0x30100000 і двайковы файл рэсурсу file па адрасе 0x30700000, дэманстрацыя графічнага інтэрфейсу LVGL можа паспяхова працаваць на плаце распрацоўкі разумнага HMI (экран гл. малюнак 3).
    Заўвага: Калі вы выкарыстоўваеце версію 1.7.0 IDE MCUXpresso, перад стварэннем праекта CM4 уключыце «Кіраванне сцэнарыем спасылак» у раздзеле «Настройка» > «Компоновщик MCU C++ > Сцэнар кіраванага кампонавальніка».
    Малюнак 3. Дэманстрацыйны дысплей графічнага інтэрфейсу LVGL на плаце распрацоўкі разумнага HMI
    Дэманстрацыйны дысплей

Гісторыя версій

Гісторыя версій абагульняе праўкі гэтага дакумента.

Табліца 1. Гісторыя версій

Нумар версіі Дата Істотныя змены
1 16 чэрвеня 2023 г Першапачатковы выпуск

Заўвага пра зыходны код у дакуменце

Exampкод, паказаны ў гэтым дакуменце, мае наступныя аўтарскія правы і ліцэнзію BSD-3-Clause:
Copyright 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 не нясе адказнасці за ўключэнне і/або выкарыстанне неаўтамабільнай прадукцыі ў аўтамабільным абсталяванні або праграмах.
У выпадку, калі кліент выкарыстоўвае прадукт для распрацоўкі і выкарыстання ў аўтамабільных прылажэннях у адпаведнасці з аўтамабільнымі спецыфікацыямі і стандартамі, кліент (a) павінен выкарыстоўваць прадукт без гарантыі NXP Semiconductors на прадукт для такіх аўтамабільных прымянення, выкарыстання і спецыфікацый, і ( b) кожны раз, калі кліент выкарыстоўвае прадукт для аўтамабільных прымянення па-за спецыфікацыямі NXP Semiconductors, такое выкарыстанне ажыццяўляецца выключна на ўласную рызыку кліента, і (c) кліент цалкам кампенсуе NXP Semiconductors любую адказнасць, пашкоджанні або няўдалыя прэтэнзіі да прадукту, якія вынікаюць з распрацоўкі і выкарыстання кліентам прадукт для аўтамабільнага прымянення за межамі стандартнай гарантыі NXP Semiconductors і спецыфікацый прадукту NXP Semiconductors.

Пераклады: Неанглійская (перакладзеная) версія дакумента, уключаючы юрыдычную інфармацыю ў гэтым дакуменце, прызначана толькі для даведкі.
Англійская версія мае перавагу ў выпадку любых разыходжанняў паміж перакладзенай і англійскай версіямі.

Бяспека: Кліент разумее, што ўсе прадукты 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
Лагатып.png

Дакументы / Рэсурсы

NXP AN13948 Інтэграцыя прыкладання LVGL GUI у платформу Smart HMI [pdfКіраўніцтва карыстальніка
AN13948 Інтэграцыя прыкладання LVGL GUI у платформу Smart HMI, AN13948, Інтэграцыя прыкладання LVGL GUI у платформу Smart HMI

Спасылкі

Пакінуць каментар

Ваш электронны адрас не будзе апублікаваны. Абавязковыя для запаўнення палі пазначаны *