NXP AN13948 การรวมแอปพลิเคชัน LVGL GUI เข้ากับคู่มือผู้ใช้แพลตฟอร์ม Smart HMI
NXP AN13948 การรวมแอปพลิเคชัน LVGL GUI เข้ากับแพลตฟอร์ม Smart HMI

การแนะนำ

NXP ได้เปิดตัวชุดพัฒนาโซลูชันชื่อ SLN-TLHMI-IOT โดยมุ่งเน้นไปที่แอปพลิเคชัน HMI อัจฉริยะที่มีสองแอป ได้แก่ เครื่องชงกาแฟและลิฟต์ (แอปแผงอัจฉริยะจะพร้อมใช้งานเร็วๆ นี้)
ในการให้ข้อมูลแก่ผู้ใช้ เอกสารพื้นฐานบางอย่างจะถูกรวมไว้ด้วย เช่นample คู่มือนักพัฒนา
คู่มือนี้จะแนะนำการออกแบบซอฟต์แวร์พื้นฐานและสถาปัตยกรรมของแอปพลิเคชันที่ครอบคลุมส่วนประกอบของโซลูชันทั้งหมด
ส่วนประกอบเหล่านี้ประกอบด้วยการออกแบบบูตโหลดเดอร์ เฟรมเวิร์ก และ HAL เพื่อช่วยให้นักพัฒนาปรับใช้แอปพลิเคชันของตนได้ง่ายและมีประสิทธิภาพยิ่งขึ้นโดยใช้ SLN-TLHMI-IOT

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับเอกสารและแนวทางแก้ไข โปรดไปที่: โซลูชัน HMI อัจฉริยะ NXP EdgeReady ที่ใช้ i.MX RT117H พร้อม ML Vision, Voice และ UI แบบกราฟิก

อย่างไรก็ตาม การแนะนำจะเน้นไปที่แนวคิดและการใช้งานขั้นพื้นฐาน เนื่องจากการปฏิบัติตามข้อกำหนดของซอฟต์แวร์ตามเฟรมเวิร์ก จึงไม่ใช่เรื่องง่ายสำหรับนักพัฒนาที่จะทราบวิธีใช้งานแอปพลิเคชันของตน
เพื่อเร่งการพัฒนา จำเป็นต้องมีคำแนะนำเพิ่มเติมเพื่อแนะนำวิธีใช้งานส่วนประกอบหลัก (เช่นample, LVGL GUI, การมองเห็น และการจดจำเสียง) ทีละขั้นตอน
เช่นampอย่างไรก็ตาม ลูกค้าควรมีแอปพลิเคชัน LVGL GUI ของตนเองที่แตกต่างจากแอปปัจจุบันในโซลูชัน
หลังจากใช้งาน LVGL GUI กับ GUI Guider ที่ NXP จัดเตรียมไว้ให้แล้ว พวกเขาจะต้องรวมเข้ากับแพลตฟอร์มซอฟต์แวร์ HMI อัจฉริยะตามเฟรมเวิร์ก

หมายเหตุแอปพลิเคชันนี้อธิบายวิธีรวมแอปพลิเคชัน LVGL GUI ที่พัฒนาโดยผู้ใช้เข้ากับแพลตฟอร์มซอฟต์แวร์ HMI อัจฉริยะตามเฟรมเวิร์ก
รหัสอ้างอิงจะถูกนำเสนอพร้อมกับหมายเหตุการใช้งานนี้ด้วย

บันทึก: หมายเหตุแอปพลิเคชันนี้ไม่ได้อธิบายวิธีการพัฒนา GUI ที่ใช้ LVGL ด้วยเครื่องมือซอฟต์แวร์ GUI Guider

เกินview ของ LVGL และ GUI Guider อธิบายไว้ในส่วนที่ 1.1 และส่วนที่ 1.2

ไลบรารีกราฟิกน้ำหนักเบาและอเนกประสงค์
Light and Versatile Graphics Library (LVGL) เป็นไลบรารีกราฟิกโอเพ่นซอร์สฟรี
มีทุกสิ่งที่คุณต้องการเพื่อสร้าง GUI แบบฝังที่มีองค์ประกอบกราฟิกที่ใช้งานง่าย เอฟเฟ็กต์ภาพที่สวยงาม และใช้พื้นที่หน่วยความจำเหลือน้อย

