NXP AN13948 يدمج تطبيق LVGL GUI في دليل مستخدم منصة Smart HMI
NXP AN13948 دمج تطبيق LVGL GUI في منصة HMI الذكية

مقدمة

أطلقت NXP مجموعة أدوات تطوير الحلول المسماة SLN-TLHMI-IOT. وهو يركز على تطبيقات HMI الذكية التي تحتوي على تطبيقين – آلة القهوة والمصعد (سيتوفر تطبيق اللوحة الذكية قريبًا).
لتوفير المعلومات للمستخدم، يتم تضمين بعض الوثائق الأساسية، على سبيل المثالampلو، دليل المطور.
يقدم الدليل التصميم الأساسي للبرامج وهندسة التطبيقات التي تغطي جميع مكونات الحلول.
تتضمن هذه المكونات أداة تحميل التشغيل وإطار العمل وتصميم 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 في القسم 1.1 والقسم 1.2.

مكتبة رسومات خفيفة ومتعددة الاستخدامات
مكتبة الرسومات الخفيفة والمتعددة الاستخدامات (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 مع محول Cortex-M ذو 9 سنون

بيئة البرمجيات
يتم تقديم الأدوات البرمجية وإصداراتها المستخدمة في مذكرة التطبيق هذه، على النحو التالي:

  • واجهة المستخدم الرسومية المرشد V1.5.0-GA
  • مكوكسبريسو 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 الذكية حتى لو قرأوا دليل المطور ويعرفون إطار العمل.
وتشرح الأقسام التالية كيفية تنفيذها خطوة بخطوة.

تطوير تطبيق LVGL GUI على GUI Guider
كما ذكرنا أعلاه، فإن كيفية تطوير واجهة المستخدم الرسومية LVGL على GUI Guider ليس هو التركيز في مذكرة التطبيق هذه.
ولكن واجهة المستخدم الرسومية السابقينampلو ضروري.
لذلك، تم تحديد قالب واجهة المستخدم الرسومية البسيط المسمى Slider Progress المتوفر في GUI Guider باعتباره نموذج واجهة المستخدم الرسوميةample لإعداد سريع.
يتم استخدام قالب Slider Progress GUI لأنه يحتوي على صورة مطلوبة لتوضيح إنشاء موارد الصورة في التطبيق.
واجهة المستخدم الرسومية السابقينampمن السهل جدًا إنشاء: لإنشاء مشروع باستخدام مكتبة LVGL المحدثة V8.3.2 وقالب اللوحة كـ MIMXRT1176xxxxx، راجع دليل مستخدم GUI Guider (المستند غيغويدروغ).
ويبين الشكل 1 إعدادات المشروع.

ملحوظة: يجب تحديد نوع اللوحة، كما هو موضح في المربع الأحمر في الشكل 1، حيث يتم استخدامه في لوحة التطوير الحالية.

بعد إنشاء المشروع، قم بتشغيل جهاز المحاكاة لإنشاء رموز LVGL GUI ذات الصلة وبناء المشروع أيضًا.
يمكنك التحقق من تأثير واجهة المستخدم الرسومية على سبيل المثالampلو على جهاز محاكاة.

الشكل 1. إعداد مشروع واجهة المستخدم الرسومية على GUI Guider
إعداد المشروع

أنشئ مشروعك على واجهة HMI الذكية
ملحوظة: أولاً، قم بإنشاء مشروعك على MCUXpresso IDE.

بعد LVGL GUI السابقينampتم تصميمه، ويمكنه الانتقال إلى الهدف الرئيسي لدمجه في منصة برمجيات HMI الذكية في مشروع MCUXpresso لتنفيذ تطبيق واجهة المستخدم الرسومية (GUI) الخاص بك.
الطريقة البسيطة والسريعة هي استنساخ مشروع التطبيق الحالي المقدم على منصة HMI الذكية.
يعد تطبيق المصعد هو الخيار الأفضل كمصدر مستنسخ نظرًا لأنه يتميز بتنفيذ بسيط.

لإنشاء مشروعك، اتبع الخطوات التالية:

  1. انسخ مجلد "elevator" والصقه في كود مصدر HMI الذكي المستنسخ من GitHub. إعادة تسميته لك.
    لهذا السابقampلو، لقد اخترنا "slider_progress"، بعد اسم واجهة المستخدم الرسومية (GUI) على سبيل المثالampليه.
  2. في المجلد "slider_progress"، أدخل المجلد "lvgl_vglite_lib" الذي يحتوي على مشروع LVGL GUI.
  3. فتح ذات الصلة بالمشروع files.cproject و.project واستبدل كل سلسلة "elevator" بسلسلة اسم مشروعك "slider_progress".
  4. قم بإجراء الاستبدال المماثل لكلا المشروعين fileفي المجلدين "cm4" و"cm7".
    قم بإعداد مشروعك عن طريق استنساخ مشروع المصعد files.
    كما هو موضح في الشكل 2 يمكن الآن فتح مشاريعك في MCUXpresso IDE بنفس طريقة مشروع المصعد.

الشكل 2. إعداد المشاريع على MCUXpresso
إعداد المشروع

بناء الموارد لواجهة HMI الذكية
بشكل عام، يتم استخدام الصور في واجهة المستخدم الرسومية (الأصوات المستخدمة في المطالبات الصوتية أيضًا).
تسمى الصور والأصوات موارد، ويتم تخزينها في ومضة بالتسلسل. قبل برمجتها على الفلاش، يجب دمج الموارد في ملف ثنائي file.
المهمة الرئيسية هي استبدال أسماء التطبيق المرجعي (المصعد) بأسماء التطبيقات الخاصة بك.

وللقيام بذلك، اتبع الخطوات التالية:

  1. احذف مجلد "الصور" المستنسخ ضمن Slider_progress/resource.
  2. انسخ مجلد "الصور" ضمن \generated في مشروع GUI Guider الخاص بك.
  3. الصقها تحت Slider_progress/resource (أي استخدم الصور الخاصة بك بدلاً من تلك الموجودة في تطبيق المصعد.).
  4. حذف *.mk file يستخدم لـ GUI Guider في مجلد "الصور".
  5. إعادة تسمية fileقم بإضافة 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، استبدل جميع سلاسل "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 Slider_progress_resource.sh لنظام التشغيل Linux.
  9. انقر نقرًا مزدوجًا فوق الدُفعة file Slider_progress_resource_build.bat لنظام التشغيل Windows.
  10. تظهر نافذة الأوامر ويتم تشغيلها تلقائيًا لإنشاء الملف الثنائي لمورد الصورة file تحتوي على بيانات الصورة ومعلومات الوصول إلى الموارد التي تحتوي على رموز C لتعيين جميع مواقع الصور في الفلاش وحجم البايت الإجمالي للصور.
    بعد ظهور الرسالة "اكتمل إنشاء الموارد!"، يظهر مصدر الصورة الثنائي file اسمه Slider_progress_resource.bin ومعلومات الوصول إلى المورد file يتم إنشاء Resources_information_table.txt المسمى في المجلد "resource".
    مصدر الصورة الثنائي file تتم برمجتها على الفلاش، ويتم استخدام معلومات الوصول إلى الموارد للوصول إلى الموارد الموجودة على واجهة HMI الذكية (انظر القسم 3.4.1).

دمج تطبيق LVGL GUI في واجهة HMI الذكية
رموز تطبيق LVGL GUI (هنا واجهة المستخدم الرسومية SliderProgress على سبيل المثالample) ويمكن إضافة موارد الصور المضمنة، بما في ذلك معلومات الوصول، إلى واجهة HMI الذكية.
بالإضافة إلى ذلك، لتنفيذ تطبيق LVGL GUI الخاص بك على HMI الذكي، يلزم إضافة أجهزة HAL المرتبطة بـ LVGL GUI والتكوينات ذات الصلة.
يعمل تطبيق LVGL GUI على نواة M4، والتنفيذ ذو الصلة موجود تقريبًا في مشروع M4 "sln_smart_tlhmi_slider_progress_cm4".
يتم وصف الخطوات التفصيلية في الأقسام الفرعية الإضافية.

أضف رموز وموارد LVGL GUI
رموز تطبيق LVGL GUI المستخدمة لـ HMI الذكية موجودة في المجلدات "المخصصة" و"التي تم إنشاؤها" في مشروع 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 في المجلد "الذي تم إنشاؤه".
    كما ذكرنا أعلاه، فإن الصور الموجودة في مجلد "الصورة" مدمجة في ملف ثنائي للموارد file، لذا فإن مجلد "الصورة" غير مطلوب.
    المجلد "mPythonImages" وجميع ملفات files *.mk و*.py غير مرغوب فيهما بالنسبة لواجهة HMI الذكية.
  4. لإضافة تحكم Mutex استنادًا إلى منصة HMI الذكية وتعيين مواقع الصور على الفلاش، قم بتعديل file custom.c على MCUXpresso IDE.
    يتم تعريف كل هذه بواسطة RT_PLATFORM.
  5. مشروع مصعد مفتوح على MCUXpresso IDE. ابحث عن تعريف الماكرو RT_PLATFORM في custom.c ضمن sln_smart_tlhmi_elevator_cm4 > custom وانسخ كافة أسطر التعليمات البرمجية من #if محددة(RT_PLATFORM) إلى #endif، والصقها في file custom.c ضمن sln_smart_tlhmi_slider_progress_cm4 > custom.
  6. احذف أسطر التعليمات البرمجية الموجودة أسفل #else التي تحتوي على #else نظرًا لاستخدامها في واجهة المستخدم الرسومية للمصعد.
    تغطي أسطر التعليمات البرمجية المضافة ما يلي:
    • تشمل fileق هي كما يلي:
      الكود والموارد

    • إعلان المتغير هو كما يلي:
      الكود والموارد
    • رموز C في الدالة custom_init() هي كما يلي:
      الكود والموارد
      الكود والموارد
    • رموز C للوظائف _takeLVGLMutex() و_giveLVGLMutex() وsetup_imgs() حيث يتم تعيين مواقع جميع الصور.
  7. استبدل الرموز الموجودة في الدالة setup_imgs() برموز إعداد الموقع للصور الموجودة في Resource_information_table.txt file (انظر القسم 3.3).
    في ملاحظة التطبيق هذه، يوجد مصدر صورة واحد فقط تم إعداده كـ: _scan_example_597x460.data = (base + 0); بعد القيام بذلك، تظهر الدالة setup_imgs() كما يلي:
    الكود والموارد
  8. لإضافة تعريف الماكرو وإعلان الوظيفة المتعلقين بـ custom.c، قم بتعديل custom.h file ضمن sln_smart_tlhmi_slider_progress_cm4 > مخصص، كما هو موضح أدناه:
    الكود والموارد
  9. لتحديد الصور في تطبيق LVGL GUI الخاص بك، قم بتعديل lvgl_images_internal.h file ضمن sln_smart_tlhmi_slider_progress_cm4> مخصص.
    • افتح صورة واحدة *.c file (هنا _scan_example_597x460.c) ضمن /generated/ image/ في مشروع GUI Guider.
      انسخ تعريف الصورة في نهاية file. الصقه في lvgl_images_internal.h file بعد حذف كافة التعريفات الأصلية الخاصة بالصور الخاصة بتطبيق المصعد.
    • حذف .data = _scan_example_597x460_map في المصفوفة حيث تم تعيين البيانات في الدالة setup_imgs().
      تم تعريف المصفوفة أخيرًا في lvgl_images_internal.h fileكما هو موضح أدناه:
      الكود والموارد
      ملحوظة:
      كرر العمليات المذكورة أعلاه لجميع الصور fileواحدة تلو الأخرى إذا كانت هناك صور متعددة files.
  10. قم بتكوين الحجم الإجمالي لمورد الصورة عن طريق تحديد تعريف الماكرو APP_LVGL_IMGS_SIZE في app_config.h file ضمن sln_smart_tlhmi_slider_progress_cm7 > المصدر بالحجم الجديد للصور.
    يتوفر هذا الحجم الجديد في المورد المدمج Resources_information_table.txt file.

إضافة أجهزة وتكوينات HAL
استنادًا إلى بنية الإطار، تم تصميم جهازين HAL (أجهزة العرض والإخراج) لتطبيق LVGL GUI.
تختلف تطبيقات الجهازين اعتمادًا على تطبيقات LVGL GUI المختلفة على الرغم من وجود تصميمات معمارية مشتركة لها.
يتم تنفيذها بشكل منفصل في قسمين files.
ولذلك يجب استنساخ الاثنين fileمن تطبيق المصعد الحالي وقم بتعديل تطبيق LVGL GUI الخاص بك.
ثم قم بتمكين أجهزتك في التكوين file.
تم إنشاء تطبيق LVGL GUI الخاص بك على منصة HMI الذكية القائمة على الإطار.

يمكن إجراء التعديلات التفصيلية في MCUXpresso IDE، كما هو موضح أدناه:

  • تنفيذ جهاز العرض HAL
    1. انسخ والصق hal_display_lvgl_elevator.c file ضمن المجموعة sln_smart_tlhmi_slider_progress_cm4 > إطار العمل > hal > العرض في مشروع MCUXpresso. أعد تسميته إلى hal_display_lvgl_sliderprogress.c للتطبيق الخاص بك.
    2. افتح file hal_display_lvgl_sliderprogress.c واستبدل جميع السلاسل "elevator" بسلسلة التطبيق الخاصة بك "SliderProgress" في file.
  • تنفيذ جهاز الإخراج HAL
    1. انسخ والصق ملف hal_output_ui_elevator.c file ضمن المجموعة sln_smart_tlhmi_slider_progress_cm4 > إطار العمل > hal > الإخراج في مشروع MCUXpresso. أعد تسميته إلى hal_output_ui_sliderprogress.c لتطبيقك.
    2. افتح file hal_output_ui_sliderprogress.c. قم بإزالة جميع الوظائف المتعلقة بتطبيق المصعد باستثناء الوظائف الأساسية المشتركة التالية لجهاز HAL:
      HAL_OutputDev_UiElevator_Init();
      HAL_OutputDev_UiElevator_Deinit();
      HAL_OutputDev_UiElevator_Start();
      HAL_OutputDev_UiElevator_Stop();
      HAL_OutputDev_UiElevator_InferComplete();
      HAL_OutputDev_UiElevator_InputNotify();
      بالإضافة إلى ذلك، احتفظ بتصريحات الوظيفتين أدناه:
      APP_OutputDev_UiElevator_InferCompleteDecode();
      APP_OutputDev_UiElevator_InputNotifyDecode();
    3. قم بتنظيف الوظيفة HAL_OutputDev_UiElevator_InferComplete() لإنشاء تطبيقك لاحقًا.
      في الوظيفة، قم بإزالة كل من استدعاءات الوظائف _InferComplete_Vision() و_InferComplete_Voice() المستخدمة لمعالجة النتائج من خوارزميات الرؤية والصوت لتطبيق المصعد.
    4. قم بتنظيف الوظيفة HAL_OutputDev_UiElevator_InputNotify() واحتفظ بالبنية الأساسية لمزيد من تطوير التطبيقات.
      وأخيرًا تبدو الدالة كما يلي:
      الكود والموارد
    5. قم بإزالة كافة تعريفات المتغيرات، بما في ذلك التعداد والمصفوفة، باستثناء s_UiSurface وs_AsBuffer[] المستخدمة للتطبيقات الشائعة.
    6. استبدل جميع سلاسل "elevator" بسلسلة تطبيقك "SliderProgress".
  • تمكين وتكوين كلا الجهازين HAL
    1. افتح board_define.h file ضمن sln_smart_tlhmi_slider_progress_cm4 > اللوحة.
      استبدل جميع السلاسل "elevator" بسلسلة التطبيق الخاصة بك "SliderProgress" في ملف file.
      يقوم بتمكين وتكوين أجهزة العرض والإخراج HAL من خلال التعريفات ENABLE_DISPLAY_DEV_LVGLSliderProgress وENABLE_OUTPUT_DEV_UiSliderProgress.
    2. افتح lvgl_support.c file ضمن sln_smart_tlhmi_slider_progress_cm4 > اللوحة. استبدل جميع السلاسل "elevator" بسلسلة التطبيق الخاصة بك "SliderProgress" في ملف file.
      أنها تمكن الكاميرا قبلview على واجهة المستخدم الرسومية على مستوى برنامج تشغيل العرض.
  • قم بتسجيل كلا جهازي HAL
    افتح sln_smart_tlhmi_cm4.cpp الرئيسي لـ M4 file ضمن sln_smart_tlhmi_slider_progress_cm4 > المصدر.
    استبدل جميع السلاسل "elevator" بسلسلة التطبيق الخاصة بك "SliderProgress" في ملف file.
    يقوم بتسجيل جهاز العرض والإخراج HAL لتطبيقك بدلاً من تطبيق المصعد.
    لذلك، اكتمل التكامل لتشغيل تطبيق LVGL GUI الأساسي على واجهة HMI الذكية.
    اعتمادًا على المزيد من متطلبات التطبيق، يمكن إضافة المزيد من التطبيقات بناءً على التطبيق الأساسي المتكامل.

توضيح

يتم تنفيذ العرض التوضيحي لتطبيق "slider_progress" جنبًا إلى جنب مع ملاحظة التطبيق هذه.

بعد فك ضغط حزمة البرنامج التجريبي، قم بوضع ما يلي files والمجلد في برنامج HMI الذكي:

  • ال file hal_display_lvgl_sliderprpgress.c ضمن [demo]\framework\hal\display\ إلى المسار [smart HMI]\framework\hal\display\
  • ال file hal_output_ui_slider_progress.c ضمن [demo]\framework\hal\output\ إلى المسار [smart HMI]\framework\hal\output\
  • المجلد "slider_progress" إلى المسار الجذري لـ [smart HMI]\
    يمكن فتح المشاريع على MCUXpresso IDE، تمامًا مثل تطبيق ماكينة القهوة/المصعد المقدم على منصة HMI الذكية.
    بعد برمجة المدمج *.axf file إلى العنوان 0x30100000 وثنائي المورد file إلى العنوان 0x30700000، يمكن تشغيل العرض التوضيحي لواجهة المستخدم الرسومية LVGL بنجاح على لوحة تطوير HMI الذكية (انظر الشكل 3 للاطلاع على شاشة العرض).
    ملحوظة: إذا كنت تستخدم الإصدار 1.7.0 من MCUXpresso IDE، فقم بتمكين "إدارة البرنامج النصي للارتباط" في الإعداد > MCU C++ Linker > Managed Linker Script قبل إنشاء مشروع CM4.
    الشكل 3. عرض توضيحي لواجهة المستخدم الرسومية LVGL على لوحة تطوير HMI الذكية
    عرض تجريبي

تاريخ المراجعة

يلخص محفوظات المراجعة المراجعات التي تم إجراؤها على هذا المستند.

الجدول 1. تاريخ المراجعة

رقم المراجعة تاريخ تغييرات جوهرية
1 16 يونيو 2023 الإصدار الأولي

ملاحظة حول الكود المصدري في المستند

Exampكود le الموضح في هذا المستند له حقوق النشر التالية وترخيص BSD-3-Clause:
حقوق النشر 2023 NXP Redistribution والاستخدام في أشكال المصدر والثنائية ، مع أو بدون تعديل ، مسموح بها بشرط استيفاء الشروط التالية:

  1. يجب أن تحتفظ عمليات إعادة توزيع الكود المصدر بإشعار حقوق النشر المذكور أعلاه، وقائمة الشروط، وإخلاء المسؤولية التالي.
  2. يجب أن تقوم عمليات إعادة التوزيع في شكل ثنائي بإعادة إنتاج إشعار حقوق النشر أعلاه ، ويجب توفير قائمة الشروط هذه وإخلاء المسؤولية التالي في الوثائق و / أو المواد الأخرى مع التوزيع.
  3. لا يجوز استخدام اسم صاحب حقوق الطبع والنشر أو أسماء المساهمين فيه لتأييد أو ترويج المنتجات المشتقة من هذا البرنامج دون إذن كتابي مسبق محدد.

يتم توفير هذا البرنامج من قبل حاملي حقوق الطبع والنشر والمساهمين "كما هي" وأي ضمانات صريحة أو ضمنية ، بما في ذلك ، على سبيل المثال لا الحصر ، الضمانات الضمنية لقابلية التسويق والملاءمة لغرض معين.
لا يتحمل صاحب حقوق الطبع والنشر أو المساهمين بأي حال من الأحوال المسؤولية عن أي أضرار مباشرة أو غير مباشرة أو عرضية أو خاصة أو نموذجية أو تبعية (بما في ذلك، على سبيل المثال لا الحصر، شراء سلع أو خدمات بديلة؛ فقدان الاستخدام أو البيانات أو الأرباح؛ أو انقطاع العمل) مهما كان سببه وعلى أي نظرية للمسؤولية، سواء في العقد أو المسؤولية الصارمة أو الضرر (بما في ذلك الإهمال أو غيره) الذي ينشأ بأي شكل من الأشكال عن استخدام هذا البرنامج، حتى لو تم الإبلاغ عن إمكانية حدوث ذلك
ضرر.

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

التعاريف
مسودة:
تشير حالة المسودة في المستند إلى أن المحتوى لا يزال قيد المراجعة الداخليةview وتخضع لموافقة رسمية ، مما قد يؤدي إلى تعديلات أو إضافات.
لا تقدم شركة NXP Semiconductors أي تعهدات أو ضمانات فيما يتعلق بدقة أو اكتمال المعلومات المضمنة في مسودة نسخة من المستند ولا تتحمل أي مسؤولية عن عواقب استخدام هذه المعلومات.

إخلاء المسؤولية
الضمان والمسؤولية المحدودة: يُعتقد أن المعلومات الواردة في هذه الوثيقة دقيقة وموثوقة.
ومع ذلك، لا تقدم شركة NXP Semiconductors أي إقرارات أو ضمانات، صريحة أو ضمنية، فيما يتعلق بدقة هذه المعلومات أو اكتمالها ولا تتحمل أي مسؤولية عن عواقب استخدام هذه المعلومات.
لا تتحمل شركة NXP Semiconductors أي مسؤولية عن المحتوى الموجود في هذا المستند إذا تم تقديمه بواسطة مصدر معلومات خارج NXP Semiconductors.
لا تتحمل شركة NXP أشباه الموصلات بأي حال من الأحوال المسؤولية عن أي أضرار غير مباشرة أو عرضية أو عقابية أو خاصة أو تبعية (بما في ذلك - على سبيل المثال لا الحصر - خسارة الأرباح أو المدخرات المفقودة أو انقطاع العمل أو التكاليف المتعلقة بإزالة أو استبدال أي منتجات أو رسوم إعادة العمل) سواء أو لا تستند هذه الأضرار إلى ضرر (بما في ذلك الإهمال) أو الضمان أو خرق العقد أو أي نظرية قانونية أخرى.
بصرف النظر عن أي أضرار قد يتكبدها العميل لأي سبب من الأسباب ، فإن المسؤولية الإجمالية والتراكمية لشركة NXP Semiconductors تجاه العميل عن المنتجات الموضحة هنا ستكون محدودة وفقًا لشروط وأحكام البيع التجاري لأشباه الموصلات من NXP.

الحق في إجراء التغييرات: تحتفظ شركة 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 لأشباه الموصلات للمنتج لتطبيقات السيارات هذه ، والاستخدام والمواصفات ، و ( ب) عندما يستخدم العميل المنتج لتطبيقات السيارات بخلاف مواصفات NXP Semiconductors ، يكون هذا الاستخدام على مسؤولية العميل وحده ، و (ج) يقوم العميل بتعويض NXP تمامًا عن أي مسؤولية أو أضرار أو مطالبات فاشلة ناتجة عن تصميم العميل واستخدامه المنتج لتطبيقات السيارات التي تتجاوز الضمان القياسي لأشباه الموصلات NXP ومواصفات منتجات NXP Semiconductors.

الترجمات: إن النسخة غير الإنجليزية (المترجمة) من المستند، بما في ذلك المعلومات القانونية الواردة في هذا المستند، هي للإشارة فقط.
تسود النسخة الإنجليزية في حالة وجود أي اختلاف بين النسخة المترجمة والنسخة الإنجليزية.

حماية: يدرك العميل أن جميع منتجات NXP قد تكون عرضة لثغرات أمنية غير محددة أو قد تدعم معايير أو مواصفات الأمان المعمول بها مع قيود معروفة.
يتحمل العميل مسؤولية تصميم وتشغيل تطبيقاته ومنتجاته طوال دورات حياتها لتقليل تأثير نقاط الضعف هذه على تطبيقات العميل ومنتجاته.
وتمتد مسؤولية العميل أيضًا إلى التقنيات الأخرى المفتوحة و/أو الخاصة التي تدعمها منتجات NXP لاستخدامها في تطبيقات العميل.
لا تتحمل NXP أي مسؤولية عن أي ثغرة أمنية.
يجب على العميل التحقق بانتظام من التحديثات الأمنية من NXP ومتابعتها بشكل مناسب.
يجب على العميل تحديد المنتجات ذات الميزات الأمنية التي تلبي على أفضل وجه القواعد واللوائح والمعايير الخاصة بالتطبيق المقصود واتخاذ قرارات التصميم النهائية فيما يتعلق بمنتجاته ويكون مسؤولاً بمفرده عن الامتثال لجميع المتطلبات القانونية والتنظيمية والأمنية المتعلقة بمنتجاته ، بغض النظر عن بأي معلومات أو دعم قد توفره NXP.
لدى NXP فريق الاستجابة لحوادث أمان المنتج (PSIRT) (يمكن الوصول إليه على PSIRT@nxp.com) الذي يدير التحقيق وإعداد التقارير وإصدار الحلول لنقاط الضعف الأمنية لمنتجات NXP.

إن إكس بي بي في: NXP BV ليست شركة تشغيل ولا توزع أو تبيع المنتجات.

العلامات التجارية

يلاحظ: جميع العلامات التجارية المشار إليها وأسماء المنتجات وأسماء الخدمات والعلامات التجارية هي ملك لأصحابها المعنيين.
إن إكس بي: العلامة النصية والشعار علامتان تجاريتان لشركة NXP BV
ط.MX: هي علامة تجارية لشركة NXP BV

دعم العملاء

لمزيد من المعلومات، يرجى زيارة: http://www.nxp.com
الشعار.png

المستندات / الموارد

NXP AN13948 دمج تطبيق LVGL GUI في منصة HMI الذكية [بي دي اف] دليل المستخدم
AN13948 دمج تطبيق LVGL GUI في منصة HMI الذكية، AN13948، دمج تطبيق LVGL GUI في منصة HMI الذكية

مراجع

اترك تعليقا

لن يتم نشر عنوان بريدك الإلكتروني. تم وضع علامة على الحقول المطلوبة *