NXP AN13948 Integrante LVGL GUI-Aplikon en Smart HMI-Platformuzan Manlibron
Enkonduko
NXP lanĉis solvo-disvolvan kompleton nomitan SLN-TLHMI-IOT. Ĝi fokusiĝas al inteligentaj HMI-aplikoj enhavantaj du apojn - kafmaŝino kaj lifto (apliko de inteligenta panelo baldaŭ aperos).
Por provizi informojn al la uzanto, kelkaj bazaj dokumentoj estas inkluzivitaj, ekzample, la gvidilo por programistoj.
La gvidilo enkondukas la bazan programaran dezajnon kaj arkitekturon de la aplikaĵoj kovrantaj ĉiujn solvkomponentojn.
Ĉi tiuj komponantoj inkluzivas ekŝargilon, kadron kaj HAL-dezajnon por helpi la programistojn pli facile kaj efike efektivigi siajn aplikojn uzante la SLN-TLHMI-IOT.
Por pliaj detaloj pri la dokumentoj kaj la solvo, vizitu: NXP EdgeReady Smart HMI Solvo bazita sur i.MX RT117H kun ML Vision, Voĉo kaj Grafika UI.
Tamen, la enkonduko temigas la ideojn kaj bazan uzadon. Pro la konformeco de la programaro bazita sur la kadro, ankoraŭ ne estas facile por la programistoj scii kiel efektivigi siajn aplikojn.
Por akceli la evoluon, kromaj gvidiloj estas postulataj por enkonduki kiel efektivigi la ĉefajn komponentojn (ekzample, LVGL GUI, vizio kaj voĉrekono) paŝon post paŝo.
Por ekzampLe, klientoj devus havi sian propran LVGL GUI-aplikaĵon malsaman de la nunaj programoj en la solvo.
Post efektivigado de sia LVGL GUI kun la GUI-Gvidisto provizita de NXP, ili devas integri ĝin en la inteligentan HMI-programaran platformon bazitan sur la kadro.
Ĉi tiu aplika noto priskribas kiel integri la LVGL GUI-aplikaĵon evoluigitan de la uzanto en la inteligentan HMI-programaran platformon bazitan sur la kadro.
La referenckodoj ankaŭ estas prezentitaj kune kun ĉi tiu aplika noto.
Notu: Ĉi tiu aplika noto ne klarigas kiel disvolvi la GUI bazitan sur LVGL per la programaro GUI Guider.
La finitaview de la LVGL kaj GUI-Gvidisto estas priskribita en Sekcio 1.1 kaj Section 1.2.
Malpeza kaj Versatila Grafika Biblioteko
Light and Versatile Graphics Library (LVGL) estas senpaga kaj malfermfonta grafika biblioteko.
Ĝi provizas ĉion, kion vi bezonas por krei enigitan GUI kun facile uzeblaj grafikaj elementoj, belaj vidaj efikoj kaj malalta memorspuro.
GUI-Gvidisto
GUI Guider estas uzant-amika grafika uzantinterfaco evoluiga ilo de NXP, kiu ebligas la rapidan disvolviĝon de altkvalitaj ekranoj kun la malfermfonta LVGL-grafika biblioteko.
La tren-kaj-faligi redaktilon de GUI Guider faciligas uzi la multajn funkciojn de LVGL. Ĉi tiuj funkcioj inkluzivas fenestraĵojn, kuraĝigojn kaj stilojn por krei GUI kun minimuma aŭ neniu kodado.
Per la klako de butono, vi povas ruli vian aplikaĵon en ŝajniga medio aŭ eksporti ĝin al celprojekto.
Generita kodo de GUI Guider povas facile esti aldonita al via projekto, akcelante la evoluprocezon kaj permesante al vi aldoni enigitan uzantinterfacon al via aplikaĵo perfekte.
GUI Guider estas libere uzebla kun NXP ĝeneraluzeblaj kaj interkruciĝaj MCU-oj kaj inkluzivas enkonstruitajn projektajn ŝablonojn por pluraj subtenataj platformoj.
Por lerni pli pri LVGL kaj GUI-disvolviĝo en GUI Guider, vizitu https://lvgl.io/ kaj GUI Guider.
Disvolva medio
Preparu kaj agordu la evoluan medion por disvolvi kaj integri GUI-apon al la inteligenta HMI-platformo.
Aparataro medio
La sekva aparataro estas postulata por la manifestacio post evoluo:
- La inteligenta HMI-disvolva ilaro bazita sur NXP i.MX RT117H
- SEGGER J-Link kun 9-stifta Cortex-M-adaptilo
Softvara medio
La programaraj iloj kaj iliaj versioj uzataj en ĉi tiu aplika noto estas prezentitaj, kiel sube:
- GUI Guider V1.5.0-GA
- MCUXpresso IDE V11.7.0
Notu: Cimo en versioj antaŭ 11.7.0 ne permesas taŭgajn enkonstruitajn plurkernajn projektojn.
Tial, versio 11.7.0 aŭ pli granda estas bezonata. - RT1170 SDK V2.12.1
- SLN-TLHMI-IOT programara platformo - inteligentaj HMI-fontokodoj publikigitaj en nia oficiala GitHub-deponejo
Por lerni pli pri kiel agordi kaj instali la aparataron kaj programaron, vidu Komenci kun la SLN-TLHMI-IOT (dokumento MCU-SMHMI-GSG).
Integri LVGL GUI-aplikon en inteligentan HMI-platformon
La inteligenta HMI-programa platformo estas konstruita sur kadra arkitekturo. Programistoj malfacilas aldoni sian LVGL-GUI-aplikaĵon al la inteligenta HMI-programa platformo eĉ se ili legas la programistgvidilon kaj scias pri la kadro.
La sekvaj sekcioj klarigas kiel efektivigi ĝin paŝon post paŝo.
Disvolvu LVGL GUI-aplikaĵon sur GUI Guider
Kiel menciite supre, kiel disvolvi la LVGL GUI sur GUI Guider ne estas la emfazo en ĉi tiu aplika noto.
Sed GUI ekzample estas necesa.
Tial, unu simpla GUI-ŝablono nomita Slider Progress provizita en GUI Guider estas elektita kiel la GUI ekzample por rapida agordo.
La ŝablono Slider Progress GUI estas uzata ĉar ĝi enhavas bildon, kiu estas bezonata por pruvi konstrui bildajn rimedojn en la aplikaĵo.
La GUI ekzampLe estas tre facile generi: Por krei projekton kun la ĝisdatigita LVGL-biblioteko V8.3.2 kaj la tabulŝablono kiel MIMXRT1176xxxx, raportu al GUI Guider User's Guide (dokumento GUIGUIDERUG).
Figuro 1 montras la agordojn de la projekto.
Notu: La panela tipo devas esti elektita, kiel montrite en la ruĝa skatolo en Figuro 1, ĉar ĝi estas uzata sur la nuna evolutabulo.
Post kreado de la projekto, rulu la simulilon por generi la rilatajn LVGL-GUI-kodojn kaj ankaŭ konstrui la projekton.
Vi povas kontroli la efikon de la GUI ekzample sur la simulilo.
Figuro 1. GUI-projekta agordo sur GUI Guider
Kreu vian projekton sur inteligenta HMI
Notu: Unue, kreu vian projekton sur MCUXpresso IDE.
Post la LVGL GUI ekzample estis konstruita, ĝi povas iri al la ĉefa celo por integri ĝin en la inteligentan HMI-programaran platformon en la projekto MCUXpresso por efektivigi vian GUI-aplikaĵon.
La simpla kaj rapida metodo estas kloni la nunan aplikan projekton prezentitan sur la inteligenta HMI-platformo.
La lifta apo estas la pli bona elekto kiel la klonita fonto ĉar ĝi havas simplan efektivigon.
Por krei vian projekton, sekvu la paŝojn sube:
- Kopiu kaj algluu la dosierujon "lifto" en la klonita inteligenta HMI fontkodo de GitHub. Alinomu ĝin al via.
Por ĉi tiu ekzample, ni elektis "slider_progress", sekvante la nomon de la GUI ekzample. - En la dosierujo "slider_progress", enigu la dosierujon "lvgl_vglite_lib" enhavantan la projekton LVGL GUI.
- Malfermu la projekto-rilatan files .cproject kaj .project kaj anstataŭigu la tutan ĉenon "lifto" per via projekta nomo ĉeno "slider_progress".
- Faru la similan anstataŭaĵon por ambaŭ projektoj files en la dosierujoj "cm4" kaj "cm7".
Agordu vian projekton per klonado de la lifta projekto files.
Kiel montrite en Figuro 2 viaj projektoj nun povas esti malfermitaj en MCUXpresso IDE en la sama maniero kiel la lifta projekto.
Figuro 2. Agordo de projektoj sur MCUXpresso
Konstruu la rimedojn por inteligenta HMI
Ĝenerale, bildoj estas uzataj en GUI (sonoj uzataj ankaŭ en voĉaj invitoj).
La bildoj kaj sonoj estas nomitaj rimedoj, stokitaj en fulmo en sinsekvo. Antaŭ programi ilin per fulmo, la rimedoj devus esti konstruitaj en binaron file.
La ĉefa laboro estas anstataŭigi la nomojn de la referenca apo (lifto) per via.
Por fari tion, sekvu la paŝojn sube:
- Forigu la klonitan "bildojn" dosierujon sub slider_progress/resource.
- Kopiu la dosierujon "bildoj" sub \generated en via projekto GUI Guider.
- Algluu ĝin sub la slider_progress/resource (Tio estas, uzu viajn proprajn bildojn anstataŭ tiujn de la lifta programo.).
- Forigu la *.mk file uzata por GUI Guider en la dosierujo "bildoj".
- Alinomi la files elevator_resource.txt, elevator_resource_build.bat, kaj elevator_resource_build.sh en la dosierujo "rimedo" al via projektonomo slider_progress_resource.txt, slider_progress_resource_build.bat, kaj slider_progress_resource_build.sh.
Rimarko:- elevator_resource.txt: enhavanta la vojojn kaj nomojn de ĉiuj rimedoj (bildoj kaj sonoj) uzataj en la apo.
- elevator_resource_build.bat/elevator_resource_build.sh: uzata por konstrui la rimedojn en Vindozo kaj Linukso laŭe.
- Post malfermi la slider_progress_resource.txt file, anstataŭigu ĉiujn kordojn "lifto" per "slider_progress".
- Forigu ĉiujn malnovajn bildojn kaj aldonu novajn kun via bildo file nomoj (ĉi tie estas "_scan_example_597x460.c"), kiel bildo ../../slider_progress/resource/images/_scan_example_597x460.c.
- Malfermu la slider_progress_resource.bat file por Vindozo kaj anstataŭigu ĉiujn ŝnurojn "lifto" per "slider_progress". Faru la samon al la file slider_progress_resource.sh por Linukso.
- Duoble alklaku la aron file slider_progress_resource_build.bat por Vindozo.
- La komanda fenestro aperas kaj aŭtomate funkcias por generi la bildan rimedon binaron file enhavante la bildajn datumojn kaj rimedan alirinformojn enhavantajn C-kodojn por agordi ĉiujn bildlokojn en fulmo kaj la totalan bajtan grandecon de la bildoj.
Post montri la mesaĝon "Resource Generation Complete!", la bilda rimedo binara file nomita slider_progress_resource.bin kaj la rimeda aliro informo file nomitaj resource_information_table.txt estas generitaj en la dosierujo "rimedo".
La bilda rimedo binara file estas programita sur fulmo, kaj la rimeda aliro informo estas uzata por aliri la rimedojn sur inteligenta HMI (vidu Sekcion 3.4.1).
Integri LVGL GUI-aplikon en inteligentan HMI
La aplikaĵkodoj de LVGL GUI (ĉi tie estas la SliderProgress GUI ekzample) kaj la konstruitaj bildaj rimedoj, inkluzive de alirinformoj, povas esti aldonitaj al la inteligenta HMI.
Aldone, por efektivigi vian LVGL GUI-aplikaĵon sur inteligenta HMI, necesas aldoni la HAL-aparatojn rilatajn al LVGL GUI kaj la rilatajn agordojn.
La LVGL GUI-apliko funkcias sur la M4-kerno, kaj la rilata efektivigo estas preskaŭ en la M4-projekto "sln_smart_tlhmi_slider_progress_cm4".
La detalaj paŝoj estas priskribitaj en pliaj subsekcioj.
Aldonu LVGL GUI-kodojn kaj rimedojn
La aplikaĵkodoj de LVGL GUI uzataj por inteligenta HMI estas en la dosierujoj "personaj" kaj "generitaj" en la projekto GUI Guider.
Por aldoni la kodojn al inteligenta HMI, sekvu la paŝojn sube:
- Anstataŭigu custom.c kaj custom.h sub slider_progress/cm4/custom/ per tiuj en la dosierujo "custom" en la projekto GUI Guider.
- Forigu la "generitajn" dosierujojn de slider_progress/cm4/.
Poste kopiu la "generitan" dosierujon de la projekto GUI Guider kaj algluu ĝin al slider_progress/cm4/. - Forigu la dosierujojn "bildo" kaj "mPythonImages" kaj ĉiujn files *.mk kaj *.py en la "generita" dosierujo.
Kiel menciite supre, la bildoj en la dosierujo "bildo" estas konstruitaj en rimedan binaron file, do la dosierujo "bildo" ne estas bezonata.
La dosierujo "mPythonImages" kaj ĉiuj files *.mk kaj *.py estas nedezirataj por la inteligenta HMI. - Por aldoni mutex-kontrolon bazitan sur la inteligenta HMI-platformo kaj agordi la bildlokojn sur fulmo, modifi la file custom.c sur MCUXpresso IDE.
Ĉi tiuj ĉiuj estas difinitaj de RT_PLATFORM. - Malfermu liftoprojekton sur MCUXpresso IDE. Serĉu la makro-difinon RT_PLATFORM en la custom.c sub sln_smart_tlhmi_elevator_cm4 > custom kaj kopiu ĉiujn kodliniojn de #if difinita (RT_PLATFORM) al #endif, kaj algluu ilin en la file custom.c sub sln_smart_tlhmi_slider_progress_cm4 > kutimo.
- Forigu la kodliniojn sub #else enhavantaj #else ĉar ili estas uzataj por lifta GUI.
La aldonitaj kodlinioj kovras la jenajn:
- La inkluzivi files estas kiel sekvas:
- La varia deklaro estas kiel sekvas:
- La C-kodoj en la funkcio custom_init() estas jenaj:
- La C-kodoj por la funkcioj _takeLVGLMutex(), _giveLVGLMutex(), kaj setup_imgs() kie la lokoj de ĉiuj bildoj estas fiksitaj.
- La inkluzivi files estas kiel sekvas:
- Anstataŭigi kodojn en la funkcio setup_imgs() kun la loka agordo-kodoj por bildoj en la resource_information_table.txt file (vidu Sekcion 3.3).
En ĉi tiu aplika noto, estas nur unu bildrimedo kiu estas agordita kiel: _scan_example_597x460.data = (bazo + 0); Post fari ĝin, la funkcio setup_imgs() montriĝas kiel sube:
- Por aldoni la makroan difinon kaj funkcio-deklaron rilatan al custom.c, modifi la custom.h file sub sln_smart_tlhmi_slider_progress_cm4 > kutimo, kiel montrite sube:
- Por difini la bildojn en via aplikaĵo LVGL GUI, modifi la lvgl_images_internal.h file sub sln_smart_tlhmi_slider_progress_cm4 > kutimo.
- Malfermu unu bildon *.c file (jen _scan_ekzample_597x460.c) sub /generated/ image/ en la projekto GUI Guider.
Kopiu la bildodifinon ĉe la fino de la file. Algluu ĝin al la lvgl_images_internal.h file post forigo de ĉiuj originalaj difinoj pri la bildoj por la lifta aplikaĵo. - Forigi .data = _scan_example_597x460_map en la tabelo ĉar la .data estas agordita en la funkcio setup_imgs().
La tabelo estas difinita finfine en la lvgl_images_internal.h file, kiel montrite sube:
Rimarko: Ripetu la suprajn operaciojn por ĉiuj bildoj files unu post alia se estas multbildaj files.
- Malfermu unu bildon *.c file (jen _scan_ekzample_597x460.c) sub /generated/ image/ en la projekto GUI Guider.
- Agordu la totalan grandecon de la bilda rimedo difinante la makroan difinon APP_LVGL_IMGS_SIZE en la app_config.h file sub sln_smart_tlhmi_slider_progress_cm7 > fonto kun la nova grandeco de la bildoj.
Ĉi tiu nova grandeco haveblas en la konstruita rimedo resource_information_table.txt file.
Aldonu HAL-aparatojn kaj agordojn
Surbaze de la kadra arkitekturo, du HAL-aparatoj (ekranaj kaj eligo-aparatoj) estas dizajnitaj por LVGL GUI-apliko.
La efektivigoj de la du aparatoj estas malsamaj depende de malsamaj LVGL GUI-aplikoj kvankam ekzistas oftaj arkitekturdezajnoj por ili.
Ili estas efektivigitaj aparte en du files.
Tial, ĝi devas kloni la du files de la nuna lifta aplikaĵo kaj modifi vian LVGL GUI-aplikaĵon.
Poste, ebligu viajn aparatojn en la agordo file.
Via LVGL GUI-aplikaĵo estas konstruita sur la inteligenta HMI-platformo bazita sur la kadro.
La detalaj modifoj povas esti faritaj en la MCUXpresso IDE, kiel montrite sube:
- Efektivigi ekranon HAL-aparaton
- Kopiu kaj algluu la hal_display_lvgl_elevator.c file sub la grupo sln_smart_tlhmi_slider_progress_cm4 > kadro > hal > montri en projekto MCUXpresso. Alinomi ĝin al hal_display_lvgl_sliderprogress.c por via aplikaĵo.
- Malfermu la file hal_display_lvgl_sliderprogress.c kaj anstataŭigu ĉiujn ĉenojn "lifto" per via aplikaĵoĉeno "SliderProgress" en la file.
- Efektivigi eligan HAL-aparaton
- Kopiu kaj algluu la hal_output_ui_elevator.c file sub la grupo sln_smart_tlhmi_slider_progress_cm4 > kadro > hal > eligo pri la projekto MCUXpresso. Alinomi ĝin al hal_output_ui_sliderprogress.c por via aplikaĵo.
- Malfermu la file hal_output_ui_sliderprogress.c. Forigu ĉiujn funkciojn rilatajn al la lifta aplikaĵo krom la jenaj bazaj komunaj funkcioj de la HAL-aparato:
HAL_OutputDev_UiElevator_Init();
HAL_OutputDev_UiElevator_Deinit();
HAL_OutputDev_UiElevator_Start ();
HAL_OutputDev_UiElevator_Stop ();
HAL_OutputDev_UiElevator_InferComplete ();
HAL_OutputDev_UiElevator_InputNotify ();
Krome, rezervu la deklarojn de la malsupraj du funkcioj:
APP_OutputDev_UiElevator_InferCompleteDecode ();
APP_OutputDev_UiElevator_InputNotifyDecode (); - Purigu la funkcion HAL_OutputDev_UiElevator_InferComplete() por konstrui vian aplikaĵon poste.
En la funkcio, forigu ambaŭ funkciovokojn _InferComplete_Vision() kaj _InferComplete_Voice() uzatajn por pritrakti la rezultojn de vizio kaj voĉalgoritmoj por lifta aplikaĵo. - Purigu la funkcion HAL_OutputDev_UiElevator_InputNotify() kaj konservu la bazan arkitekturon por plua aplikaĵa disvolviĝo.
Fine, la funkcio aspektas jene:
- Forigu ĉiujn variablodeklarojn, inkluzive de la enum kaj tabelo, krom tiuj s_UiSurface kaj s_AsBuffer[] uzataj por la komunaj efektivigoj.
- Anstataŭigu ĉiujn ĉenojn "lifto" per via aplikaĵoĉeno "SliderProgress".
- Ebligu kaj agordu ambaŭ HAL-aparatojn
- Malfermu la tabulo_define.h file sub sln_smart_tlhmi_slider_progress_cm4 > tabulo.
Anstataŭigu ĉiujn ŝnurojn "lifto" per via aplikaĵa ĉeno "SliderProgress" en la file.
Ĝi ebligas kaj agordas la ekranajn kaj eligajn HAL-aparatojn laŭ la difinoj ENABLE_DISPLAY_DEV_LVGLSliderProgress kaj ENABLE_OUTPUT_DEV_UiSliderProgress. - Malfermu la lvgl_support.c file sub sln_smart_tlhmi_slider_progress_cm4 > tabulo. Anstataŭigu ĉiujn ĉenojn "lifto" per via aplikaĵoĉeno "SliderProgress" en la file.
Ĝi ebligas fotilon preview sur GUI ĉe la ekranŝofornivelo.
- Malfermu la tabulo_define.h file sub sln_smart_tlhmi_slider_progress_cm4 > tabulo.
- Registru ambaŭ HAL-aparatojn
Malfermu la ĉefan M4 sln_smart_tlhmi_cm4.cpp file sub sln_smart_tlhmi_slider_progress_cm4 > fonto.
Anstataŭigu ĉiujn ŝnurojn "lifto" per via aplikaĵa ĉeno "SliderProgress" en la file.
Ĝi registras la ekranon kaj eligon HAL-aparaton por via aplikaĵo anstataŭ la lifta aplikaĵo.
Tial, la integriĝo estas kompletigita por ruli la bazan LVGL GUI-aplikaĵon sur inteligenta HMI.
Depende de pli da postuloj por la aplikiĝo, pli da efektivigoj povas esti aldonitaj surbaze de la integra baza aplikaĵo.
Manifestacio
La aplikaĵa pruvo "slider_progress" estas efektivigita kune kun ĉi tiu aplika noto.
Post malfermi la demo-programaran pakon, metu la sube files kaj dosierujo en la inteligentan HMI-programaron:
- La file hal_display_lvgl_sliderprpgress.c sub [demo]\framework\hal\display\ al la vojo [inteligenta HMI]\framework\hal\display\
- La file hal_output_ui_slider_progress.c sub [demo]\framework\hal\output\ al la vojo [inteligenta HMI]\framework\hal\output\
- La dosierujo "slider_progress" al la radika vojo de [inteligenta HMI]\
La projektoj povas esti malfermitaj sur MCUXpresso IDE, same kiel la kafmaŝino/lifta aplikaĵo prezentita sur la inteligenta HMI-platformo.
Post programado de la konstruita *.axf file al la adreso 0x30100000 kaj la binara rimedo file al la adreso 0x30700000, la LVGL GUI-demo povas funkcii sukcese sur la inteligenta HMI-disvolva tabulo (vidu Figuro 3 por la ekrano).
Notu: Se vi uzas v1.7.0 de MCUXpresso IDE, ebligu la "Administri ligilon-skripton" en la Agordo> MCU C++ Ligilo> Administrita Ligila Skripto antaŭ ol konstrui la projekton CM4.
Figuro 3. LVGL GUI-demo-ekrano sur inteligenta HMI-disvolva tabulo
Historio de revizioj
Historio de revizioj resumas la reviziojn al ĉi tiu dokumento.
Tabelo 1. Historio de revizioj
Numero de revizio | Dato | Substantivaj ŝanĝoj |
1 | 16 junio 2023 | Komenca eldono |
Notu pri la fontkodo en la dokumento
ExampLa kodo montrita en ĉi tiu dokumento havas la jenan kopirajton kaj permesilon BSD-3-Clause:
Kopirajto 2023 NXP Redistribuo kaj uzo en fonto kaj binaraj formoj, kun aŭ sen modifo, estas permesitaj kondiĉe ke la sekvaj kondiĉoj estas plenumitaj:
- Redistribuoj de fontkodo devas konservi la ĉi-supran kopirajt-avizon, ĉi tiun liston de kondiĉoj kaj la sekvan malgarantion.
- Redistribuoj en binara formo devas reprodukti la ĉi-supran kopirajtan avizon, ĉi tiu listo de kondiĉoj kaj la sekva malgarantio en la dokumentado kaj/aŭ aliaj materialoj devas esti provizitaj kun la distribuo.
- Nek la nomo de la posedanto de la aŭtorrajto nek la nomoj de ĝiaj kontribuantoj povas esti uzataj por apogi aŭ reklami produktojn derivitajn de ĉi tiu programaro sen specifa antaŭa skriba permeso.
ĈI TIU PROGRAMO ESTAS PROVIZITA DE LA KOPIRATAJTOJN KAJ KONTRIBUTOJ "KIAL ESTAS" KAJ ĈIUJ ESPRESA AŬ IMPLITA GARANTIOJ, INKLUDE, SED NE LIMIGITE AL, LA IMPLITAJ GARANTIOJ PRI KOMERKABLECO KAJ TAŬGECO POR APARTA CELO ESTAS RENKLAITA.
EN NENIAJ OKAZOJ LA KOPRAJTOJTANTO AŬ KONTRIBUANTOJ RESPONDOS PRI IUJ REKTA, NEREKTA, EKZENDA, SPECIALA, EKZEMPLA AŬ KONSEKVAJ damaĝoj (INkluzive, SED NE LIMIGITA AL, AKIRADO DE ANstataŭaj VAROJ AŬ SERVOJ, PERDO DE SERVOJ; AŬ KOMERCISTO) TAMEN KaŭZITA KAJ ĈU TEORIO DE RESPONVO, ĈU KONTRALE, STRIKA RESPONVO, AŬ kulpigo (INkluzive de NEGLECO AŬ ALIE) EKZISTANTA IUJMANERO EL LA UZO DE ĈI TIU PROGRAMARO, Eĉ SE KONSILOJ DE LA POSVO.
damaĝo.
Juraj informoj
Difinoj
Malneto: Malneta stato sur dokumento indikas, ke la enhavo ankoraŭ estas sub interna review kaj kondiĉigita de formala aprobo, kiu povas rezultigi modifojn aŭ aldonojn.
NXP Semiconductors ne donas ajnajn reprezentojn aŭ garantiojn pri la precizeco aŭ kompleteco de informoj inkluzivita en skiza versio de dokumento kaj devas havi neniun respondecon por la sekvoj de uzo de tiaj informoj.
Malgarantioj
Limigita garantio kaj respondeco: Informoj en ĉi tiu dokumento supozeble estas precizaj kaj fidindaj.
Tamen, NXP Semiconductors ne donas ajnajn reprezentojn aŭ garantiojn, esprimitajn aŭ implicitajn, pri la ĝusteco aŭ kompleteco de tiaj informoj kaj ne havas respondecon pri la sekvoj de uzo de tiaj informoj.
NXP Semiconductors ne prenas respondecon pri la enhavo en ĉi tiu dokumento se provizite de informfonto ekster NXP Semiconductors.
En neniu okazo NXP Semiconductors respondecos pri ajnaj nerektaj, hazardaj, punaj, specialaj aŭ konsekvencaj damaĝoj (inkluzive - sen limigo - perditaj profitoj, perditaj ŝparaĵoj, komerca interrompo, kostoj rilataj al la forigo aŭ anstataŭigo de iuj produktoj aŭ relaboraj kostoj), ĉu aŭ ne tiaj damaĝoj estas bazitaj sur delikto (inkluzive de neglektemo), garantio, rompo de kontrakto aŭ ajna alia laŭleĝa teorio.
Malgraŭ ajnaj damaĝoj, kiujn kliento povus kaŭzi ial ajn, la entuta kaj akumula respondeco de NXP Semiconductors al kliento por la produktoj ĉi tie priskribitaj estos limigita laŭ la Kondiĉoj kaj kondiĉoj de komerca vendo de NXP Semiconductors.
Rajto fari ŝanĝojn: NXP Semiconductors rezervas la rajton fari ŝanĝojn al informoj publikigitaj en ĉi tiu dokumento, inkluzive sen limigo de specifoj kaj produktaj priskriboj, iam ajn kaj sen avizo.
Ĉi tiu dokumento anstataŭas kaj anstataŭigas ĉiujn informojn provizitajn antaŭ la ĉi-publikigo.
Taŭgeco por uzo: NXP Semiconductors-produktoj ne estas dezajnitaj, rajtigitaj aŭ garantiitaj por esti taŭgaj por uzo en vivsubteno, vivkritikaj aŭ sekureckritikaj sistemoj aŭ ekipaĵoj, nek en aplikoj kie fiasko aŭ misfunkciado de NXP Semiconductors-produkto povas racie esti atendita rezultigi personan. vundo, morto aŭ severa posedaĵo aŭ media damaĝo.
NXP Semiconductors kaj ĝiaj provizantoj akceptas neniun respondecon por inkludo kaj/aŭ uzo de NXP Semiconductors-produktoj en tiaj ekipaĵoj aŭ aplikoj kaj tial tia inkludo kaj/aŭ uzo estas je la propra risko de la kliento.
Aplikoj: Aplikoj kiuj estas priskribitaj ĉi tie por iu el ĉi tiuj produktoj estas nur por ilustraj celoj.
NXP Semiconductors faras neniun reprezenton aŭ garantion ke tiaj aplikoj estos taŭgaj por la specifita uzo sen plia testado aŭ modifo.
Klientoj respondecas pri la dezajno kaj funkciado de siaj aplikoj kaj produktoj uzante produktojn de NXP Semiconductors, kaj NXP Semiconductors akceptas neniun respondecon pri ajna helpo kun aplikoj aŭ klienta produktodezajno.
Estas la sola respondeco de kliento determini ĉu la produkto de NXP Semiconductors taŭgas kaj taŭgas por la aplikoj kaj produktoj de la kliento planitaj, same kiel por la planita apliko kaj uzo de la triaparta(j) kliento(j) de la kliento.
Klientoj devas provizi taŭgajn dezajnojn kaj operaciajn sekurigilojn por minimumigi la riskojn asociitajn kun siaj aplikoj kaj produktoj.
NXP Semiconductors ne akceptas ajnan respondecon rilate al iu ajn defaŭlto, damaĝo, kosto aŭ problemo, kiu estas bazita sur iu malforto aŭ defaŭlto en la aplikoj aŭ produktoj de la kliento, aŭ la apliko aŭ uzo de la triaparta(j) kliento(j) de la kliento.
Kliento respondecas pri fari ĉiujn necesajn provojn por la aplikoj kaj produktoj de la kliento uzante produktojn de NXP Semiconductors por eviti defaŭlton de la aplikoj kaj la produktoj aŭ de la aplikaĵo aŭ uzo de la triaparta(j) kliento(j) de la kliento. NXP ne akceptas ajnan respondecon ĉi-rilate
Kondiĉoj kaj kondiĉoj de komerca vendo: La produktoj de NXP Semiconductors estas venditaj sub la ĝeneralaj kondiĉoj de komerca vendo, kiel eldonita ĉe http://www.nxp.com/profile/terms, krom se alie konsentite en valida skriba individua interkonsento.
En la okazo ke individua interkonsento estas finita nur la terminoj kaj kondiĉoj de la respektiva interkonsento validas.
NXP Semiconductors eksplicite kontraŭas apliki la ĝeneralajn kondiĉojn de la kliento koncerne la aĉeton de produktoj de NXP Semiconductors fare de kliento.
Eksportkontrolo: Ĉi tiu dokumento same kiel la objekto(j) priskribitaj ĉi tie povas esti submetitaj al reguloj pri eksporta kontrolo.
Eksporto povus postuli antaŭan rajtigon de kompetentaj aŭtoritatoj.
Taŭgeco por uzo en ne-aŭtaj kvalifikitaj produktoj: Krom se ĉi tiu datumfolio eksplicite deklaras, ke ĉi tiu specifa NXP Semiconductors-produkto estas aŭtomobila kvalifikita, la produkto ne taŭgas por aŭtomobila uzo.
Ĝi estas nek kvalifikita nek provita laŭ aŭtomobilaj provoj aŭ aplikaj postuloj. NXP Semiconductors akceptas neniun respondecon por inkludo kaj/aŭ uzo de ne-aŭtaj kvalifikitaj produktoj en aŭtaj ekipaĵoj aŭ aplikoj.
En la okazo, ke kliento uzas la produkton por dezajno kaj uzo en aŭtaj aplikoj laŭ aŭtaj specifoj kaj normoj, kliento (a) devas uzi la produkton sen la garantio de NXP Semiconductors pri la produkto por tiaj aŭtaj aplikoj, uzo kaj specifoj, kaj ( b) kiam ajn kliento uzas la produkton por aŭtomobilaj aplikoj preter la specifoj de NXP Semiconductors tia uzo devas esti nur je la propra risko de kliento, kaj (c) kliento plene kompensas NXP Semiconductors por ajna kompensdevo, damaĝoj aŭ malsukcesaj produktaj reklamoj rezultantaj de klienta dezajno kaj uzo de la produkto por aŭtaj aplikoj preter la norma garantio de NXP Semiconductors kaj la produktospecifoj de NXP Semiconductors.
Tradukoj: Ne-angla (tradukita) versio de dokumento, inkluzive de la laŭleĝaj informoj en tiu dokumento, estas nur por referenco.
La angla versio regos en kazo de iu diferenco inter la tradukita kaj angla versioj.
Sekureco: Kliento komprenas, ke ĉiuj NXP-produktoj povas esti submetitaj al neidentigitaj vundeblecoj aŭ povas subteni establitajn sekurecajn normojn aŭ specifojn kun konataj limigoj.
Kliento respondecas pri la dezajno kaj operacio de ĝiaj aplikoj kaj produktoj dum iliaj vivocikloj por redukti la efikon de ĉi tiuj vundeblecoj sur la aplikoj kaj produktoj de kliento.
La respondeco de kliento ankaŭ etendiĝas al aliaj malfermaj kaj/aŭ proprietaj teknologioj subtenataj de NXP-produktoj por uzo en la aplikoj de kliento.
NXP ne akceptas respondecon por ajna vundebleco.
Kliento devas regule kontroli sekurecajn ĝisdatigojn de NXP kaj sekvi taŭge.
Kliento elektas produktojn kun sekurecaj trajtoj kiuj plej bone plenumas regulojn, regularojn kaj normojn de la celita aplikaĵo kaj faras la finfinajn dezajnajn decidojn pri ĝiaj produktoj kaj respondecas nur pri plenumo de ĉiuj laŭleĝaj, reguligaj kaj sekurecaj postuloj pri ĝiaj produktoj, sendepende. de ajna informo aŭ subteno kiu povas esti provizita de NXP.
NXP havas Produktan Sekurecan Incident Response Team (PSIRT) (atingeblan ĉe PSIRT@nxp.com) kiu administras la enketon, raportadon kaj solvo-liberigon al sekurecaj vundeblecoj de NXP-produktoj.
NXP BV: NXP BV ne estas operaciumo kaj ĝi ne distribuas aŭ vendas produktojn.
Varmarkoj
Noto: Ĉiuj referencitaj markoj, produktnomoj, servnomoj kaj varmarkoj estas la posedaĵo de siaj respektivaj posedantoj.
NXP: vortmarko kaj emblemo estas varmarkoj de NXP BV
i.MX: estas varmarko de NXP BV
KLIENTA SUBTENO
Por pliaj informoj, bonvolu viziti: http://www.nxp.com
Dokumentoj/Rimedoj
![]() |
NXP AN13948 Integrante LVGL GUI-Aplikon en Smart HMI-Platformon [pdf] Uzanto-manlibro AN13948 Integrante LVGL GUI-Aplikon en Smart HMI-Platformon, AN13948, Integrante LVGL-GUI-Aplikon en Smart HMI-Platformon |