คู่มือ GUI
GUI Guider เป็นเครื่องมือพัฒนาส่วนติดต่อผู้ใช้แบบกราฟิกที่เป็นมิตรต่อผู้ใช้จาก NXP ซึ่งช่วยให้สามารถพัฒนาจอแสดงผลคุณภาพสูงได้อย่างรวดเร็วด้วยไลบรารีกราฟิกโอเพ่นซอร์ส LVGL
เครื่องมือแก้ไขแบบลากและวางของ GUI Guider ทำให้ง่ายต่อการใช้งานคุณสมบัติต่างๆ ของ LVGL คุณสมบัติเหล่านี้ประกอบด้วยวิดเจ็ต ภาพเคลื่อนไหว และสไตล์เพื่อสร้าง GUI ที่มีการเขียนโค้ดน้อยที่สุดหรือไม่มีเลย
ด้วยการคลิกปุ่ม คุณสามารถเรียกใช้แอปพลิเคชันของคุณในสภาพแวดล้อมจำลองหรือส่งออกไปยังโปรเจ็กต์เป้าหมายได้
คุณสามารถเพิ่มโค้ดที่สร้างจาก GUI Guider ลงในโปรเจ็กต์ของคุณได้อย่างง่ายดาย ช่วยเร่งกระบวนการพัฒนา และช่วยให้คุณสามารถเพิ่มอินเทอร์เฟซผู้ใช้แบบฝังลงในแอปพลิเคชันของคุณได้อย่างราบรื่น
GUI Guider ใช้งานได้ฟรีกับ NXP วัตถุประสงค์ทั่วไปและ MCU แบบครอสโอเวอร์ และยังมีเทมเพลตโปรเจ็กต์ในตัวสำหรับแพลตฟอร์มที่รองรับหลายแพลตฟอร์ม
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการพัฒนา LVGL และ GUI บน GUI Guider โปรดไปที่ https://lvgl.io/ และ GUI Guider

การพัฒนาสภาพแวดล้อม

จัดเตรียมและตั้งค่าสภาพแวดล้อมการพัฒนาสำหรับการพัฒนาและบูรณาการแอป GUI เข้ากับแพลตฟอร์ม HMI อัจฉริยะ

สภาพแวดล้อมฮาร์ดแวร์

ต้องใช้ฮาร์ดแวร์ต่อไปนี้สำหรับการสาธิตหลังการพัฒนา:

  • ชุดพัฒนา HMI อัจฉริยะที่ใช้ NXP i.MX RT117H
  • SEGGER J-Link พร้อมอะแดปเตอร์ Cortex-M 9 พิน

สภาพแวดล้อมซอฟต์แวร์
เครื่องมือซอฟต์แวร์และเวอร์ชันที่ใช้ในหมายเหตุการใช้งานนี้ได้รับการแนะนำดังต่อไปนี้:

  • 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 อัจฉริยะ

แพลตฟอร์มซอฟต์แวร์ HMI อันชาญฉลาดสร้างขึ้นบนสถาปัตยกรรมเฟรมเวิร์ก นักพัฒนาพบว่าการเพิ่มแอปพลิเคชัน LVGL GUI ลงในแพลตฟอร์มซอฟต์แวร์ HMI อัจฉริยะเป็นเรื่องยาก แม้ว่าพวกเขาจะอ่านคู่มือนักพัฒนาและทราบเกี่ยวกับเฟรมเวิร์กก็ตาม
ส่วนถัดไปจะอธิบายวิธีการนำไปใช้ทีละขั้นตอน

