NXP AN13948 Integrarea aplicației GUI LVGL în manualul de utilizare a platformei Smart HMI
NXP AN13948 Integrarea aplicației GUI LVGL în platforma Smart HMI

Introducere

NXP a lansat un kit de dezvoltare a soluției numit SLN-TLHMI-IOT. Se concentrează pe aplicațiile HMI inteligente care conțin două aplicații – aparat de cafea și lift (aplicația smart panel va fi disponibilă în curând).
Pentru a oferi informații utilizatorului, sunt incluse câteva documente de bază, de example, ghidul dezvoltatorului.
Ghidul prezintă designul software de bază și arhitectura aplicațiilor care acoperă toate componentele soluției.
Aceste componente includ bootloader, framework și design HAL pentru a ajuta dezvoltatorii să-și implementeze mai ușor și mai eficient aplicațiile folosind SLN-TLHMI-IOT.

Pentru mai multe detalii despre documente și soluție, vizitați: Soluție NXP EdgeReady Smart HMI bazată pe i.MX RT117H cu ML Vision, Voice și UI grafică.

Cu toate acestea, introducerea se concentrează pe idei și utilizarea de bază. Din cauza conformității software-ului bazat pe cadru, dezvoltatorilor nu este încă ușor să știe cum să-și implementeze aplicațiile.
Pentru a accelera dezvoltarea, sunt necesare ghiduri suplimentare pentru a introduce modul de implementare a componentelor majore (de example, LVGL GUI, viziune și recunoaștere vocală) pas cu pas.
De example, clienții ar trebui să aibă propria lor aplicație GUI LVGL diferită de aplicațiile prezente în soluție.
După ce și-au implementat GUI LVGL cu GUI Guider furnizat de NXP, aceștia trebuie să îl integreze în platforma software inteligentă HMI bazată pe cadru.

Această notă de aplicație descrie cum se integrează aplicația LVGL GUI dezvoltată de utilizator în platforma software inteligentă HMI bazată pe cadru.
Codurile de referință sunt, de asemenea, prezentate împreună cu această notă de aplicare.

Nota: Această notă privind aplicația nu explică cum se dezvoltă interfața grafică bazată pe LVGL cu instrumentul software GUI Guider.

Pesteview al LVGL și GUI Guider este descris în Secțiunea 1.1 și Secțiunea 1.2.

Biblioteca grafică ușoară și versatilă
Light and Versatile Graphics Library (LVGL) este o bibliotecă grafică gratuită și open-source.
Oferă tot ceea ce aveți nevoie pentru a crea o interfață grafică încorporată cu elemente grafice ușor de utilizat, efecte vizuale frumoase și o amprentă redusă de memorie.

Ghid GUI
GUI Guider este un instrument de dezvoltare a interfeței grafice cu utilizatorul ușor de utilizat de la NXP, care permite dezvoltarea rapidă a afișajelor de înaltă calitate cu biblioteca grafică LVGL open-source.
Editorul drag-and-drop al GUI Guider facilitează utilizarea numeroaselor caracteristici ale LVGL. Aceste caracteristici includ widget-uri, animații și stiluri pentru a crea o interfață grafică cu codare minimă sau fără codare.
Făcând clic pe un buton, puteți rula aplicația într-un mediu simulat sau o puteți exporta într-un proiect țintă.
Codul generat de GUI Guider poate fi adăugat cu ușurință la proiectul dvs., accelerând procesul de dezvoltare și permițându-vă să adăugați o interfață de utilizator încorporată la aplicația dvs. fără probleme.
GUI Guider poate fi utilizat gratuit cu MCU-uri NXP de uz general și crossover și include șabloane de proiect încorporate pentru mai multe platforme acceptate.
Pentru a afla mai multe despre dezvoltarea LVGL și GUI pe GUI Guider, vizitați https://lvgl.io/ și GUI Guider.

Mediu de dezvoltare

Pregătiți și configurați mediul de dezvoltare pentru dezvoltarea și integrarea unei aplicații GUI în platforma inteligentă HMI.

Mediu hardware

Următorul hardware este necesar pentru demonstrația după dezvoltare:

  • Kitul de dezvoltare inteligent HMI bazat pe NXP i.MX RT117H
  • SEGGER J-Link cu un adaptor Cortex-M cu 9 pini

