NXP AN14270 បន្ថែមការគាំទ្រសំឡេងទៅអ្នកណែនាំ GUI
លក្ខណៈបច្ចេកទេស
ឈ្មោះផលិតផល៖ AN14270 – បន្ថែមការគាំទ្រសំឡេងទៅកាន់ GUI Guider សម្រាប់ i.MX 93
ការពិនិត្យឡើងវិញ: 1.0
កាលបរិច្ឆេទ៖ ថ្ងៃទី 16 ខែឧសភា ឆ្នាំ 2024
ព័ត៌មានអំពីផលិតផល
អរូបី៖ កំណត់ចំណាំកម្មវិធីនេះស្វែងយល់ពីការរួមបញ្ចូលសំឡេងដោយការភ្ជាប់បច្ចេកវិទ្យាសម្គាល់ការនិយាយ (VIT) ជាមួយ GUI Guider ។
ក្រុមហ៊ុនផលិត៖ NXP Semiconductors
ជាងview
មគ្គុទ្ទេសក៍ GUI៖ ឧបករណ៍អភិវឌ្ឍន៍ចំណុចប្រទាក់អ្នកប្រើពី NXP ដែលប្រើបណ្ណាល័យក្រាហ្វិក LVGL ដើម្បីបង្កើតការបង្ហាញគុណភាពខ្ពស់ជាមួយនឹងធាតុក្រាហ្វិក ចលនា និងរចនាប័ទ្មផ្សេងៗ។
បច្ចេកវិទ្យាសំឡេងឆ្លាតវៃ (VIT)៖ ឧបករណ៍មួយដោយ NXP សម្រាប់កំណត់ wakewords និងពាក្យបញ្ជាតាមរយៈឧបករណ៍អនឡាញឥតគិតថ្លៃ និងកម្មវិធីគ្រប់គ្រងសំឡេង។
ជួរសារ (MQUEUE)៖ អនុវត្តជួរសារ POSIX 1003.1b សម្រាប់ទំនាក់ទំនងអន្តរដំណើរការរវាង GUI Guider និង VIT ។
តម្រូវការផ្នែករឹង កម្មវិធី និងម៉ាស៊ីន
ប្រភេទ | ការពិពណ៌នា |
---|---|
ផ្នែករឹង | តាមតម្រូវការផលិតផល |
កម្មវិធី | តាមតម្រូវការផលិតផល |
ម្ចាស់ផ្ទះ | តាមតម្រូវការផលិតផល |
ការណែនាំអំពីការប្រើប្រាស់ផលិតផល
តម្រូវការជាមុន
បញ្ចេញពន្លឺកំណែលីនុច
ដើម្បីបញ្ចេញ EVK ជាមួយកំណែលីនុច៖
$ ./uuu.exe -b emmc_all .sd-flash_evk imx-image-full-imx93evk.wic
ឧបករណ៍ខ្សែសង្វាក់ជាមួយគម្រោង Yocto
- បង្កើតថតឯកសារ៖
$ mkdir ~/bin
- ទាញយកឧបករណ៍ repo៖
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
- បន្ថែមថតឯកសារទៅអថេរ PATH៖
$ export PATH=~/bin:$PATH
- រូបមន្តក្លូន៖
$ mkdir imx-yocto-bsp $ cd imx-yocto-bsp $ repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-mickledore -m imx-6.1.55-2.2.0.xml $ repo sync
- ដើម្បីបង្កើត និងកំណត់រចនាសម្ព័ន្ធ៖
$ DISTRO=fsl-imx-fb MACHINE=imx93evk source imx-setup-release.sh -b deploy
សំណួរដែលសួរញឹកញាប់ (FAQ)
Q: តើ VIT ជាអ្វី?
A: VIT តំណាងឱ្យ Voice Intelligent Technology ដែលជាឧបករណ៍មួយដោយ NXP សម្រាប់កំណត់ពាក្យដាស់តឿន និងពាក្យបញ្ជាដោយប្រើឧបករណ៍អនឡាញ និងកម្មវិធីគ្រប់គ្រងសំឡេង។
Q: តើ GUI Guider ជាអ្វី?
A: GUI Guider គឺជាឧបករណ៍អភិវឌ្ឍន៍ចំណុចប្រទាក់អ្នកប្រើពី NXP ដែលប្រើបណ្ណាល័យក្រាហ្វិក LVGL ដើម្បីបង្កើតការបង្ហាញគុណភាពខ្ពស់ជាមួយនឹងធាតុក្រាហ្វិក ចលនា និងរចនាប័ទ្មផ្សេងៗ។
ព័ត៌មានឯកសារ
ព័ត៌មាន | មាតិកា |
ពាក្យគន្លឹះ | AN14270, VIT, ការទទួលស្គាល់ការនិយាយ, ការទំនាក់ទំនងអន្តរដំណើរការ (IPC), ជួរសារ, អ្នកណែនាំ GUI |
អរូបី | កំណត់សម្គាល់កម្មវិធីនេះស្វែងយល់ពីលទ្ធភាពនៃការរួមបញ្ចូលសំឡេងដោយបង្កើតស្ពានរវាងបច្ចេកវិទ្យាសម្គាល់ការនិយាយដូចជា VIT និង GUI Guider ដែលជាអ្នកបង្កើតចំណុចប្រទាក់។ |
សេចក្តីផ្តើម
ចំណុចប្រទាក់អ្នកប្រើបានកំណត់ការប្រើប្រាស់ឧបករណ៍ GUI Guider ។ ការទទួលបានអន្តរកម្មតាមរយៈកណ្តុរ ឬអេក្រង់ប៉ះអាចគ្រប់គ្រាន់សម្រាប់ករណីប្រើប្រាស់មួយចំនួន។ ទោះយ៉ាងណាក៏ដោយ ពេលខ្លះករណីប្រើប្រាស់តម្រូវឱ្យលើសពីដែនកំណត់របស់វា។ ឯកសារនេះស្វែងយល់ពីលទ្ធភាពនៃការរួមបញ្ចូលសំឡេងដោយបង្កើតស្ពានរវាងបច្ចេកវិទ្យាសម្គាល់ការនិយាយ ដូចជា VIT និងអ្នកបង្កើតចំណុចប្រទាក់ GUI Guider ។ វាប្រើវិធីសកលដើម្បីភ្ជាប់ពាក្យបញ្ជាការទទួលស្គាល់សំឡេងទាំងអស់ និងពាក្យដាស់តឿនទៅនឹងអន្តរកម្មណាមួយដែលបង្កើតឡើងដោយ GUI Guider ។
ជាងview
ដើម្បីកំណត់ទំនាក់ទំនងរវាង GUI Guider និងពាក្យបញ្ជាបច្ចេកវិទ្យា VIT សូមមើលផ្នែកទី 8 ។ ការទំនាក់ទំនងត្រូវបានបង្កើតដោយប្រើកូដដែលបានបង្កើតជាអ្នកដោះស្រាយ ដែលស្តាប់ និងអនុញ្ញាតឱ្យវាក្លែងធ្វើព្រឹត្តិការណ៍នៅក្នុង GUI ដើម្បីបង្កើតអន្តរកម្ម។
មគ្គុទ្ទេសក៍ GUI
GUI Guider គឺជាឧបករណ៍អភិវឌ្ឍន៍ចំណុចប្រទាក់អ្នកប្រើពី NXP ដែលផ្តល់នូវជម្រើសរហ័សដើម្បីបង្កើតការបង្ហាញគុណភាពខ្ពស់ដោយប្រើបណ្ណាល័យក្រាហ្វិក LVGL ។ វាប្រើធាតុក្រាហ្វិក ចលនា និងរចនាប័ទ្មផ្សេងៗគ្នា ដោយមានការកំណត់រចនាសម្ព័ន្ធ និងការកំណត់តាមបំណងផ្សេងៗគ្នា ជាមួយនឹងលទ្ធភាពនៃការមិនសរសេរកូដ។ សម្រាប់ព័ត៌មានបន្ថែមអំពី GUI Guider សូមមើល GUI Guider v1.6.1 User Guide (document GUIGUIDERUG)។
បច្ចេកវិទ្យាសំឡេងឆ្លាតវៃ
Voice Intelligent Technology (VIT) គឺជាឧបករណ៍ដែលបង្កើតឡើងដោយ NXP ដើម្បីកំណត់ពាក្យ wakewords និងពាក្យបញ្ជាដោយប្រើឧបករណ៍អនឡាញឥតគិតថ្លៃ បណ្ណាល័យ និងកញ្ចប់កម្មវិធីគ្រប់គ្រងសំឡេង។ MCUXpresso អាចប្រើវាសម្រាប់ micro-controllers ឬ Linux BSP អាចប្រើវាសម្រាប់ micro-processors។
ជួរសារ
ជួរសារ (MQUEUE) គឺជាអ្នកគ្រប់គ្រងដែលអនុវត្តទម្រង់ POSIX 1003.1b ជួរសារ។ វាត្រូវបានប្រើជាទំនាក់ទំនងអន្តរដំណើរការ (IPC) ដើម្បីបង្កើតស្ពានរវាង GUI Guider និង VIT ។ វាផ្លាស់ប្តូរទិន្នន័យក្នុងទម្រង់ជាសារ ផ្ញើវាតាមរយៈ VIT និងអនុវត្តការគ្រប់គ្រងជាមួយស្គ្រីប
command_handler ។
តម្រូវការផ្នែករឹង កម្មវិធី និងម៉ាស៊ីន
តារាងទី 1 ផ្តល់នូវព័ត៌មានលម្អិតនៃផ្នែករឹង កម្មវិធី និងម៉ាស៊ីនដែលតម្រូវឱ្យប្រើ VIT និង GUI Guider ។
តារាង 1. Hardware, software, និង host បានប្រើ
ប្រភេទ | ការពិពណ៌នា |
ផ្នែករឹង | • i.MX 93 EVK
• ការផ្គត់ផ្គង់ថាមពល៖ ការផ្គត់ផ្គង់ថាមពល USB Type-C 45 W (5 V/3 A) • ខ្សែ USB Type-C ពីបុរសទៅខ្សែ USB Type-A បុរស៖ ការផ្គុំ, អនុលោមតាម USB 3.0 • អាដាប់ទ័រ LVDSL និងខ្សែ HDMI ឬបន្ទះ LCD LVCD DY1212W-4856 • មីក្រូហ្វូន i.MX 93 ខាងក្នុង |
កម្មវិធី | • កំណែ Linux BSP៖ L6.1.55_2.2.0
• កំណែ GUI Guider v1.6.1 តទៅ • Toolchain 6.1-Langdale |
ម្ចាស់ផ្ទះ | • X86_64 Linux Ubuntu 20.04.6 LTS |
តម្រូវការជាមុន
ផ្នែកនេះពិពណ៌នាអំពីការដំឡើងឧបករណ៍ផ្សេងៗដែលត្រូវការ។
បញ្ចេញពន្លឺកំណែលីនុច
មុននឹងធ្វើតាមជំហានខាងក្រោម សូមប្តូរការកំណត់ចាប់ផ្ដើមទៅជារបៀបទាញយក ហើយភ្ជាប់ USB តាមរយៈម៉ាស៊ីន។ សម្រាប់ព័ត៌មានបន្ថែម សូមមើលមគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់ i.MX Linux (ឯកសារ IMXLUG)។
ដើម្បីបញ្ចេញ EVK សូមអនុវត្តជំហានខាងក្រោម៖
- ទាញយកការចេញផ្សាយរូបភាព NXP Linux BSP ថ្មីៗសម្រាប់ i.MX 93 (L6.1.55_2.2.0 ឬចុងក្រោយបំផុត)។
- ដើម្បីបញ្ចេញ EVK សូមទាញយក UUU ថ្មីៗ៖ https://github.com/nxp-imx/mfgtools/releases.
- ភ្ជាប់ EVK ជាមួយម៉ាស៊ីនដោយប្រើច្រក EVK USB1 ។
- ដោយប្រើ imx-image-full ដាក់កម្មវិធីទាំងពីរឱ្យដូចគ្នា។ file ហើយបញ្ចេញពន្លឺ EVK ដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
ជាជម្រើស ប្រើតែរូបភាពដើម្បីបញ្ចេញពន្លឺ EVK៖
ចំណាំ៖ ត្រូវប្រាកដថាពិនិត្យមើលម្ជុលចាប់ផ្ដើម។
ឧបករណ៍ខ្សែសង្វាក់ជាមួយគម្រោង Yocto
គម្រោង Yocto គឺជាការសហការប្រភពបើកចំហដែលជួយបង្កើតប្រព័ន្ធដែលមានមូលដ្ឋានលើលីនុចផ្ទាល់ខ្លួន។ Yocto បង្កើតរូបភាពដែលប្រើដោយ i.MX ។
ត្រូវប្រាកដថាម៉ាស៊ីនម៉ាស៊ីនមានកញ្ចប់ឧបករណ៍អភិវឌ្ឍន៍កម្មវិធី (ADT) ឬឧបករណ៍ខ្សែសង្វាក់ដើម្បីឱ្យមានបរិយាកាសដូចគ្នានឹង EVK ។ ត្រូវប្រាកដថាវាអាចចងក្រងកម្មវិធីសម្រាប់ក្រុមប្រឹក្សាភិបាលគោលដៅ។ ដើម្បីទទួលបានខ្សែសង្វាក់ឧបករណ៍ត្រឹមត្រូវ សូមមើល "ផ្នែក 4.5.12" នៅក្នុង i.MX មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់លីនុច (ឯកសារ IMXLUG) និង "ផ្នែកទី 4" នៅក្នុងមគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់គម្រោង i.MX Yocto (ឯកសារ IMXLXYOCTOUG) ។
ដើម្បីទទួលបាន toolchain នៅលើម៉ាស៊ីនម៉ាស៊ីនពីបរិស្ថាន Yocto សូមអនុវត្តជំហានខាងក្រោម៖
- បង្កើតថតឯកសារនៅក្នុងថតផ្ទះ៖
- ត្រូវប្រាកដថាថត ~/bin ស្ថិតនៅក្នុងអថេរ PATH ។
- ក្លូនរូបមន្តដើម្បីប្រើក្នុងឃ្លាំង៖
- ដើម្បីសាងសង់ កំណត់រចនាសម្ព័ន្ធដូចខាងក្រោមៈ
- ដើម្បីបង្កើត toolchain សូមរៀបចំបរិស្ថានឯករាជ្យដោយគ្មានគម្រោង Yocto ដូចខាងក្រោម៖
មគ្គុទ្ទេសក៍ GUI
ផ្នែកនេះពន្យល់អំពីកម្មវិធីណែនាំ GUI និងរបៀបប្រើមូលដ្ឋានដើម្បីបង្កើតគម្រោងដោយផ្អែកលើឧបករណ៍នេះ។ វាក៏ពន្យល់ផងដែរអំពីលក្ខណៈផ្សេងគ្នាក្នុងការប្រើប្រាស់ និងយក advantage នៃលក្ខណៈទាំងនោះ។
ធាតុក្រាហ្វិក និងព្រឹត្តិការណ៍ Gui Guider
នៅពេលអ្នកប្រើប្រាស់បង្កើតគម្រោងក្នុង GUI Guider ការប្រើប្រាស់ធាតុក្រាហ្វិកផ្សេងៗត្រូវបានចាត់តាំងជាវត្ថុដែលបានបង្កើតដោយស្វ័យប្រវត្តិ។ វត្ថុនេះមានលក្ខណៈសម្បត្តិផ្សេងគ្នា; មួយក្នុងចំណោមពួកគេគឺព្រឹត្តិការណ៍។ អាស្រ័យលើធាតុក្រាហ្វិក ព្រឹត្តិការណ៍អាចមានការកេះផ្សេងគ្នា ហើយអ្វីដែលកើតឡើងអាស្រ័យលើគោលដៅ។ សម្រាប់អតីតample, រូបភាពទី 1 បង្ហាញពីអ្វីដែលកើតឡើងប្រសិនបើប៊ូតុងមួយកំណត់គោលដៅលើអេក្រង់ដើម្បីឱ្យមានសកម្មភាព "ផ្ទុកអេក្រង់" ប៉ុណ្ណោះ។
វត្ថុទាំងនេះអាចរកបាននៅក្នុងផ្លូវ /generated/gui-guider.h. script command_handler យក advantage នៃព្រឹត្តិការណ៍ដែលប្រើដោយធាតុក្រាហ្វិកក្លែងធ្វើគន្លឹះ។
សម្រាប់ព័ត៌មានបន្ថែមអំពីធាតុក្រាហ្វិក និងព្រឹត្តិការណ៍ សូមមើល GUI Guider v1.6.1 User Guide (ឯកសារ GUIGUIDERUG)។
ការចាប់ផ្តើមរហ័ស
ដើម្បីចាប់ផ្តើមធ្វើការ សូមដំឡើងកម្មវិធីណែនាំ GUI ។
នៅលើការដំឡើងម៉ាស៊ីន អនុវត្តជំហានដូចខាងក្រោមៈ
- ទាញយកកំណែចុងក្រោយបំផុតនៃ GUI Guider (1.7.1 ឬចុងក្រោយបំផុត)។
- អនុវត្តតាមជំហានដើម្បីទាញយក។
នៅទីនេះ អ្នកប្រើប្រាស់អាចជ្រើសរើសបង្កើតគម្រោងជាមួយអតីតផ្លូវការamples ឬគម្រោងក្នុងស្រុក។
ដើម្បីបង្កើតគម្រោង GUI សូមអនុវត្តជំហានខាងក្រោម៖
- បើកកម្មវិធីណែនាំ GUI 1.7.1 ។
- បង្កើតគម្រោងមួយ។
- ជ្រើសរើសកំណែ LVGL ។
- សម្រាប់ i.MX 93 សូមជ្រើសរើសប្រព័ន្ធដំណើរការ i.MX ។
- ជ្រើសរើសគំរូ។ សម្រាប់ឯកសារនេះ ជ្រើសរើសគំរូ "ScreenTransition"។
- ជ្រើសរើសឈ្មោះគម្រោង ហើយដើម្បីបង្កើតគម្រោងសូមចុចបង្កើត។
- បង្អួចមេត្រូវតែបង្ហាញដូចបង្ហាញក្នុងរូបភាពទី 6 ។
ការបង្កើតធាតុក្រាហ្វិក ព្រឹត្តិការណ៍ និងគន្លឹះ
ដើម្បីបង្កើតធាតុក្រាហ្វិក ព្រឹត្តិការណ៍ និងគន្លឹះ សូមអនុវត្តជំហានខាងក្រោម៖
- នៅផ្នែកខាងឆ្វេងនៃកម្មវិធីណែនាំ GUI ចុចប៊ូតុង ដែលរំលេចជាពណ៌ក្រហមពីរដង។
- ជាលទ្ធផល ប៊ូតុងពង្រីកដើម្បីបង្ហាញធាតុក្រាហ្វិកដែលមានទាំងអស់។
វាអាចមានធាតុក្រាហ្វិកផ្សេងៗដែលមានលក្ខណៈសម្បត្តិផ្សេងៗគ្នា។ ចំណាំកម្មវិធីនេះផ្តោតលើប៊ូតុងប្រភេទធាតុក្រាហ្វិក។ ទោះយ៉ាងណាក៏ដោយ វាអាចមានប្រភេទធាតុក្រាហ្វិកផ្សេងទៀតជាមួយនឹងការកំណត់របស់វា។ សម្រាប់ព័ត៌មានបន្ថែម សូមមើល "ព័ត៌មានលំអិតអំពីធាតុក្រាហ្វិក" នៅក្នុង GUI Guider v1.6.1 User Guide (ឯកសារ GUIGUIDERUG)។ - បន្ថែមធាតុក្រាហ្វិកប៊ូតុងដោយអូសវាទៅ UI ពីផ្ទាំងធាតុក្រាហ្វិក។
- ចុចកណ្ដុរស្ដាំលើប៊ូតុងសម្រាប់លក្ខណៈសម្បត្តិហើយចុចបន្ថែមព្រឹត្តិការណ៍។
- បង្អួចមួយនឹងលេចឡើងដែលបង្ហាញពីព្រឹត្តិការណ៍ទាំងអស់ដែលធាតុក្រាហ្វិកអាចបង្កឱ្យមាន។
- បន្ទាប់មក បង្អួចបង្ហាញព្រឹត្តិការណ៍ទាំងអស់ដែលកេះអាចបាញ់បាន។ ព្រឹត្តិការណ៍ទាំងនេះអាចត្រូវបានអនុវត្តទៅអេក្រង់ ធាតុក្រាហ្វិកផ្សេងទៀត ឬបង្កើតព្រឹត្តិការណ៍ផ្ទាល់ខ្លួន។
- សម្រាប់អតីតនេះ។ampដូច្នេះ អេក្រង់ថ្មីត្រូវបានផ្ទុក។ ចុចលើអេក្រង់ផ្ទុក ហើយជ្រើសរើសអេក្រង់ដែលត្រូវផ្ទុក។
- ដើម្បីសាកល្បងកម្មវិធី សូមប្រើកម្មវិធីក្លែងធ្វើដែលរួមបញ្ចូលជាមួយ GUI Guider ។ វាត្រូវបានប្រើដើម្បីជ្រើសរើសប៊ូតុងបន្ទាប់ និងប្រភេទនៃការក្លែងធ្វើដែលត្រូវប្រើ។ ចំពោះករណីនេះ ប្រើម៉ាស៊ីនក្លែងធ្វើនៅក្នុង C.
- ដើម្បីផ្ទុកអេក្រង់ថ្មី ចុចប៊ូតុង។
អគារសម្រាប់ i.MX 93
ដើម្បីបង្កើត i.MX 93 សូមអនុវត្តជំហានដូចខាងក្រោមៈ
- ត្រូវប្រាកដថាខ្សែសង្វាក់ឧបករណ៍ដែលប្រើដោយ GUI Guider ត្រូវបានដំឡើងត្រឹមត្រូវ។ ដើម្បីផ្ទៀងផ្ទាត់ឆ្លងកាត់ សូមពិនិត្យមើលផ្លូវ
- ពីអតីតអតីតample ដើម្បីបង្កើតកម្មវិធី ហើយដំណើរការវានៅលើ i.MX 93 សូមជ្រើសរើស Project > Build > Yocto ពីរបារខាងលើ។
- ដើម្បីពិនិត្យមើលស្ថានភាពនៃគម្រោង ទំហំគោលពីរ និងកំណត់ហេតុ សូមជ្រើសរើសផ្ទាំងព័ត៌មាននៅផ្នែកខាងក្រោមនៃកម្មវិធី។ ពិនិត្យកំណត់ហេតុដោយពង្រីកផ្ទាំងព័ត៌មាន។
- កំណត់ហេតុផ្តល់ព័ត៌មានអគារ រួមទាំងទីតាំងរបស់ប្រព័ន្ធគោលពីរ file. ចំពោះករណីនេះប្រព័ន្ធគោលពីរគឺស្ថិតនៅក្នុងផ្លូវ / /build/gui_guider ។
- កំណត់ទីតាំងម៉ាស៊ីនមេ ហើយផ្ញើវាទៅ EVK ដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
ចំណាំ៖ ដើម្បីប្រើវិធីសាស្រ្តខាងលើ វាចាំបាច់ក្នុងការដែលទាំងម៉ាស៊ីន ម៉ាស៊ីន និងគោលដៅគឺនៅលើបណ្តាញតែមួយ ហើយ IP របស់ក្រុមប្រឹក្សាភិបាលត្រូវបានគេស្គាល់។ - ប្រតិបត្តិប្រព័ន្ធគោលពីរ file នៅលើ EVK ដោយប្រើពាក្យបញ្ជាដូចខាងក្រោមៈ
សម្រាប់អតីតample ដោយប្រើអេក្រង់ LVDS ដែលបង្ហាញគម្រោងដែលបង្កើតឡើងដោយ GUI Guider ដូចបង្ហាញក្នុងរូបភាពទី 19 ។
វីធី
ផ្នែកនេះពន្យល់ពីរបៀបប្រើប្រាស់ VIT ឯករាជ្យ និងបង្កើតគំរូដើម្បីភ្ជាប់វាជាមួយ GUI Guider ។ វាពន្យល់ពីរបៀបប្រើម៉ាស៊ីនដើម្បីបង្កើតគំរូជាមួយនឹងលក្ខណៈដែលចង់បាន។ សម្រាប់ព័ត៌មានបន្ថែម សូមមើល VOICE-INTELLIGENT-TECHNOLOGY ។
បង្កើតគំរូ
ដើម្បីបង្កើតគំរូ សូមអនុវត្តជំហានខាងក្រោម៖
- ចូលទៅ VIT webគេហទំព័រ៖ ឧបករណ៍បង្កើតគំរូ VIT
- ចុចលើផ្ទាំង បង្កើតគំរូ។
- ជ្រើសរើសវេទិកា និងកំណែ SW ជា “Linux BSP” និង “LF6.1.55_2.2.0”។ ដូចគ្នានេះផងដែរ ជ្រើសរើសជម្រើសដែលអាចអនុវត្តបានសម្រាប់ឧបករណ៍ជា “i.MX93” និងភាសាជា “ភាសាអង់គ្លេស”។
- បន្ថែម wakewords ដែលដើរតួជាគន្លឹះដែលប្រាប់ VIT ពេលណាត្រូវចាប់ផ្តើមស្តាប់ការបញ្ជាដោយសំឡេង។ នៅពេលដែលពាក្យបញ្ជាថ្មី ឬពាក្យបញ្ជាត្រូវបានបង្កើត វាស្នើឱ្យកំណត់តម្លៃសម្រាប់ "ភាពរសើប"។ ប៉ារ៉ាម៉ែត្រនេះបង្កើនអត្រាទទួលស្គាល់ ដែលមានន័យថាប្រសិនបើវាជាតម្លៃវិជ្ជមាន វាងាយស្រួលក្នុងការរកឃើញ ប៉ុន្តែអាចបណ្តាលឱ្យមានការរកឃើញមិនពិតកាន់តែច្រើន។ ជំនួសឱ្យតម្លៃអវិជ្ជមានដែលប្រើដើម្បីជៀសវាងការភាន់ច្រលំរវាងពាក្យគន្លឹះ សូមរក្សាតម្លៃនៃភាពប្រែប្រួលជា 0។ សម្រាប់ឧ។ample, នៅទីនេះ ឃ្លា "hey led" ត្រូវបានបន្ថែម។
- បន្ថែមការបញ្ជាដោយសំឡេងដែលត្រូវប្រើ និងលុបចោលពាក្យបញ្ជាដែលមិនបានប្រើ។
- ចុចប៊ូតុងបង្កើតគំរូ ហើយរង់ចាំរហូតដល់ប៊ូតុងទាញយកគំរូត្រូវបានដោះសោ។
- គំរូត្រូវបានបញ្ជូនទៅផ្ទាំង MY MODELS ។ ដើម្បីទាញយកម៉ូដែលថ្មីៗបំផុត សូមចុចរូបតំណាងទាញយក។
- ស្រង់ឯកសារ zip ហើយរក្សាទុកឯកសារ file VIT_Model_en ដែលមានថត VIT_package ។
កំពុងចងក្រង VIT voice_ui_app ជាឯកត្តជន
Voice_ui_app គឺជាអតីតampលេបានបង្កើតសម្រាប់ឃ្លាំង imx-voiceui ។ កម្មវិធីនេះប្រើគំរូដើម្បីស្វែងរក wakewords និងពាក្យបញ្ជា។ ឧបករណ៍ប្រើប្រាស់ដែលប្រើដោយឯកសារនេះគឺជាអាគុយម៉ង់ "ជូនដំណឹង" ។ អាគុយម៉ង់នេះនៅពេលដែលវារកឃើញ wakeword ឬពាក្យបញ្ជាបើក Python file WakeWordNotify ឬ WWCommandNotify ជាមួយនឹងអាគុយម៉ង់ប្រព័ន្ធដោយប្រើអត្តសញ្ញាណ (ID) ។ លេខសម្គាល់នេះជួយបែងចែកភាពខុសគ្នារវាងគន្លឹះ។
ដើម្បីបង្កើត voice_ui_app នៅលើម៉ាស៊ីន និងជួយកំណត់វាទៅម៉ូដែលមុនដែលបានបង្កើត សូមអនុវត្តជំហានខាងក្រោម៖
- Clone VIT repository រួមទាំងកំណែសាខា ដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
$ git ក្លូន https://github.com/nxp-imx/imx-voiceui -b lf-6.1.55-2.2.0 - បង្កើតការបម្រុងទុកនៃប្រភពដើម fileដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
$ ស៊ីឌី / imx-voiceui
$ mv ./vit/platforms/iMX9_CortexA55/lib/VIT_Model_en.h - ដំឡើង toolchain ដែលបានដំឡើងពីមុន៖
ប្រភព $ /opt/fsl-imx-xwayland/6.1-langdale/environment-setup-armv8a-poky-linux
ចំណាំ៖ ប្រើ toolchain ដែលបង្កើតឡើងដោយ Yocto ។ - បង្កើតគម្រោងរបស់អ្នក ដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
$ make all VERSION=04_08_01 CURRENT_GCC_VERSION=10 BUILD_ARCH=CortexA55 - នៅពេលដែលគម្រោងត្រូវបានសាងសង់ វាបង្កើតថតដែលមានឈ្មោះចេញផ្សាយ។ ចម្លង file voice_ui_app នៅក្នុងថតនេះទៅកាន់ EVK៖
$ scp release/voice_ui_app root@ :/home/root
ដោយប្រើប៉ារ៉ាម៉ែត្រ -notify
ស្គ្រីបដែលហៅដោយ voice_ui_app ពេលឆ្លងកាត់ទង់ “-notify” ត្រូវតែស្ថិតនៅក្នុងផ្លូវ /usr/bin/។ ប្រើឯកសារភ្ជាប់ files ទៅ /usr/bin/ ហើយចម្លងស្គ្រីបទាំងនេះទៅ EVK ។
$ scp WakeWordNotify root@ :/usr/bin/
$ scp WWCommandNotify root@ :/usr/bin/
នេះ។ fileនៅខាងក្នុង ប្រើ Wakeword/command ID ហើយផ្ញើវាតាមជួរសារ។
បន្ទាប់ពីចម្លងទាំងនេះ files ទៅ EVK ប្រើប៉ារ៉ាម៉ែត្រ "-notify" ដើម្បីបញ្ជាក់ថា fileWakeWordNotify និង WWCommandNotify មានការអនុញ្ញាតចាំបាច់។ ដើម្បីបន្ថែមវានៅលើ EVK សូមប្រតិបត្តិពាក្យបញ្ជាខាងក្រោម៖
root@imx93evk:~# chmod a+x /usr/bin/WakeWordNotify root@imx93evk:~# chmod a+x /usr/bin/WWCommandNotify
អូឌីយ៉ូផ្នែកខាងមុខ
Audio front-end (AFE) ត្រូវបានប្រើជាព័ត៌មានសម្រាប់ការទទួលស្គាល់សំឡេង VIT ។ វាជួយសម្អាតសំលេងរំខាន និងបន្ទរដោយប្រើប្រភព និងឯកសារយោងរបស់អ្នកនិយាយ។ ដូច្នេះ លទ្ធផលគឺសំឡេងមីក្រូហ្វូនឆានែលតែមួយច្បាស់ដែលអាចប្រើសម្រាប់ដំណើរការ។ សម្រាប់ព័ត៌មានបន្ថែម សូមមើល VOICESEEKER ។
AFE អាចត្រូវបានរកឃើញនៅខាងក្នុង EVK នៅផ្លូវ /unit_tests/nxp-afe ។
ដើម្បីរៀបចំ និងប្រតិបត្តិកម្មវិធី សូមអនុវត្តតាមជំហានក្នុង file TODO.md ក្នុង nxp-afe៖
- ត្រូវប្រាកដថា DTB គឺ imx93-11 × 11-evk.dtb ។
- ដំឡើងម៉ូឌុល aloop ដើម្បីគាំទ្រ AFE៖
root@imx93evk៖~# sudo modprobe snd-aloop - បង្កើតការបម្រុងទុកនៃ asound.conf ហើយប្រើ asound.conf ដែលត្រូវគ្នាសម្រាប់ក្រុមប្រឹក្សាភិបាល៖
root@imx93evk:~# mv /etc/asound.conf /etc/asound-o.conf
root@imx93evk:~# cp /unit_tests/nxp-afe/asound.conf_imx93 /etc/asound.conf - ផ្លាស់ប្តូរ WakeWordEnginge ដើម្បីប្រើម៉ាស៊ីនពាក្យ VIT ឱ្យបានត្រឹមត្រូវ។ ការកំណត់នេះគឺនៅខាងក្នុង file /unit_tests/nxp-afe/Config.ini ។
- កែប្រែទ្រព្យសម្បត្តិ WakeWordEngine = VoiceSpot ដែលប្រើ VoiceSpot ជាលំនាំដើមទៅ WakeWordEngine = VIT ។
- ដើម្បីសាកល្បង AFE សូមប្រតិបត្តិ voice_ui_app៖
root@imx93evk:~# ./voice_ui_app &
ចំណាំ៖ ក្នុងករណីនេះវាមិនចាំបាច់ក្នុងការបន្ថែមប៉ារ៉ាម៉ែត្រ "-notify" ទេ។ - ប្រតិបត្តិ AFE ដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
root@imx93evk:~# /unit_tests/nxp-afe/afe libvoiceseekerlight & - ដើម្បីកំណត់ថាតើ AFE ដំណើរការក្នុងផ្ទៃខាងក្រោយ ប្រើពាក្យបញ្ជា & #; ដើម្បីដឹងថាកម្មវិធីអ្វីផ្សេងទៀតកំពុងដំណើរការក្នុងផ្ទៃខាងក្រោយ សូមប្រើពាក្យបញ្ជាខាងក្រោម៖
root@imx93evk: ~# ps - ដើម្បីបិទ AFE ឬ voice_ui_app សូមប្រើពាក្យបញ្ជាខាងក្រោម៖
root@imx93evk:~# pkill afe
root@imx93evk:~# pkill voice_ui_app
កំពុងដំណើរការ voice_ui_app ដោយគ្មាន -notify
- បន្ទាប់ពីធ្វើតាមជំហាននៅក្នុង TODO.md fileដំណើរការកម្មវិធី binary voice_ui_app ពីស្ថានីយនៅលើ EVK ។ វាបង្ហាញព័ត៌មានអំពីរបៀបដែល VIT កំពុងដំណើរការ។
- ដើម្បីចិញ្ចឹម voice_ui_app ប្រតិបត្តិ AFE ដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
root@imx93evk:~# /unit_tests/nxp-afe/afe libvoiceseekerlight & - និយាយពាក្យបញ្ជាសំឡេង និងពាក្យបញ្ជា ហើយពិនិត្យមើលថាតើវាដំណើរការដូចការរំពឹងទុកដែរឬទេ។ វាបង្ហាញពី wakeword និងពាក្យបញ្ជាសំឡេងនៅក្នុងស្ថានីយដូចខាងក្រោម៖
- Wakeword បានរកឃើញ 1 HEY NXP StartOffset 16640
- ពាក្យបញ្ជាសំឡេងបានរកឃើញ 3 បើក
កម្មវិធី GUI Guider VIT
ដូចដែលបានពន្យល់ពីមុន កម្មវិធី/script command_handler តាមរយៈការជូនដំណឹង VIT ផ្ញើលេខសម្គាល់ពាក្យបញ្ជា និងលេខសម្គាល់ wakeword ទៅកាន់ជួរសារជា IPC ។ បន្ទាប់មកវាចាប់យកលេខសម្គាល់ទាំងនេះដើម្បីក្លែងធ្វើព្រឹត្តិការណ៍នៅក្នុងកម្មវិធី GUI-Guider ។ រូបភាពទី 26 បង្ហាញពីរបៀបដែលទំនាក់ទំនងនេះត្រូវបានប្រតិបត្តិ។
ចំណាំ៖ ត្រូវប្រាកដថាកំណត់រចនាសម្ព័ន្ធឧបករណ៍ដោះស្រាយឱ្យដំណើរការបានត្រឹមត្រូវជាមួយគំរូផ្ទាល់ខ្លួនដែលបានបង្កើត។ ការកែប្រែទាំងនេះត្រូវតែអនុវត្តនៅលើម៉ាស៊ីន។
ប្រើ command_handler ដើម្បីក្លែងធ្វើព្រឹត្តិការណ៍
ដើម្បីប្រើ command_handler ដើម្បីក្លែងធ្វើព្រឹត្តិការណ៍ សូមអនុវត្តជំហានខាងក្រោម៖
- បន្ថែម files command_handler.h និង command_handler.c ទៅកាន់គម្រោង GUI Guider នៅក្នុងថត / / ផ្ទាល់ខ្លួន / ។
- ដើម្បីផ្គូផ្គងម៉ូដែលបច្ចុប្បន្នដែលបានប្រើ សូមកែប្រែ command_handler.h ដោយផ្លាស់ប្តូរ voice_cmd_t និង voice_ww_t ។
ចំណាំ៖ ត្រូវប្រាកដថាការបញ្ជាទិញដូចគ្នាត្រូវបានប្រើនៅក្នុងគំរូ។ - កែប្រែបរិមាណនៃ wakewords និងពាក្យបញ្ជានៅក្នុង file / /custom/command_handler.h:
#កំណត់ VIT_WW_NUMBER 2
#កំណត់ VIT_CMD_NUMBER 5 - ចាប់ផ្តើមចំណុចប្រទាក់ពាក្យបញ្ជានៅក្នុង file / /custom/custom.c. GUI Guider បង្កើតវា។ file ដោយស្វ័យប្រវត្តិ។
# រួមបញ្ចូល “command_handler.h” - មុខងារដែលបានកំណត់ជាមោឃៈ custom_init(lv_ui *ui) មាននៅក្នុង file /
ផ្លូវ>/custom/custom.c. មុខងារនេះអាចត្រូវបានកែប្រែដើម្បីបន្ថែមកូដ និងពាក្យបញ្ជា start_command_handler() ដូចខាងក្រោម៖
void custom_init(lv_ui *ui)
{
/* បន្ថែមលេខកូដរបស់អ្នកនៅទីនេះ */
start_command_handler();
}
កន្លែងណា៖
start_command_handler() ត្រូវបានប្រើសម្រាប់បង្កើតខ្សែស្រឡាយដែលកំពុងដំណើរការជាអ្នកដោះស្រាយ ទទួលយកសារដែលផ្ញើដោយ VIT និងប្រតិបត្តិពាក្យបញ្ជាដែលផ្តល់ដោយ command_handler_link()។ - ដើម្បីភ្ជាប់ពាក្យបញ្ជា VIT wakewords ជាមួយវត្ថុ និងព្រឹត្តិការណ៍ សូមប្រើពាក្យបញ្ជាខាងក្រោម៖
void command_handler_link(voice_ww_t WW_Id, voice_cmd_t CMD, lv_obj_t** obj, lv_event_code_t event);
កន្លែងណា៖
• command_handler_link() ត្រូវបានប្រើដើម្បីរក្សាទុកព្រឹត្តិការណ៍មួយដើម្បីក្លែងធ្វើសម្រាប់ការប្រតិបត្តិ VIT ។
• ធាតុបញ្ចូល voice_ww_t និង voice_cmd_t ត្រូវបានបង្កើតក្នុងជំហានទី 2 ទាក់ទងដោយផ្ទាល់ជាមួយគំរូ VIT ។
• អាគុយម៉ង់ទីបី lv_obj_t** ទាក់ទងនឹងការបង្កើតវត្ថុ GUI Guider ។ ដំបូង កំណត់ទីតាំងវត្ថុដែលត្រូវភ្ជាប់។ ឈ្មោះត្រូវនឹងរចនាសម្ព័ន្ធបន្ទាប់ _ . ដើម្បីស្វែងរកកន្លែងដែលវាត្រូវបានកំណត់ សូមពិនិត្យមើល file បង្កើតដោយ GUI Guider នៅ generated/gui_guider.h. នៅទីនេះ អ្នកអាចរកឃើញរចនាសម្ព័ន្ធបន្ទាប់ជាមួយនឹងវត្ថុដែលអាចមានទាំងអស់ដើម្បីភ្ជាប់។
មុខងារ custom_init(lv_ui *ui) ត្រូវបានប្រើដើម្បីចាប់ផ្តើមនៅពេលចាប់ផ្តើមការប្រតិបត្តិ GUI Guider ។ រចនាសម្ព័ន្ធនេះអាចត្រូវបានប្រើដើម្បីទាក់ទងវាជាមួយវត្ថុដោយដឹងពីរបៀបប្រើវាឱ្យបានត្រឹមត្រូវ។ ទ្រនិចនៃរចនាសម្ព័ន្ធដែលបានផ្តល់ឱ្យគឺ *ui ហើយទ្រនិចសម្រាប់ស្វែងរកគឺ lv_obj_t** ។ ដូច្នេះ ចាំបាច់ត្រូវប្រើរចនាសម្ព័ន្ធនេះជាមួយនឹងទម្រង់បន្ទាប់៖
&ui->speed_btn_1
- អាគុយម៉ង់ទីបួន ព្រឹត្តិការណ៍ lv_event_code_t ទាក់ទងនឹងព្រឹត្តិការណ៍ដែលនឹងត្រូវបានកេះ។ ជាធម្មតាវាមានរចនាសម្ព័ន្ធដូចនេះ៖ LV_EVENT_ . វាកំណត់អ្វីដែលត្រូវធ្វើជាមួយព្រឹត្តិការណ៍ដែលបង្កឡើងតាមរយៈកូដ viewer នៅក្នុង file events_init.c.
សម្រាប់អតីតample, btn_1 ដែលបង្កើតក្នុងល្បឿនអេក្រង់មានព្រឹត្តិការណ៍ទាំងនេះបង្កើតដោយ GUI Guider ។
Example
ផ្នែកនេះបង្ហាញពីអតីតample នៃការអនុវត្តនេះដើម្បីបន្ថែមការគាំទ្រជាសំឡេងទៅកាន់ GUI Guider ដោយបិទបើកធាតុក្រាហ្វិក LED និងការផ្លាស់ប្តូររវាងអេក្រង់ GUI ។
- ដោយប្រើគំរូ GUI ដែលបង្កើតដោយប៊ូតុង បន្ថែមធាតុក្រាហ្វិក។ សម្រាប់អតីតampដូច្នេះ បន្ថែមធាតុក្រាហ្វិក LED ។
- បន្ថែមព្រឹត្តិការណ៍ដែលបានចុចទៅ btn_1 និងដើម្បីផ្លាស់ប្តូរផ្ទៃខាងក្រោយបន្ថែមការកំណត់រចនាសម្ព័ន្ធនៃព្រឹត្តិការណ៍។ សម្រាប់ករណីនេះ ផ្ទៃខាងក្រោយត្រូវតែត្រូវបានជ្រើសរើសជាពណ៌ខ្មៅ ដើម្បី "បិទ" ធាតុក្រាហ្វិក LED ។ ដូច្នេះ ព្រឹត្តិការណ៍ដែលប្រើត្រូវបានចុច > led_1 > ផ្ទៃខាងក្រោយខ្មៅ (#000000)។
- ដោយប្រើប៊ូតុងដូចគ្នា កំណត់រចនាសម្ព័ន្ធព្រឹត្តិការណ៍មួយ ដើម្បីផ្តល់វាឱ្យ "បើក" ។ សម្រាប់ករណីនេះ បន្ថែមព្រឹត្តិការណ៍ដែលបានចេញផ្សាយទៅ btn_1 ហើយបន្ថែមពណ៌ក្រហមទៅផ្ទៃខាងក្រោយ។ ដូច្នេះ ព្រឹត្តិការណ៍ដែលប្រើត្រូវបានចេញផ្សាយ > led_1 > ផ្ទៃខាងក្រោយពណ៌ក្រហម (#ff0000)។
- នៅពេលដែល GUI ត្រូវបានបង្កើត បន្ថែម command_handler.c និង command_handler.h ទៅ custom/folder ។
- ដើម្បីបង្កើតតំណភ្ជាប់រវាងព្រឹត្តិការណ៍ និង VIT សូមបន្ថែមបន្ទាត់ខាងក្រោមក្នុង custom_init() នៅខាងក្នុង file នៅក្នុង custom/custom.c. ដើម្បីផ្លាស់ប្តូររវាងអេក្រង់ សូមបន្ថែមព្រឹត្តិការណ៍ពីរទៀតដោយភ្ជាប់ btn_1 ដើម្បីប្តូរទៅអេក្រង់ 2។
កន្លែងណា៖- Wakeword HEY_LED និងពាក្យបញ្ជា TURN_OFF រួមបញ្ចូលគ្នាត្រូវបានចាត់តាំងឱ្យបិទ LED ។ នៅក្នុងពាក្យផ្សេងទៀត ផ្លាស់ប្តូរផ្ទៃខាងក្រោយទៅជាពណ៌ខ្មៅ។
- Wakeword HEY_LED និងពាក្យបញ្ជា TURN_ON រួមបញ្ចូលគ្នាត្រូវបានចាត់តាំងដើម្បីបង្វែរ LED ពណ៌ក្រហម។
- Wakeword HEY_NXP និងបន្សំពាក្យបញ្ជា NEXT ត្រូវបានកំណត់ឱ្យផ្លាស់ប្តូររវាងអេក្រង់ដោយប្រើព្រឹត្តិការណ៍ដែលបានកំណត់ទាំងអស់ទៅ btn_1 និងប្រើ btn_before នៅក្នុងអេក្រង់ 2 ។
- ការរួមបញ្ចូលគ្នារវាង Wakeword HEY_NXP និងពាក្យបញ្ជា RETURN ត្រូវបានកំណត់ឱ្យត្រឡប់ទៅអេក្រង់ 1 វិញ។
- ជ្រើសរើស គម្រោង > សាងសង់ > Yocto ហើយសាងសង់គម្រោង។
- បានផ្ញើប្រព័ន្ធគោលពីរថ្មីទៅ EVK ។
ចំណាំ៖ កំណត់ហេតុព័ត៌មានផ្តល់ទីតាំងគោលពីរ។
scp root@ :/home/root
ការធ្វើតេស្តនិងការកំណត់រចនាសម្ព័ន្ធ
នៅពេលការទាញយកបានបញ្ចប់ សូមអនុវត្តជំហានខាងក្រោមនៅលើ EVK៖
- ផ្ទៀងផ្ទាត់ថាម៉ូឌុល snd-aloop ត្រូវបានផ្ទុករួចហើយដោយដំណើរការ lsmod ។ ប្រសិនបើរកមិនឃើញម៉ូឌុល ផ្ទុកវាដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
root@imx93evk៖~# sudo modprobe snd-aloop - ដំណើរការ voice_ui_app ដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
root@imx93evk:~# ./voice_ui_app -notify &
កន្លែងណា៖- -notify ត្រូវបានប្រើដើម្បីផ្ញើការជូនដំណឹងទៅ WakeWordNtfy និង WWCommandNtfy ។
ចំណាំ៖ កុំភ្លេចចម្លង WakeWordNtfy និង WWCommandNtfy ទៅ usr/bin ។ - & ត្រូវបានប្រើដើម្បីដំណើរការក្នុងផ្ទៃខាងក្រោយ។
- -notify ត្រូវបានប្រើដើម្បីផ្ញើការជូនដំណឹងទៅ WakeWordNtfy និង WWCommandNtfy ។
- ផ្ទៀងផ្ទាត់ថាម៉ាស៊ីន VIT ត្រូវបានកំណត់នៅលើ Config.ini ។
- ដំណើរការ AFE ជាមួយ libvoiceseekerlight នៅផ្ទៃខាងក្រោយ៖
root@imx93evk:~# cd /unit_tests/nxp-afe/
root@imx93evk:~# ./afe libvoiceseekerlight & - បើកកម្មវិធី GUI Guider ដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
root@imx93evk:~# ./gui_guider
រហូតដល់ជំហាននេះ អេក្រង់ LVDS ឬ HDMI បង្ហាញ GUI ដែលបានបង្កើតឡើង។ - សាកល្បងប្រើ Wakeword និងពាក្យបញ្ជាសំឡេងដែលបានកំណត់ពីមុន សម្រាប់ឧampលេ និយាយថា "Hey NXP" និង "បិទ" ។ បន្ទាប់ពីនិយាយពាក្យបញ្ជាសម្រាប់ការបិទថាមពល អាស្រ័យលើការហៅត្រឡប់មកវិញដែលបានកំណត់ GUI Guider ធ្វើសកម្មភាពមួយ។ សម្រាប់អតីតនេះ។ample, GUI Guider ផ្លាស់ប្តូរពណ៌ផ្ទៃខាងក្រោយសម្រាប់ធាតុក្រាហ្វិក LED ។
តារាងទី 2 រាយបញ្ជីធនធានបន្ថែមមួយចំនួនដែលប្រើដើម្បីបំពេញបន្ថែមឯកសារនេះ។
តារាងទី 2. ធនធានពាក់ព័ន្ធ
ធនធាន | តំណភ្ជាប់ / របៀបដើម្បីទទួលបាន |
គ្រួសារដំណើរការកម្មវិធី i.MX 93 – Arm Cortex-A55, ML Acceleration, Power Efficient MPUNXP i.MX 93 A1 (i. MX93) | https://www.nxp.com/products/processors-and- microcontrollers/arm-processors/i-mx-applications- processors/i-mx-9-processors/i-mx-93-applications- processor-family-arm-cortex-a55-ml-acceleration-power- ប្រសិទ្ធភាព-mpu: i.MX93 |
លីនុចដែលបានបង្កប់សម្រាប់ i.MX កម្មវិធីដំណើរការ (IMXLINUX) | http://www.nxp.com/IMXLINUX |
GUI Guider v1.6.1 មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់ (GUIGUIDERUG) | https://www.nxp.com/docs/en/user-guide/ GUIGUIDERUG-1.6.1.pdf |
ឃ្លាំង VIT i.MX voiceUI | https://github.com/nxp-imx/imx-voiceui |
ចំណាំអំពីកូដប្រភពនៅក្នុងឯកសារ
Example កូដដែលបង្ហាញក្នុងឯកសារនេះមានសិទ្ធិរក្សាសិទ្ធិ និង BSD-3-Clause ដូចខាងក្រោម៖
រក្សាសិទ្ធិ 2023-2024 NXP ការចែកចាយឡើងវិញ និងការប្រើប្រាស់ក្នុងទម្រង់ប្រភព និងប្រព័ន្ធគោលពីរ ដោយមានឬគ្មានការកែប្រែ ត្រូវបានអនុញ្ញាត ផ្តល់ថាលក្ខខណ្ឌខាងក្រោមត្រូវបានបំពេញ៖
- ការចែកចាយឡើងវិញនៃកូដប្រភពត្រូវតែរក្សាការជូនដំណឹងអំពីការរក្សាសិទ្ធិខាងលើ បញ្ជីលក្ខខណ្ឌ និងការបដិសេធខាងក្រោម។
- ការចែកចាយឡើងវិញក្នុងទម្រង់គោលពីរត្រូវតែបង្កើតឡើងវិញនូវការជូនដំណឹងអំពីការរក្សាសិទ្ធិខាងលើ បញ្ជីនៃលក្ខខណ្ឌ និងការមិនទទួលខុសត្រូវខាងក្រោមនៅក្នុងឯកសារ និង/ឬសម្ភារៈផ្សេងទៀតត្រូវតែផ្តល់ជូនជាមួយនឹងការចែកចាយ។
- ទាំងឈ្មោះអ្នករក្សាសិទ្ធិនិងឈ្មោះអ្នកចូលរួមរបស់វាមិនអាចត្រូវបានប្រើដើម្បីគាំទ្រឬផ្សព្វផ្សាយផលិតផលដែលបានមកពីកម្មវិធីនេះដោយគ្មានការអនុញ្ញាតជាលាយលក្ខណ៍អក្សរជាមុន។
កម្មវិធីនេះត្រូវបានផ្តល់ដោយអ្នកកាន់កាប់សិទ្ធិអ្នកនិពន្ធ និងអ្នករួមវិភាគទាន "ដូចដែលមាន" និងការធានាណាមួយដែលបញ្ជាក់ ឬដោយប្រយោល រួមទាំង ប៉ុន្តែមិនកំណត់ចំពោះ ការធានាដោយអត្ថន័យនៃទំនិញគ្រប់គ្រាន់ ត្រូវបានបដិសេធ។ ក្នុងករណីណាក៏ដោយ អ្នកកាន់កាប់សិទ្ធិថតចម្លង ឬអ្នករួមចំណែកត្រូវទទួលខុសត្រូវចំពោះការខូចខាតដោយផ្ទាល់ ប្រយោល ចៃដន្យ ពិសេស គំរូ ឬការខូចខាតជាលទ្ធផល (រួមទាំង ប៉ុន្តែមិនកំណត់ចំពោះផ្នែករដ្ឋបាល សេវាកម្ម ការបាត់បង់ការប្រើប្រាស់ ទិន្នន័យ ឬប្រាក់ចំណេញ ឬការរំខានអាជីវកម្ម) ទោះបីជាបង្កឡើង និងលើទ្រឹស្តីនៃទំនួលខុសត្រូវណាមួយក៏ដោយ ថាតើនៅក្នុងកិច្ចសន្យា ទំនួលខុសត្រូវយ៉ាងតឹងរ៉ឹង ឬការបង្ខិតបង្ខំ (រួមទាំងការបិទសិទ្ធិប្រើប្រាស់) ការប្រើប្រាស់កម្មវិធីនេះ ទោះបីជាមានការណែនាំអំពីលទ្ធភាពនៃការខូចខាតបែបនេះក៏ដោយ។
ប្រវត្តិនៃការពិនិត្យឡើងវិញ
តារាងទី 3 សង្ខេបការកែប្រែចំពោះឯកសារនេះ។
លេខសម្គាល់ឯកសារ | កាលបរិច្ឆេទចេញផ្សាយ | ការពិពណ៌នា |
AN14270 v.1.0 | ថ្ងៃទី 16 ខែឧសភា ឆ្នាំ 2024 | ការចេញផ្សាយជាសាធារណៈដំបូង |
ព័ត៌មានផ្លូវច្បាប់
និយមន័យ
សេចក្តីព្រាង - ស្ថានភាពព្រាងនៅលើឯកសារបង្ហាញថាខ្លឹមសារនៅតែស្ថិតក្រោមការកែប្រែផ្ទៃក្នុង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 ត្រូវបានលក់តាមលក្ខខណ្ឌទូទៅនៃការលក់ពាណិជ្ជកម្ម ដូចដែលបានចុះផ្សាយនៅ https://www.nxp.com/profile/termsលុះត្រាតែមានការព្រមព្រៀងផ្សេងពីនេះក្នុងកិច្ចព្រមព្រៀងបុគ្គលដែលមានសុពលភាពជាលាយលក្ខណ៍អក្សរ។ ក្នុងករណីកិច្ចព្រមព្រៀងបុគ្គលត្រូវបានបញ្ចប់ មានតែលក្ខខណ្ឌនៃកិច្ចព្រមព្រៀងរៀងៗខ្លួនប៉ុណ្ណោះដែលត្រូវអនុវត្ត។ NXP Semiconductors សម្តែងការជំទាស់ចំពោះការអនុវត្តលក្ខខណ្ឌទូទៅរបស់អតិថិជនទាក់ទងនឹងការទិញផលិតផល NXP Semiconductors ដោយអតិថិជន។
ការត្រួតពិនិត្យការនាំចេញ — ឯកសារនេះក៏ដូចជាធាតុដែលបានពិពណ៌នានៅទីនេះអាចជាកម្មវត្ថុនៃបទប្បញ្ញត្តិត្រួតពិនិត្យការនាំចេញ។ ការនាំចេញអាចទាមទារការអនុញ្ញាតជាមុនពីអាជ្ញាធរមានសមត្ថកិច្ច។
ភាពស័ក្តិសមសម្រាប់ការប្រើប្រាស់នៅក្នុងផលិតផលដែលមិនមានគុណភាពសម្រាប់រថយន្ត — លុះត្រាតែឯកសារនេះបញ្ជាក់យ៉ាងច្បាស់ថាផលិតផល NXP Semiconductors ជាក់លាក់នេះមានលក្ខណៈសម្បត្តិគ្រប់គ្រាន់សម្រាប់យានយន្តនោះ ផលិតផលនេះមិនស័ក្តិសមសម្រាប់ការប្រើប្រាស់រថយន្តទេ។ វាមិនមានលក្ខណៈសម្បត្តិគ្រប់គ្រាន់ ឬត្រូវបានសាកល្បងដោយអនុលោមតាមការធ្វើតេស្តរថយន្ត ឬតម្រូវការកម្មវិធី NXP Semiconductors មិនទទួលខុសត្រូវចំពោះការរួមបញ្ចូល និង/ឬការប្រើប្រាស់ផលិតផលដែលមិនមានគុណភាពសម្រាប់រថយន្តនៅក្នុងឧបករណ៍ ឬកម្មវិធីរថយន្ត។
ក្នុងករណីដែលអតិថិជនប្រើប្រាស់ផលិតផលសម្រាប់ការរចនា និងប្រើប្រាស់ក្នុងកម្មវិធីរថយន្តទៅនឹងលក្ខណៈបច្ចេកទេស និងស្តង់ដាររថយន្ត អតិថិជន (ក) នឹងប្រើប្រាស់ផលិតផលដោយគ្មានការធានារបស់ NXP Semiconductors នៃផលិតផលសម្រាប់កម្មវិធីរថយន្ត ការប្រើប្រាស់ និងលក្ខណៈបច្ចេកទេស និង ( ខ) នៅពេលណាដែលអតិថិជនប្រើប្រាស់ផលិតផលសម្រាប់កម្មវិធីរថយន្តលើសពីលក្ខណៈបច្ចេកទេសរបស់ NXP Semiconductors ការប្រើប្រាស់បែបនេះនឹងត្រូវប្រឈមមុខនឹងហានិភ័យផ្ទាល់របស់អតិថិជន និង (គ) អតិថិជនពេញលេញ។ ផ្តល់សំណងដល់ NXP Semiconductors សម្រាប់ការទទួលខុសត្រូវ ការខូចខាត ឬការទាមទារផលិតផលដែលបរាជ័យដែលបណ្តាលមកពីការរចនាអតិថិជន និងការប្រើប្រាស់ផលិតផលសម្រាប់កម្មវិធីរថយន្តលើសពីការធានាស្តង់ដាររបស់ NXP Semiconductors និងផលិតផលជាក់លាក់របស់ NXP Semiconductors ។
ការបកប្រែ — កំណែដែលមិនមែនជាភាសាអង់គ្លេស (បកប្រែ) នៃឯកសារ រួមទាំងព័ត៌មានផ្លូវច្បាប់នៅក្នុងឯកសារនោះ គឺសម្រាប់ជាឯកសារយោងតែប៉ុណ្ណោះ។ កំណែជាភាសាអង់គ្លេសនឹងមានសុពលភាពក្នុងករណីមានភាពខុសគ្នារវាងកំណែដែលបានបកប្រែ និងភាសាអង់គ្លេស។
សុវត្ថិភាព - អតិថិជនយល់ថាផលិតផល NXP ទាំងអស់អាចទទួលរងនូវភាពងាយរងគ្រោះដែលមិនស្គាល់អត្តសញ្ញាណ ឬអាចគាំទ្រស្តង់ដារសុវត្ថិភាពដែលបានបង្កើតឡើង ឬជាក់លាក់ជាមួយនឹងដែនកំណត់ដែលគេស្គាល់។ អតិថិជនទទួលខុសត្រូវចំពោះការរចនា និងប្រតិបត្តិការនៃកម្មវិធី និងផលិតផលរបស់ខ្លួនពេញមួយវដ្តជីវិតរបស់ពួកគេ ដើម្បីកាត់បន្ថយឥទ្ធិពលនៃភាពងាយរងគ្រោះទាំងនេះលើកម្មវិធី និងផលិតផលរបស់អតិថិជន។ ទំនួលខុសត្រូវរបស់អតិថិជនក៏ពង្រីកដល់បច្ចេកវិទ្យាបើកចំហ និង/ឬកម្មសិទ្ធិផ្សេងទៀតដែលគាំទ្រដោយផលិតផល NXP សម្រាប់ប្រើប្រាស់ក្នុងកម្មវិធីរបស់អតិថិជន។ NXP មិនទទួលខុសត្រូវចំពោះភាពងាយរងគ្រោះណាមួយឡើយ។ អតិថិជនគួរតែពិនិត្យមើលការអាប់ដេតសុវត្ថិភាពពី NXP ឱ្យបានទៀងទាត់ ហើយតាមដានឱ្យបានត្រឹមត្រូវ។
អតិថិជនត្រូវជ្រើសរើសផលិតផលដែលមានលក្ខណៈពិសេសសុវត្ថិភាពដែលសមស្របបំផុតនឹងច្បាប់ បទប្បញ្ញត្តិ និងស្តង់ដារនៃកម្មវិធីដែលបានគ្រោងទុក ហើយធ្វើការសម្រេចចិត្តរចនាចុងក្រោយទាក់ទងនឹងផលិតផលរបស់ខ្លួន ហើយទទួលខុសត្រូវទាំងស្រុងចំពោះការអនុលោមតាមតម្រូវការច្បាប់ និយតកម្ម និងសុវត្ថិភាពទាំងអស់ទាក់ទងនឹងផលិតផលរបស់ខ្លួន ដោយមិនគិតពី នៃព័ត៌មាន ឬជំនួយដែលអាចត្រូវបានផ្តល់ដោយ NXP ។
NXP មានក្រុមឆ្លើយតបឧប្បត្តិហេតុសុវត្ថិភាពផលិតផល (PSIRT) (អាចទាក់ទងបាននៅ PSIRT@nxp.com) ដែលគ្រប់គ្រងការស៊ើបអង្កេត ការរាយការណ៍ និងការចេញផ្សាយដំណោះស្រាយចំពោះភាពងាយរងគ្រោះផ្នែកសុវត្ថិភាពនៃផលិតផល NXP ។
NXP B.V. — NXP B.V. មិនមែនជាក្រុមហ៊ុនប្រតិបត្តិការទេ ហើយវាមិនចែកចាយ ឬលក់ផលិតផលទេ។
ពាណិជ្ជសញ្ញា
សេចក្តីជូនដំណឹង៖ ម៉ាកដែលបានយោងទាំងអស់ ឈ្មោះផលិតផល ឈ្មោះសេវាកម្ម និងពាណិជ្ជសញ្ញា គឺជាកម្មសិទ្ធិរបស់ម្ចាស់រៀងៗខ្លួន។
NXP - ពាក្យ និងនិមិត្តសញ្ញាគឺជាពាណិជ្ជសញ្ញារបស់ NXP BV
i.MX - គឺជាពាណិជ្ជសញ្ញារបស់ NXP BV
សូមជ្រាបថា ការជូនដំណឹងសំខាន់ៗទាក់ទងនឹងឯកសារនេះ និងផលិតផលដែលបានពិពណ៌នានៅទីនេះ ត្រូវបានដាក់បញ្ចូលក្នុងផ្នែក 'ព័ត៌មានផ្លូវច្បាប់'។
© 2024 NXP BV រក្សាសិទ្ធិគ្រប់យ៉ាង។
សម្រាប់ព័ត៌មានបន្ថែម សូមចូលទៅកាន់៖ https://www.nxp.com
កាលបរិច្ឆេទចេញផ្សាយ៖ ២៥ ឧសភា ២០២១
អត្តសញ្ញាណឯកសារ៖ AN14270
ឯកសារ/ធនធាន
![]() |
NXP AN14270 បន្ថែមការគាំទ្រសំឡេងទៅអ្នកណែនាំ GUI [pdf] ការណែនាំអ្នកប្រើប្រាស់ AN14270 ការបន្ថែមសំឡេងគាំទ្រដល់ GUI Guider, AN14270, បន្ថែមសំឡេងគាំទ្រដល់ GUI Guider, ទៅ GUI Guider, GUI Guider, Guider |