พัฒนาแอปพลิเคชัน LVGL GUI บน GUI Guider
ตามที่กล่าวไว้ข้างต้น วิธีการพัฒนา LVGL GUI บน GUI Guider ไม่ได้เน้นในบันทึกการใช้งานนี้
แต่เป็น GUI เช่นampเลอเป็นสิ่งที่จำเป็น
ดังนั้น เทมเพลต GUI แบบง่ายหนึ่งเทมเพลตชื่อ Slider Progress ที่ให้ไว้ใน GUI Guider จึงถูกเลือกเป็น GUI เช่นampเพื่อการตั้งค่าที่รวดเร็ว
มีการใช้เทมเพลต Slider Progress GUI เนื่องจากมีรูปภาพที่จำเป็นในการสาธิตการสร้างทรัพยากรรูปภาพในแอปพลิเคชัน
GUI เช่นample สร้างง่ายมาก: หากต้องการสร้างโปรเจ็กต์ด้วยไลบรารี LVGL ที่อัปเดต V8.3.2 และเทมเพลตบอร์ดเป็น MIMXRT1176xxxxx โปรดดูคู่มือผู้ใช้ GUI Guider (เอกสาร GUIGUIDERUG).
รูปที่ 1 แสดงการตั้งค่าโครงการ

บันทึก: ต้องเลือกประเภทแผง ดังแสดงในกล่องสีแดงในรูปที่ 1 เนื่องจากใช้กับบอร์ดพัฒนาปัจจุบัน

หลังจากสร้างโปรเจ็กต์แล้ว ให้รันโปรแกรมจำลองเพื่อสร้างโค้ด LVGL GUI ที่เกี่ยวข้องและสร้างโปรเจ็กต์ด้วย
คุณสามารถตรวจสอบผลกระทบของ GUI เช่นampบนเครื่องจำลอง

รูปที่ 1 การตั้งค่าโปรเจ็กต์ GUI บน GUI Guider
การตั้งค่าโครงการ

สร้างโครงการของคุณบน HMI อัจฉริยะ
บันทึก: ขั้นแรก สร้างโปรเจ็กต์ของคุณบน MCUXpresso IDE

หลังจาก LVGL GUI เช่นample ได้รับการสร้างขึ้นแล้ว โดยสามารถไปที่เป้าหมายหลักเพื่อรวมเข้ากับแพลตฟอร์มซอฟต์แวร์ HMI อัจฉริยะบนโปรเจ็กต์ MCUXpresso เพื่อใช้งานแอปพลิเคชัน GUI ของคุณ
วิธีที่ง่ายและรวดเร็วคือการโคลนโครงการแอปพลิเคชันปัจจุบันที่นำเสนอบนแพลตฟอร์ม HMI อัจฉริยะ
แอปลิฟต์เป็นตัวเลือกที่ดีกว่าในฐานะแหล่งโคลนเนื่องจากมีการใช้งานที่เรียบง่าย

หากต้องการสร้างโครงการของคุณ ให้ทำตามขั้นตอนด้านล่าง:

  1. คัดลอกและวางโฟลเดอร์ “ลิฟต์” ในซอร์สโค้ด 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 อัจฉริยะ
โดยทั่วไป รูปภาพจะถูกใช้ใน GUI (เสียงที่ใช้ในการแจ้งด้วยเสียงเช่นกัน)
ภาพและเสียงเรียกว่าทรัพยากร โดยจัดเก็บไว้ในแฟลชตามลำดับ ก่อนที่จะตั้งโปรแกรมบนแฟลช ควรสร้างทรัพยากรไว้ในไบนารี่ file.
งานหลักคือการแทนที่ชื่อแอปอ้างอิง (ลิฟต์) ด้วยชื่อของคุณ

หากต้องการดำเนินการดังกล่าว ให้ทำตามขั้นตอนต่อไปนี้:

  1. ลบโฟลเดอร์ “images” ที่โคลนไว้ใต้ Slider_progress/resource
  2. คัดลอกโฟลเดอร์ “images” ใต้ \generated ในโครงการ GUI Guider ของคุณ
  3. วางไว้ใต้ Slider_progress/resource (นั่นคือ ใช้รูปภาพของคุณเอง แทนที่จะใช้รูปภาพจากแอปลิฟต์)
  4. ลบ *.mk file ใช้สำหรับ GUI Guider ในโฟลเดอร์ "รูปภาพ"
  5. เปลี่ยนชื่อ files ลิฟต์_resource.txt, ลิฟต์_resource_build.bat และลิฟต์_resource_build.sh ในโฟลเดอร์ “ทรัพยากร” ไปยังชื่อโปรเจ็กต์ของคุณ slider_progress_resource.txt, slider_progress_resource_build.bat และ Slider_progress_resource_build.sh
    หมายเหตุ:
    • ลิฟท์_resource.txt: ประกอบด้วยเส้นทางและชื่อของทรัพยากรทั้งหมด (ภาพและเสียง) ที่ใช้ในแอป
    • ลิฟต์_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 ถูกสร้างขึ้นในโฟลเดอร์ “ทรัพยากร”
    ไบนารีทรัพยากรรูปภาพ file ถูกตั้งโปรแกรมไว้บนแฟลช และข้อมูลการเข้าถึงทรัพยากรจะถูกใช้เพื่อเข้าถึงทรัพยากรบน smart HMI (ดูหัวข้อ 3.4.1)