Mediu software
Instrumentele software și versiunile acestora utilizate în această notă de aplicație sunt prezentate, după cum urmează:

  • GUI Guider V1.5.0-GA
  • MCUXpresso IDE V11.7.0
    Nota: O eroare în versiunile anterioare 11.7.0 nu permite încorporarea adecvată a proiectelor multicore.
    Prin urmare, este necesară versiunea 11.7.0 sau mai mare.
  • RT1170 SDK V2.12.1
  • Platformă software SLN-TLHMI-IOT – coduri sursă inteligente HMI lansate în depozitul nostru oficial GitHub

Pentru a afla mai multe despre cum să configurați și să instalați mediul hardware și software, consultați Noțiuni introductive despre SLN-TLHMI-IOT (document MCU-SMHMI-GSG).

Integrați aplicația LVGL GUI în platforma inteligentă HMI

Platforma software inteligentă HMI este construită pe arhitectura cadru. Dezvoltatorilor le este dificil să adauge aplicația lor LVGL GUI la platforma software inteligentă HMI, chiar dacă citesc ghidul dezvoltatorului și știu despre cadru.
Următoarele secțiuni explică modul de implementare pas cu pas.

Dezvoltați aplicația LVGL GUI pe GUI Guider
După cum am menționat mai sus, modul de dezvoltare a interfeței grafice LVGL pe GUI Guider nu este accentul în această notă de aplicație.
Dar un GUI example este necesar.
Prin urmare, un șablon simplu GUI numit Slider Progress furnizat în GUI Guider este selectat ca GUI example pentru o configurare rapidă.
Șablonul Slider Progress GUI este utilizat deoarece conține o imagine care este necesară pentru a demonstra construirea resurselor de imagine în aplicație.
GUI exampfișierul este foarte ușor de generat: Pentru a crea un proiect cu biblioteca LVGL actualizată V8.3.2 și șablonul de placă ca MIMXRT1176xxxxx, consultați Ghidul utilizatorului GUI Guider (document GUIGUIDERUG).
Figura 1 prezintă setările proiectului.

Nota: Tipul de panou trebuie selectat, așa cum se arată în caseta roșie din Figura 1, deoarece este utilizat pe placa de dezvoltare curentă.

După crearea proiectului, rulați simulatorul pentru a genera codurile GUI LVGL aferente și pentru a construi și proiectul.
Puteți verifica efectul GUI de example pe simulator.

Figura 1. Configurarea proiectului GUI pe GUI Guider
Setarea proiectului

Creați-vă proiectul pe smart HMI
Nota: Mai întâi, creați-vă proiectul pe MCUXpresso IDE.

După GUI LVGL exampa fost construit, poate merge la ținta principală pentru a-l integra în platforma software inteligentă HMI pe proiectul MCUXpresso pentru implementarea aplicației dvs. GUI.
Metoda simplă și rapidă este de a clona proiectul de aplicație curent prezentat pe platforma smart HMI.
Aplicația lift este alegerea mai bună ca sursă clonată, deoarece are o implementare simplă.

Pentru a vă crea proiectul, urmați pașii de mai jos:

  1. Copiați și inserați folderul „ascensor” în codul sursă HMI inteligent clonat din GitHub. Redenumiți-l cu al dvs.
    Pentru acest example, am ales „slider_progress”, după numele GUI example.
  2. În folderul „slider_progress”, introduceți folderul „lvgl_vglite_lib” care conține proiectul LVGL GUI.
  3. Deschideți documentul legat de proiect files .cproject și .project și înlocuiți tot șirul „elevator” cu șirul de nume al proiectului „slider_progress”.
  4. Faceți o înlocuire similară pentru ambele proiecte files în folderele „cm4” și „cm7”.
    Configurați proiectul prin clonarea proiectului liftului files.
    După cum se arată în Figura 2 proiectele dvs. pot fi acum deschise în MCUXpresso IDE în același mod ca și proiectul liftului.

Figura 2. Configurarea proiectelor pe MCUXpresso
Configurarea proiectului

Construiți resursele pentru HMI inteligent
În general, imaginile sunt folosite în GUI (sunetele folosite și în instrucțiunile vocale).
Imaginile și sunetele sunt numite resurse, stocate într-un bliț în secvență. Înainte de a le programa pe flash, resursele ar trebui să fie încorporate într-un binar file.
Sarcina principală este să înlocuiți numele aplicației de referință (lift) cu ale dvs.

Pentru a face acest lucru, urmați pașii de mai jos:

  1. Ștergeți folderul „imagini” clonat din slider_progress/resource.
  2. Copiați folderul „imagini” sub \generated în proiectul dumneavoastră GUI Guider.
  3. Lipiți-l sub slider_progress/resource (Adică folosiți propriile imagini, mai degrabă decât cele din aplicația lift.).
  4. Ștergeți codul *.mk file utilizat pentru GUI Guider în folderul „imagini”.
  5. Redenumiți files elevator_resource.txt, elevator_resource_build.bat și elevator_resource_build.sh în folderul „resource” la numele proiectului slider_progress_resource.txt, slider_progress_resource_build.bat și slider_progress_resource_build.sh.
    Remarcă:
    • elevator_resource.txt: care conține căile și numele tuturor resurselor (imagini și sunete) utilizate în aplicație.
    • elevator_resource_build.bat/elevator_resource_build.sh: utilizat pentru construirea resurselor în Windows și Linux în consecință.
  6. După deschiderea slider_progress_resource.txt file, înlocuiți toate șirurile „elevator” cu „slider_progress”.
  7. Eliminați toate imaginile vechi și adăugați altele noi împreună cu imaginea dvs file nume (aici este „_scan_example_597x460.c”), cum ar fi imaginea ../../slider_progress/resource/images/_scan_example_597x460.c.
  8. Deschideți slider_progress_resource.bat file pentru Windows și înlocuiți toate șirurile „elevator” cu „slider_progress”. Faceți același lucru cu file slider_progress_resource.sh pentru Linux.
  9. Faceți dublu clic pe lot file slider_progress_resource_build.bat pentru Windows.
  10. Apare fereastra de comandă și rulează automat pentru a genera binarul de resurse de imagine file care conțin datele de imagine și informații de acces la resurse care conțin coduri C pentru a seta toate locațiile imaginii în flash și dimensiunea totală de octeți a imaginilor.
    După afișarea mesajului „Generare resurse finalizată!”, binarul resursei de imagine file numit slider_progress_resource.bin și informațiile de acces la resurse file numite resource_information_table.txt sunt generate în folderul „resource”.
    Binarul de resurse de imagine file este programat pe flash, iar informațiile de acces la resurse sunt folosite pentru a accesa resursele pe smart HMI (vezi Secțiunea 3.4.1).

Integrați aplicația LVGL GUI în HMI inteligent
Codurile aplicației LVGL GUI (aici este SliderProgress GUI example) și resursele de imagine construite, inclusiv informațiile de acces, pot fi adăugate la HMI inteligent.
În plus, pentru a implementa aplicația dvs. LVGL GUI pe HMI inteligent, este necesar să adăugați dispozitivele HAL legate de LVGL GUI și configurațiile aferente.
Aplicația LVGL GUI rulează pe nucleul M4, iar implementarea aferentă este aproape în proiectul M4 „sln_smart_tlhmi_slider_progress_cm4”.
Pașii detaliați sunt descriși în subsecțiunile ulterioare.

Adăugați coduri și resurse GUI LVGL
Codurile aplicației LVGL GUI utilizate pentru smart HMI se află în folderele „personalizat” și „generat” din proiectul GUI Guider.