รวมแอปพลิเคชัน LVGL GUI เข้ากับ HMI อัจฉริยะ
รหัสแอปพลิเคชัน LVGL GUI (นี่คือ SliderProgress GUI เช่น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/
    จากนั้นคัดลอกโฟลเดอร์ “generated” จากโปรเจ็กต์ GUI Guider และวางไปที่ Slider_progress/cm4/
  3. ลบโฟลเดอร์ “image” และ “mPythonImages” และโฟลเดอร์ทั้งหมด files *.mk และ *.py ในโฟลเดอร์ “generated”
    ดังที่ได้กล่าวไว้ข้างต้น รูปภาพในโฟลเดอร์ “รูปภาพ” ถูกสร้างขึ้นในไบนารีของทรัพยากร fileดังนั้นจึงไม่จำเป็นต้องใช้โฟลเดอร์ "รูปภาพ"
    โฟลเดอร์ “mPythonImages” และไฟล์ files *.mk และ *.py เป็นสิ่งที่ไม่ต้องการสำหรับ HMI อัจฉริยะ
  4. หากต้องการเพิ่มการควบคุม mutex ตามแพลตฟอร์ม HMI อัจฉริยะ และตั้งค่าตำแหน่งภาพบนแฟลช ให้แก้ไข file กำหนดเอง.c บน MCUXpresso IDE
    ทั้งหมดนี้ถูกกำหนดโดย RT_PLATFORM
  5. เปิดโครงการลิฟต์บน MCUXpresso IDE ค้นหาคำจำกัดความของแมโคร RT_PLATFORM ใน custom.c ภายใต้ sln_smart_tlhmi_elevator_cm4 > กำหนดเอง และคัดลอกบรรทัดโค้ดทั้งหมดจาก #if กำหนด(RT_PLATFORM) ไปยัง #endif และวางลงใน file custom.c ภายใต้ sln_smart_tlhmi_slider_progress_cm4 > กำหนดเอง
  6. ลบบรรทัดโค้ดภายใต้ #else ที่มี #else เนื่องจากใช้สำหรับ GUI ของลิฟต์
    บรรทัดโค้ดที่เพิ่มเข้ามาครอบคลุมสิ่งต่อไปนี้:
    • รวม fileเป็นดังนี้:
      รหัสและทรัพยากร

    • การประกาศตัวแปรมีดังนี้:
      รหัสและทรัพยากร
    • รหัส C ในฟังก์ชัน custom_init() มีดังนี้:
      รหัสและทรัพยากร
      รหัสและทรัพยากร
    • รหัส C สำหรับฟังก์ชัน _takeLVGLMutex(), _giveLVGLMutex() และ setup_imgs() ซึ่งตำแหน่งของรูปภาพทั้งหมดถูกตั้งค่าไว้
  7. แทนที่โค้ดในฟังก์ชัน setup_imgs() ด้วยโค้ดการตั้งค่าตำแหน่งสำหรับรูปภาพใน resources_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 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 ในอาร์เรย์เนื่องจาก .data ถูกตั้งค่าในฟังก์ชัน 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 > framework > hal > แสดงผลบนโปรเจ็กต์ MCUXpresso เปลี่ยนชื่อเป็น hal_display_lvgl_sliderprogress.c สำหรับแอปพลิเคชันของคุณ
    2. เปิด file hal_display_lvgl_sliderprogress.c และแทนที่สตริง “elevator” ทั้งหมดด้วยสตริงแอปพลิเคชันของคุณ “SliderProgress” ใน file.
  • ใช้อุปกรณ์ HAL เอาท์พุต
    1. คัดลอกและวาง hal_output_ui_elevator.c file ภายใต้กลุ่ม sln_smart_tlhmi_slider_progress_cm4 > กรอบงาน > 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. ลบการประกาศตัวแปรทั้งหมด รวมถึง enum และ array ยกเว้น 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 บน GUI ที่ระดับไดรเวอร์การแสดงผล
  • ลงทะเบียนอุปกรณ์ HAL ทั้งสองเครื่อง
    เปิด M4 หลัก sln_smart_tlhmi_cm4.cpp file ภายใต้ sln_smart_tlhmi_slider_progress_cm4 > แหล่งที่มา
    แทนที่สตริง “elevator” ทั้งหมดด้วยสตริงแอปพลิเคชันของคุณ “SliderProgress” ใน file.
    โดยจะลงทะเบียนอุปกรณ์ HAL การแสดงผลและเอาต์พุตสำหรับแอปพลิเคชันของคุณแทนแอปพลิเคชันลิฟต์
    ดังนั้น การรวมจึงเสร็จสมบูรณ์สำหรับการรันแอปพลิเคชัน LVGL GUI พื้นฐานบน HMI อัจฉริยะ
    ขึ้นอยู่กับข้อกำหนดเพิ่มเติมสำหรับแอปพลิเคชัน คุณสามารถเพิ่มการใช้งานเพิ่มเติมโดยอิงจากแอปพลิเคชันพื้นฐานแบบรวม

สาธิต

มีการปรับใช้การสาธิตแอปพลิเคชัน “slider_progress” พร้อมกับหมายเหตุแอปพลิเคชันนี้

หลังจากแตกไฟล์แพ็คเกจซอฟต์แวร์สาธิตแล้ว ให้ใส่ด้านล่างนี้ fileและโฟลเดอร์ลงในซอฟต์แวร์ 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 GUI สามารถทำงานได้สำเร็จบนบอร์ดพัฒนา HMI อัจฉริยะ (ดูรูปที่ 3 สำหรับการแสดงผลบนหน้าจอ)
    บันทึก: หากใช้ MCUXpresso IDE เวอร์ชัน 1.7.0 ให้เปิดใช้งาน “จัดการสคริปต์ลิงก์” ในการตั้งค่า > MCU C++ Linker > สคริปต์ Managed Linker ก่อนสร้างโปรเจ็กต์ CM4
    รูปที่ 3 จอแสดงผลสาธิต LVGL GUI บนบอร์ดพัฒนา HMI อัจฉริยะ
    การแสดงตัวอย่าง

ประวัติการแก้ไข

ประวัติการแก้ไขสรุปการแก้ไขเอกสารนี้

ตารางที่ 1. ประวัติการแก้ไข

หมายเลขการแก้ไข วันที่ การเปลี่ยนแปลงที่สำคัญ
1 16 มิถุนายน 2023 การเปิดตัวครั้งแรก

หมายเหตุเกี่ยวกับซอร์สโค้ดในเอกสาร

Exampรหัส le ที่แสดงในเอกสารนี้มีลิขสิทธิ์และใบอนุญาต BSD-3-Clause ดังต่อไปนี้:
ลิขสิทธิ์ 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 สำหรับการใช้งานยานยนต์ การใช้งานและข้อกำหนดดังกล่าว และ ( ข) เมื่อใดก็ตามที่ลูกค้าใช้ผลิตภัณฑ์สำหรับการใช้งานยานยนต์ที่เกินข้อกำหนดของ NXP Semiconductors การใช้งานดังกล่าวจะต้องเป็นความเสี่ยงของลูกค้าเองแต่เพียงผู้เดียว และ (c) ลูกค้าจะชดใช้ค่าเสียหายให้กับ NXP Semiconductors อย่างเต็มที่สำหรับความรับผิด ความเสียหาย หรือการเรียกร้องผลิตภัณฑ์ที่ล้มเหลวอันเป็นผลจากการออกแบบและการใช้งานของลูกค้า ผลิตภัณฑ์สำหรับการใช้งานยานยนต์ที่อยู่นอกเหนือการรับประกันมาตรฐานของ NXP Semiconductors และข้อกำหนดผลิตภัณฑ์ของ NXP Semiconductors

การแปล: เอกสารเวอร์ชันที่ไม่ใช่ภาษาอังกฤษ (แปล) รวมถึงข้อมูลทางกฎหมายในเอกสารนั้น มีไว้เพื่อการอ้างอิงเท่านั้น
ฉบับภาษาอังกฤษจะมีผลเหนือกว่าในกรณีที่มีความแตกต่างระหว่างฉบับแปลและฉบับภาษาอังกฤษ

ความปลอดภัย: ลูกค้าเข้าใจว่าผลิตภัณฑ์ NXP ทั้งหมดอาจมีช่องโหว่ที่ไม่สามารถระบุได้ หรืออาจสนับสนุนมาตรฐานหรือข้อกำหนดด้านความปลอดภัยที่กำหนดไว้โดยมีข้อจำกัดที่ทราบ
ลูกค้ามีหน้าที่รับผิดชอบในการออกแบบและการทำงานของแอปพลิเคชันและผลิตภัณฑ์ตลอดวงจรชีวิตของตน เพื่อลดผลกระทบของช่องโหว่เหล่านี้ต่อแอปพลิเคชันและผลิตภัณฑ์ของลูกค้า
ความรับผิดชอบของลูกค้ายังขยายไปสู่เทคโนโลยีเปิดและ/หรือกรรมสิทธิ์อื่นๆ ที่ได้รับการสนับสนุนโดยผลิตภัณฑ์ NXP เพื่อใช้ในแอปพลิเคชันของลูกค้า
NXP ไม่รับผิดชอบต่อช่องโหว่ใดๆ
ลูกค้าควรตรวจสอบการอัปเดตความปลอดภัยจาก NXP เป็นประจำและติดตามผลอย่างเหมาะสม
ลูกค้าจะต้องเลือกผลิตภัณฑ์ที่มีคุณสมบัติด้านความปลอดภัยที่ตรงตามกฎ ข้อบังคับ และมาตรฐานของการใช้งานที่ตั้งใจไว้มากที่สุด และทำการตัดสินใจด้านการออกแบบขั้นสุดท้ายเกี่ยวกับผลิตภัณฑ์ของตน และรับผิดชอบแต่เพียงผู้เดียวในการปฏิบัติตามข้อกำหนดทางกฎหมาย ข้อบังคับ และความปลอดภัยที่เกี่ยวข้องกับผลิตภัณฑ์ทั้งหมด โดยไม่คำนึงถึง ของข้อมูลหรือการสนับสนุนใด ๆ ที่ NXP อาจมีให้
NXP มี Product Security Incident Response Team (PSIRT) (ติดต่อได้ที่ PSIRT@nxp.com) ที่จัดการการสืบสวน การรายงาน และการออกโซลูชันสำหรับช่องโหว่ด้านความปลอดภัยของผลิตภัณฑ์ NXP

เอ็นเอ็กซ์พี บีวี: NXP BV ไม่ใช่บริษัทที่ดำเนินงานและไม่ได้จัดจำหน่ายหรือขายผลิตภัณฑ์

เครื่องหมายการค้า

สังเกต: แบรนด์อ้างอิง ชื่อผลิตภัณฑ์ ชื่อบริการ และเครื่องหมายการค้าทั้งหมดเป็นทรัพย์สินของเจ้าของที่เกี่ยวข้อง
เอ็นเอ็กซ์พี: เครื่องหมายคำและโลโก้เป็นเครื่องหมายการค้าของ NXP BV
i.MX: เป็นเครื่องหมายการค้าของ NXP BV

การสนับสนุนลูกค้า

สำหรับข้อมูลเพิ่มเติมกรุณาเยี่ยมชม: http://www.nxp.com
โลโก้.png

เอกสาร / แหล่งข้อมูล

NXP AN13948 การรวมแอปพลิเคชัน LVGL GUI เข้ากับแพลตฟอร์ม Smart HMI [พีดีเอฟ] คู่มือการใช้งาน
AN13948 การรวมแอปพลิเคชัน LVGL GUI เข้ากับแพลตฟอร์ม Smart HMI, AN13948, การรวมแอปพลิเคชัน LVGL GUI เข้ากับแพลตฟอร์ม Smart HMI

อ้างอิง

ฝากความคิดเห็น

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องกรอกข้อมูลมีเครื่องหมาย *