Pentru a adăuga codurile la smart HMI, urmați pașii de mai jos:

  1. Înlocuiți custom.c și custom.h sub slider_progress/cm4/custom/ cu cele din folderul „custom” din proiectul GUI Guider.
  2. Eliminați folderele „generate” din slider_progress/cm4/.
    Apoi copiați folderul „generat” din proiectul GUI Guider și inserați-l în slider_progress/cm4/.
  3. Ștergeți folderele „image” și „mPythonImages” și toate files *.mk și *.py în folderul „generat”.
    După cum am menționat mai sus, imaginile din folderul „imagine” sunt încorporate într-un binar de resurse file, deci folderul „imagine” nu este necesar.
    Dosarul „mPythonImages” și toate files *.mk și *.py sunt nedorite pentru smart HMI.
  4. Pentru a adăuga control mutex bazat pe platforma HMI inteligentă și pentru a seta locațiile imaginii pe flash, modificați file custom.c pe MCUXpresso IDE.
    Toate acestea sunt definite de RT_PLATFORM.
  5. Deschideți proiectul de lift pe MCUXpresso IDE. Căutați definiția macro RT_PLATFORM în custom.c sub sln_smart_tlhmi_elevator_cm4 > custom și copiați toate liniile de cod de la #if defined(RT_PLATFORM) în #endif și inserați-le în file custom.c sub sln_smart_tlhmi_slider_progress_cm4 > custom.
  6. Ștergeți liniile de cod de sub #else care conțin #else, deoarece sunt folosite pentru GUI pentru lift.
    Liniile de cod adăugate acoperă următoarele:
    • Include files sunt după cum urmează:
      Cod și resurse

    • Declarația variabilei este următoarea:
      Cod și resurse
    • Codurile C din funcția custom_init() sunt după cum urmează:
      Cod și resurse
      Cod și resurse
    • Codurile C pentru funcțiile _takeLVGLMutex(), _giveLVGLMutex() și setup_imgs() unde sunt setate locațiile tuturor imaginilor.
  7. Înlocuiți codurile din funcția setup_imgs() cu codurile de setare a locației pentru imagini din resource_information_table.txt file (vezi Secțiunea 3.3).
    În această notă de aplicație, există o singură resursă de imagine care este configurată ca: _scan_example_597x460.data = (bază + 0); După ce ați făcut-o, funcția setup_imgs() este afișată după cum urmează:
    Cod și resurse
  8. Pentru a adăuga definiția macro și declarația funcției legate de custom.c, modificați custom.h file sub sln_smart_tlhmi_slider_progress_cm4 > personalizat, după cum se arată mai jos:
    Cod și resurse
  9. Pentru a defini imaginile în aplicația LVGL GUI, modificați lvgl_images_internal.h file sub sln_smart_tlhmi_slider_progress_cm4 > personalizat.
    • Deschide o imagine *.c file (aici este _scan_example_597x460.c) sub /generated/ image/ în proiectul GUI Guider.
      Copiați definiția imaginii la sfârșitul textului file. Lipiți-l în lvgl_images_internal.h file după ștergerea tuturor definițiilor originale despre imagini pentru aplicația lift.
    • Ștergeți .data = _scan_example_597x460_map în matrice, deoarece .data este setat în funcția setup_imgs().
      Matricea este definită în final în lvgl_images_internal.h file, după cum se arată mai jos:
      Cod și resurse
      Remarcă:
      Repetați operațiunile de mai sus pentru toată imaginea fileeste unul câte unul dacă există mai multe imagini files.
  10. Configurați dimensiunea totală a resursei de imagine prin definirea definiției macro APP_LVGL_IMGS_SIZE în app_config.h file sub sln_smart_tlhmi_slider_progress_cm7 > sursa cu noua dimensiune a imaginilor.
    Această nouă dimensiune este disponibilă în resursa construită resource_information_table.txt file.

Adăugați dispozitive și configurații HAL
Pe baza arhitecturii cadru, două dispozitive HAL (dispozitive de afișare și de ieșire) sunt proiectate pentru aplicația GUI LVGL.
Implementările celor două dispozitive sunt diferite în funcție de diferite aplicații GUI LVGL, deși există modele de arhitectură comune pentru ele.
Ele sunt implementate separat în două files.
Prin urmare, trebuie să cloneze cele două files din aplicația actuală lift și modificați aplicația LVGL GUI.
Apoi, activați-vă dispozitivele în configurație file.
Aplicația dvs. LVGL GUI este construită pe platforma inteligentă HMI bazată pe cadru.

Modificările detaliate pot fi făcute în MCUXpresso IDE, după cum se arată mai jos:

  • Implementați dispozitivul de afișare HAL
    1. Copiați și lipiți hal_display_lvgl_elevator.c file sub grupul sln_smart_tlhmi_slider_progress_cm4 > framework > hal > display on MCUXpresso project. Redenumiți-l în hal_display_lvgl_sliderprogress.c pentru aplicația dvs.
    2. Deschideți file hal_display_lvgl_sliderprogress.c și înlocuiți toate șirurile „elevator” cu șirul aplicației dvs. „SliderProgress” în file.
  • Implementați dispozitivul HAL de ieșire
    1. Copiați și lipiți hal_output_ui_elevator.c file sub grupul sln_smart_tlhmi_slider_progress_cm4 > framework > hal > output on the MCUXpresso project. Redenumiți-l în hal_output_ui_sliderprogress.c pentru aplicația dvs.
    2. Deschideți file hal_output_ui_sliderprogress.c. Eliminați toate funcțiile legate de aplicația liftului, cu excepția următoarelor funcții comune de bază ale dispozitivului 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();
      În plus, rezervați declarațiile celor două funcții de mai jos:
      APP_OutputDev_UiElevator_InferCompleteDecode();
      APP_OutputDev_UiElevator_InputNotifyDecode();
    3. Curățați funcția HAL_OutputDev_UiElevator_InferComplete() pentru a vă construi aplicația mai târziu.
      În funcție, eliminați ambele apeluri de funcție _InferComplete_Vision() și _InferComplete_Voice() utilizate pentru gestionarea rezultatelor din algoritmii de viziune și voce pentru aplicația liftului.
    4. Curățați funcția HAL_OutputDev_UiElevator_InputNotify() și păstrați arhitectura de bază pentru dezvoltarea ulterioară a aplicației.
      În cele din urmă, funcția arată după cum urmează:
      Cod și resurse
    5. Eliminați toate declarațiile de variabile, inclusiv enumerarea și matricea, cu excepția celor s_UiSurface și s_AsBuffer[] utilizate pentru implementările comune.
    6. Înlocuiți toate șirurile „elevator” cu șirul aplicației dvs. „SliderProgress”.
  • Activați și configurați ambele dispozitive HAL
    1. Deschideți board_define.h file sub sln_smart_tlhmi_slider_progress_cm4 > placa.
      Înlocuiți toate șirurile „elevator” cu șirul aplicației dvs. „SliderProgress” în file.
      Activează și configurează dispozitivele HAL de afișare și ieșire după definițiile ENABLE_DISPLAY_DEV_LVGLSliderProgress și ENABLE_OUTPUT_DEV_UiSliderProgress.
    2. Deschideți lvgl_support.c file sub sln_smart_tlhmi_slider_progress_cm4 > placa. Înlocuiți toate șirurile „elevator” cu șirul aplicației dvs. „SliderProgress” în file.
      Activează camera preview pe GUI la nivelul driverului de afișare.
  • Înregistrați ambele dispozitive HAL
    Deschideți principalul M4 sln_smart_tlhmi_cm4.cpp file sub sln_smart_tlhmi_slider_progress_cm4 > sursă.
    Înlocuiți toate șirurile „elevator” cu șirul aplicației dvs. „SliderProgress” în file.
    Înregistrează dispozitivul HAL de afișare și ieșire pentru aplicația dvs. în loc de aplicația liftului.
    Prin urmare, integrarea este finalizată pentru rularea aplicației GUI LVGL de bază pe HMI inteligent.
    În funcție de mai multe cerințe pentru aplicație, mai multe implementări pot fi adăugate pe baza aplicației de bază integrate.

Demonstraţie

Aplicația demonstrativă „slider_progress” este implementată împreună cu această notă de aplicație.

După dezarhivarea pachetului de software demonstrativ, puneți mai jos files și folder în software-ul inteligent HMI:

  • The file hal_display_lvgl_sliderprpgress.c sub [demo]\framework\hal\display\ către calea [smart HMI]\framework\hal\display\
  • The file hal_output_ui_slider_progress.c sub [demo]\framework\hal\output\ către calea [smart HMI]\framework\hal\output\
  • Dosarul „slider_progress” către calea rădăcină a [smart HMI]\
    Proiectele pot fi deschise pe MCUXpresso IDE, la fel ca aplicația aparat de cafea/lift prezentată pe platforma smart HMI.
    După programarea *.axf construit file la adresa 0x30100000 și binarul de resurse file la adresa 0x30700000, demonstrația LVGL GUI poate rula cu succes pe placa de dezvoltare inteligentă HMI (a se vedea Figura 3 pentru afișarea pe ecran).
    Nota: Dacă utilizați v1.7.0 a MCUXpresso IDE, activați „Gestionați scriptul de legătură” în Setare > MCU C++ Linker > Script de linker gestionat înainte de a construi proiectul CM4.
    Figura 3. Afișaj demonstrativ LVGL GUI pe placa de dezvoltare inteligentă HMI
    Afișaj demonstrativ

Istoricul reviziilor

Istoricul revizuirilor rezumă revizuirile aduse acestui document.

Tabelul 1. Istoricul revizuirilor

Numarul de revizie Data Modificări de fond
1 16 iunie 2023 Lansare inițială

Notă despre codul sursă din document

ExampCodul de fișier afișat în acest document are următoarele drepturi de autor și licență BSD-3-Clause:
Copyright 2023 NXP Redistribuirea și utilizarea în forme sursă și binare, cu sau fără modificare, sunt permise cu condiția îndeplinirii următoarelor condiții:

  1. Redistribuirea codului sursă trebuie să păstreze notificarea de mai sus privind drepturile de autor, această listă de condiții și următoarea declinare a răspunderii.
  2. Redistribuirile în formă binară trebuie să reproducă notificarea privind drepturile de autor de mai sus, această listă de condiții și următoarea declinare a răspunderii din documentație și/sau alte materiale trebuie furnizate împreună cu distribuția.
  3. Nici numele titularului drepturilor de autor, nici numele contribuabililor săi nu pot fi utilizate pentru a aproba sau promova produse derivate din acest software fără permisiunea scrisă prealabilă specifică.

ACEST SOFTWARE ESTE OFERIT DE DEȚINĂTORII DE DREPTURI DE AUTOR ȘI DE CONTRIBUITORI „CA AȘA ESTE” ȘI ORICE GARANȚII EXPRESE SAU IMPLICITE, INCLUSIV, DAR FĂRĂ A SE LIMITĂ LA, GARANȚII IMPLICITE DE VANTABILITATE ȘI ADECVARE PENTRU UN ANUMIT SCOP, SUNT RENUNCIATE.
ÎN NICIO CAZ DEȚINĂTORUL DREPTURILOR DE AUTOR SAU CONTRIBUTORII NU VA FI RESPONSABILĂ PENTRU ORICE DAUNE DIRECTE, INDIRECTE, INCIDENTALE, SPECIALE, EXEMPLARE SAU CONSECUȚIONALE (INCLUSIV, DAR FĂRĂ A SE LIMITA LA, ACHIZIȚIA DE BUNURI SAU SERVICII SUBSTITUTE, PIERDERI DE PROFIT, UTILIZARE DATE; SAU ÎNTRERUPEREA AFACERII) ORICARE CAUZATE ȘI PENTRU ORICE TEORIE A RĂSPUNDERII, FIEA ÎN CONTRACTUL, RĂSPUNDEREA STRICTĂ SAU DELICIT (INCLUSIV NEGLIGENȚA SAU ALTE MODALITĂȚI) RESULTATE ÎN ORICE MOD DIN UTILIZAREA ACESTUI SOFTWARE, CHIAR DACĂ SE SUNT CONSULTAT
DETERIORA.

Informații juridice

Definiții
Proiect:
Un statut de schiță pe un document indică faptul că conținutul este încă în review și sub rezerva aprobării oficiale, care poate avea ca rezultat modificări sau completări.
NXP Semiconductors nu oferă nicio declarație sau garanție cu privire la acuratețea sau caracterul complet al informațiilor incluse într-o versiune preliminară a unui document și nu își asumă răspunderea pentru consecințele utilizării acestor informații.

Declinări de răspundere
Garanție limitată și răspundere: Informațiile din acest document sunt considerate a fi corecte și de încredere.
Cu toate acestea, NXP Semiconductors nu oferă nicio declarație sau garanție, expresă sau implicită, cu privire la acuratețea sau caracterul complet al acestor informații și nu va avea nicio răspundere pentru consecințele utilizării acestor informații.
NXP Semiconductors nu își asumă responsabilitatea pentru conținutul acestui document dacă este furnizat de o sursă de informații din afara NXP Semiconductors.
În niciun caz, NXP Semiconductors nu va fi răspunzătoare pentru orice daune indirecte, incidentale, punitive, speciale sau consecutive (inclusiv – fără a se limita – profituri pierdute, economii pierdute, întrerupere a activității, costuri legate de îndepărtarea sau înlocuirea oricăror produse sau taxe de reluare), indiferent dacă sau nu, astfel de daune se bazează pe delict (inclusiv neglijență), garanție, încălcare a contractului sau orice altă teorie legală.
În ciuda oricăror daune pe care clientul le-ar putea suferi din orice motiv, răspunderea totală și cumulativă a NXP Semiconductors față de client pentru produsele descrise aici va fi limitată în conformitate cu Termenii și condițiile de vânzare comercială a NXP Semiconductors.

Dreptul de a face modificări: NXP Semiconductors își rezervă dreptul de a face modificări informațiilor publicate în acest document, inclusiv, fără limitare, specificațiile și descrierile produselor, în orice moment și fără notificare.
Acest document înlocuiește și înlocuiește toate informațiile furnizate înainte de publicarea acestuia.

Adecvare pentru utilizare: Produsele NXP Semiconductors nu sunt proiectate, autorizate sau garantate pentru a fi adecvate pentru utilizarea în sisteme sau echipamente critice pentru viață sau pentru siguranță, nici în aplicații în care defecțiunea sau funcționarea defectuoasă a unui produs NXP Semiconductors poate avea ca rezultat, în mod rezonabil, probleme personale. vătămare, deces sau daune grave asupra proprietății sau mediului.
NXP Semiconductors și furnizorii săi nu își asumă nicio responsabilitate pentru includerea și/sau utilizarea produselor NXP Semiconductors în astfel de echipamente sau aplicații și, prin urmare, această includere și/sau utilizare este pe riscul propriu al clientului.

Aplicatii: Aplicațiile descrise aici pentru oricare dintre aceste produse au doar scop ilustrativ.
NXP Semiconductors nu oferă nicio declarație sau garanție că astfel de aplicații vor fi potrivite pentru utilizarea specificată fără teste sau modificări suplimentare.
Clienții sunt responsabili pentru proiectarea și funcționarea aplicațiilor și produselor lor folosind produsele NXP Semiconductors, iar NXP Semiconductors nu își asumă nicio responsabilitate pentru orice asistență cu aplicațiile sau proiectarea produsului clientului.
Este responsabilitatea exclusivă a clientului să determine dacă produsul NXP Semiconductors este potrivit și potrivit pentru aplicațiile și produsele planificate ale clientului, precum și pentru aplicarea și utilizarea planificate a clienților terți ai clientului.
Clienții ar trebui să ofere garanții de proiectare și operare adecvate pentru a minimiza riscurile asociate cu aplicațiile și produsele lor.
NXP Semiconductors nu acceptă nicio răspundere legată de orice nerespectare, daune, costuri sau problemă care se bazează pe orice slăbiciune sau nerespectare a aplicațiilor sau produselor clientului sau a aplicației sau utilizării de către clienții terți ai clientului.
Clientul este responsabil pentru efectuarea tuturor testelor necesare pentru aplicațiile și produsele clientului care utilizează produsele NXP Semiconductors pentru a evita o implicită a aplicațiilor și a produselor sau a aplicației sau a utilizării de către clienții terți ai clientului. NXP nu își asumă nicio răspundere în acest sens

Termeni si conditii de vanzare comerciala: Produsele NXP Semiconductors sunt vândute sub rezerva termenilor și condițiilor generale de vânzare comercială, așa cum sunt publicate la http://www.nxp.com/profile/terms, cu excepția cazului în care sa convenit altfel într-un acord individual scris valabil.
În cazul în care se încheie un acord individual, se vor aplica numai termenii și condițiile acordului respectiv.
NXP Semiconductors se opune în mod expres aplicării termenilor și condițiilor generale ale clientului cu privire la achiziționarea produselor NXP Semiconductors de către client.

Controlul exportului: Acest document, precum și articolele descrise aici pot face obiectul reglementărilor privind controlul exporturilor.
Exportul poate necesita o autorizație prealabilă din partea autorităților competente.

Adecvarea pentru utilizare în produse care nu sunt calificate pentru automobile: Cu excepția cazului în care această fișă de date precizează în mod expres că acest produs specific NXP Semiconductors este calificat pentru automobile, produsul nu este potrivit pentru utilizare în automobile.
Nu este nici calificat, nici testat în conformitate cu cerințele de testare sau aplicație auto. NXP Semiconductors nu își asumă nicio responsabilitate pentru includerea și/sau utilizarea produselor care nu sunt calificate pentru automobile în echipamente sau aplicații auto.
În cazul în care clientul utilizează produsul pentru proiectare și utilizare în aplicații auto în conformitate cu specificațiile și standardele auto, clientul (a) va folosi produsul fără garanția NXP Semiconductors a produsului pentru astfel de aplicații, utilizare și specificații auto și ( b) ori de câte ori clientul folosește produsul pentru aplicații auto dincolo de specificațiile NXP Semiconductors, această utilizare va fi exclusiv pe propriul risc și (c) clientul despăgubește pe deplin NXP Semiconductors pentru orice răspundere, daune sau pretenții de produs eșuate care rezultă din proiectarea și utilizarea clientului. produsul pentru aplicații auto dincolo de garanția standard a NXP Semiconductors și de specificațiile produsului NXP Semiconductors.

Traduceri: O versiune non-engleză (tradusă) a unui document, inclusiv informațiile juridice din acel document, este doar pentru referință.
Versiunea în limba engleză va prevala în cazul oricărei discrepanțe între versiunile traduse și cele în limba engleză.

Securitate: Clientul înțelege că toate produsele NXP pot fi supuse unor vulnerabilități neidentificate sau pot suporta standarde sau specificații de securitate stabilite cu limitări cunoscute.
Clientul este responsabil pentru proiectarea și funcționarea aplicațiilor și produselor sale pe parcursul întregului ciclu de viață pentru a reduce efectul acestor vulnerabilități asupra aplicațiilor și produselor clientului.
Responsabilitatea Clientului se extinde și la alte tehnologii deschise și/sau proprietare acceptate de produsele NXP pentru utilizare în aplicațiile clientului.
NXP nu își asumă răspunderea pentru nicio vulnerabilitate.
Clientul ar trebui să verifice în mod regulat actualizările de securitate de la NXP și să urmărească în mod corespunzător.
Clientul trebuie să selecteze produse cu caracteristici de securitate care îndeplinesc cel mai bine regulile, reglementările și standardele aplicației vizate și va lua deciziile finale de proiectare cu privire la produsele sale și este singurul responsabil pentru conformitatea cu toate cerințele legale, de reglementare și de securitate referitoare la produsele sale, indiferent de a oricărei informații sau asistență care poate fi furnizată de NXP.
NXP are o echipă de răspuns la incidente de securitate a produselor (PSIRT) (accesabilă la PSIRT@nxp.com) care gestionează investigarea, raportarea și lansarea soluției pentru vulnerabilitățile de securitate ale produselor NXP.

NXP BV: NXP BV nu este o companie care operează și nu distribuie sau vinde produse.

Mărci comerciale

Observa: Toate mărcile la care se face referire, denumirile de produse, denumirile de servicii și mărcile comerciale sunt proprietatea proprietarilor respectivi.
NXP: marca de cuvânt și sigla sunt mărci comerciale ale NXP BV
i.MX: este o marcă comercială a NXP BV

SUPORT CLIENT

Pentru mai multe informații, vă rugăm să vizitați: http://www.nxp.com
Logo.png

Documente/Resurse

NXP AN13948 Integrarea aplicației GUI LVGL în platforma Smart HMI [pdfManual de utilizare
AN13948 Integrarea aplicației GUI LVGL în Platforma Smart HMI, AN13948, Integrarea aplicației GUI LVGL în Platforma Smart HMI

Referințe

Lasă un comentariu

Adresa ta de e-mail nu va fi publicată. Câmpurile obligatorii sunt marcate *