NXP AN14263 Framewor இல் LVGL GUI முக அங்கீகாரத்தை செயல்படுத்தவும்
தயாரிப்பு தகவல்
விவரக்குறிப்புகள்
- தயாரிப்பு பெயர்: கட்டமைப்பில் LVGL GUI முக அங்கீகாரம்
- ஆவண திருத்தம்: 1 – 19 ஏப்ரல் 2024
- முக்கிய வார்த்தைகள்: முகம் அறிதல், LVGL GUI, கட்டமைப்பு
தயாரிப்பு பயன்பாட்டிற்கான வழிமுறைகள்
- முடிந்துவிட்டதுview
இந்த தயாரிப்பு AI&ML விஷன் அல்காரிதம் மாதிரியை ஒரு கட்டமைப்பில் முகத்தை அடையாளம் காணும் வகையில் செயல்படுத்துகிறதுampSLN-TLHMI-IOT போர்டில் le. - கட்டமைப்பு முடிந்ததுview
சாதனங்களை நிர்வகிப்பதற்கான பொறுப்பான சாதன நிர்வாகிகள், அடிப்படை விவரங்களை சுருக்கமான HAL சாதனங்கள் மற்றும் வெவ்வேறு சாதனங்களுக்கிடையேயான தகவல்தொடர்புக்கான நிகழ்வுகளை உள்ளடக்கிய கட்டமைப்பு கட்டமைப்பைச் சுற்றி தீர்வு மென்பொருள் வடிவமைக்கப்பட்டுள்ளது. - அம்சங்கள்
தயாரிப்பு கேமரா ப்ரீ வழியாக முகத்தை அடையாளம் காணும் செயல்பாட்டை செயல்படுத்த அனுமதிக்கிறதுview GUI திரையில் முகப் பதிவு, அங்கீகாரம் மற்றும் அகற்றலைத் தூண்டுவதற்கான பொத்தான்கள். பதிவுசெய்யப்பட்ட முகத் தரவு ஒரு வழியாக ஃப்ளாஷில் சேமிக்கப்படுகிறது file அமைப்பு. - விண்ணப்பக் குறிப்பு உள்ளடக்கம்
பயன்பாட்டுக் குறிப்பு ஒரு LVGL GUI திரையை கேமரா முன் வழங்குகிறதுview மற்றும் முகம் தொடர்பான செயல்களுக்கான பொத்தான்கள். இது டெவலப்பர்கள் கட்டமைப்பைப் புரிந்துகொள்ள உதவுகிறது மற்றும் வழங்கப்பட்ட முன்னாள் பயன்படுத்தி முக அங்கீகாரத்தை எவ்வாறு செயல்படுத்துவதுampலெ.
முடிந்துவிட்டதுview
ஸ்மார்ட் எச்எம்ஐ பயன்பாடுகளில் கவனம் செலுத்தும் SLN-TLHMI-IOT என்ற தீர்வு மேம்பாட்டு கருவியை NXP அறிமுகப்படுத்தியுள்ளது. இது ஒரு NXP i.MX RT117H MCU இல் செயல்படுத்தப்பட்ட ML பார்வை, குரல் மற்றும் கிராபிக்ஸ் UI உடன் ஸ்மார்ட் HMI ஐ செயல்படுத்துகிறது. SDK அடிப்படையில், தீர்வு மென்பொருளானது, நெகிழ்வான வடிவமைப்புகள் மற்றும் பார்வை மற்றும் குரல் செயல்பாடுகளின் தனிப்பயனாக்கத்தை ஆதரிக்கும் கட்டமைப்பின் வடிவமைப்பில் கட்டமைக்கப்பட்டுள்ளது. மென்பொருள் தளத்தை சிறப்பாகப் பயன்படுத்த பயனர்களுக்கு உதவ, சில அடிப்படை ஆவணங்கள் வழங்கப்பட்டுள்ளனample, மென்பொருள் மேம்பாட்டு பயனர் வழிகாட்டி. SLN-TLHMI-IOT ஐப் பயன்படுத்தி டெவலப்பர்கள் தங்கள் பயன்பாடுகளை மிகவும் எளிதாகவும் திறமையாகவும் செயல்படுத்த உதவும் கட்டமைப்பை உள்ளடக்கிய தீர்வின் அனைத்து கூறுகளையும் உள்ளடக்கிய பயன்பாடுகளின் அடிப்படை மென்பொருள் வடிவமைப்பு மற்றும் கட்டமைப்பை வழிகாட்டி அறிமுகப்படுத்துகிறது.
தீர்வு மற்றும் தொடர்புடைய ஆவணங்கள் பற்றிய கூடுதல் விவரங்களுக்கு, பார்க்கவும் web ML விஷன், குரல் மற்றும் வரைகலை UI உடன் i.MX RT117H அடிப்படையிலான NXP EdgeReady ஸ்மார்ட் HMI தீர்வின் பக்கம். இருப்பினும், டெவலப்பர்கள் இந்த அடிப்படை வழிகாட்டிகளைக் குறிப்பிடும் வகையில் அவர்களின் ஸ்மார்ட் எச்எம்ஐ பயன்பாடுகளை செயல்படுத்துவது இன்னும் அவ்வளவு எளிதானது அல்ல. கட்டமைப்பின் வளர்ச்சியை படிப்படியாக படிக்க உதவும் வகையில் தொடர்ச்சியான பயன்பாட்டுக் குறிப்புகள் திட்டமிடப்பட்டுள்ளன. இந்த பயன்பாட்டுக் குறிப்பு, எல்விஜிஎல் ஜியுஐ கேமரா ப்ரீயை செயல்படுத்துவதை அடிப்படையாகக் கொண்டதுview கட்டமைப்பில் (ஆவணம் AN14147). கேமரா ப்ரீ வழியாக முகத்தை அடையாளம் காணும் செயல்பாட்டைச் செயல்படுத்த, கட்டமைப்பில் முகத்தை அடையாளம் காண AI&ML பார்வை அல்காரிதம் மாதிரியை எவ்வாறு இயக்குவது என்பதை இந்தப் பயன்பாட்டுக் குறிப்பு விவரிக்கிறது.view GUI திரையில் ஒரு எளிய LVGL GUI exampSLN-TLHMI-IOT போர்டில் le. விண்ணப்பக் குறிப்பில், முன்னாள்ample ஒரு கேமரா முன் ஒரு LVGL GUI திரையை வழங்குகிறதுview முகப் பதிவு, அங்கீகாரம் மற்றும் அகற்றுதலைத் தூண்டும் சில பொத்தான்கள். பதிவுசெய்யப்பட்ட முகத் தரவு சிறிது வழியாக Flash இல் சேமிக்கப்படுகிறது file அமைப்பு.
உயர் மட்டத்தில், பயன்பாட்டுக் குறிப்பில் பின்வரும் உள்ளடக்கங்கள் உள்ளன:
- கட்டமைப்பில் முகம் அடையாளம் காணும் அம்சத்தை இயக்கவும்.
- இதன் மூலம் கட்டமைப்பில் முகத் தரவுத்தள ஆதரவைச் சேர்க்கவும் file ஃப்ளாஷ் மீது அமைப்பு.
- LVGL GUI பயன்பாட்டைச் செயல்படுத்தவும். மேலே உள்ள அறிமுகங்கள் மூலம், இந்த ஆவணம் டெவலப்பர்களுக்கு உதவுகிறது:
- கட்டமைப்பையும் ஸ்மார்ட் எச்எம்ஐ தீர்வு மென்பொருளையும் இன்னும் ஆழமாகப் புரிந்து கொள்ளுங்கள்.
- LVGL GUI பயன்பாட்டின் மூலம் கட்டமைப்பில் அவர்களின் AI&ML முக அங்கீகாரத்தை உருவாக்கவும்.
கட்டமைப்பு முடிந்ததுview
தீர்வு மென்பொருள் முதன்மையாக பல்வேறு பகுதிகளைக் கொண்ட கட்டமைப்பின் கட்டமைப்பைப் பயன்படுத்தி வடிவமைக்கப்பட்டுள்ளது:
- சாதன மேலாளர்கள் - முக்கிய பகுதி
- வன்பொருள் சுருக்க அடுக்கு (HAL) சாதனங்கள்
- செய்திகள்/நிகழ்வுகள்
படம் 1 இல் காட்டப்பட்டுள்ளபடி, ஓவர்view கட்டமைப்பின் பொறிமுறையானது:
கணினியால் பயன்படுத்தப்படும் சாதனங்களை நிர்வகிப்பதற்கு சாதன மேலாளர்கள் பொறுப்பு. ஒவ்வொரு சாதன வகையும் (உள்ளீடு, வெளியீடு மற்றும் பல) அதன் சொந்த வகை-குறிப்பிட்ட சாதன நிர்வாகியைக் கொண்டுள்ளது. சாதனங்கள் பதிவுசெய்யப்பட்ட பிறகு தொடங்கும் சாதன நிர்வாகியுடன், பதிவுசெய்யப்பட்ட சாதனங்களைத் துவக்கித் தொடங்கிய பிறகு, சாதனங்களுக்கும் பிற மேலாளர்களுக்கும் தரவை மாற்றுவதற்கு ஒரு செய்தியை அது காத்திருந்து சரிபார்க்கிறது. HAL சாதனங்கள் கீழ்-நிலை இயக்கி குறியீட்டின் மேல் எழுதப்பட்டுள்ளன, இது பல அடிப்படை விவரங்களை சுருக்கி குறியீடு புரிந்துகொள்ளுதலை அதிகரிக்க உதவுகிறது.
நிகழ்வுகள் என்பது பல்வேறு சாதனங்களுக்கு இடையே அவற்றின் மேலாளர்கள் மூலம் தகவல் தெரிவிக்கும் ஒரு வழிமுறையாகும். ஒரு நிகழ்வு தூண்டப்பட்டால், நிகழ்வைப் பெற்ற சாதனம் அந்த நிகழ்வை அதன் மேலாளரிடம் தெரிவிக்கிறது, பின்னர் நிகழ்வைப் பெற நியமிக்கப்பட்ட மற்ற மேலாளர்களுக்கு அது தெரிவிக்கிறது.
கட்டமைப்பின் கட்டடக்கலை வடிவமைப்பு மூன்று முதன்மை இலக்குகளை மையமாகக் கொண்டது:
- பயன்படுத்த எளிதானது
- நெகிழ்வு / பெயர்வுத்திறன்
- செயல்திறன்
பார்வை மற்றும் பிற இயந்திர கற்றல் பயன்பாடுகளுக்கான சந்தைக்கான நேரத்தை விரைவுபடுத்தும் நோக்கத்துடன் இந்த கட்டமைப்பு வடிவமைக்கப்பட்டுள்ளது. சந்தைப்படுத்துவதற்கான விரைவான நேரத்தை உறுதிசெய்ய, மென்பொருளை புரிந்துகொள்வதற்கும் மாற்றுவதற்கும் எளிதானது. இந்த இலக்கை மனதில் வைத்து, கட்டமைப்பின் கட்டமைப்பை கட்டுப்படுத்தாமல், செயல்திறன் செலவில் வராமல் மாற்றுவது எளிது.
கட்டமைப்பைப் பற்றிய கூடுதல் விவரங்களுக்கு, ஸ்மார்ட் எச்எம்ஐ மென்பொருள் மேம்பாட்டு பயனர் வழிகாட்டியைப் பார்க்கவும் (ஆவணம் MCU-SMHMI-SDUG).
ஒளி மற்றும் பல்துறை வரைகலை நூலகம் (LVGL)
LVGL (ஒளி மற்றும் பல்துறை வரைகலை நூலகம்) என்பது ஒரு இலவச மற்றும் திறந்த மூல கிராபிக்ஸ் நூலகமாகும், இது எளிதாகப் பயன்படுத்தக்கூடிய வரைகலை கூறுகள், அழகான காட்சி விளைவுகள் மற்றும் குறைந்த நினைவக தடம் ஆகியவற்றைக் கொண்ட உட்பொதிக்கப்பட்ட GUI ஐ உருவாக்க உங்களுக்குத் தேவையான அனைத்தையும் வழங்குகிறது.
GUI வழிகாட்டி
GUI Guider என்பது NXP இலிருந்து ஒரு பயனர் நட்பு வரைகலை பயனர் இடைமுக மேம்பாட்டுக் கருவியாகும், இது திறந்த மூல LVGL கிராபிக்ஸ் நூலகத்துடன் உயர்தர காட்சிகளை விரைவாக உருவாக்க உதவுகிறது. GUI Guider இன் இழுவை-துளி எடிட்டர், விட்ஜெட்டுகள், அனிமேஷன்கள் மற்றும் ஸ்டைல்கள் போன்ற LVGL இன் பல அம்சங்களைப் பயன்படுத்துவதை எளிதாக்குகிறது.
ஒரு பொத்தானைக் கிளிக் செய்வதன் மூலம், உங்கள் பயன்பாட்டை உருவகப்படுத்தப்பட்ட சூழலில் இயக்கலாம் அல்லது இலக்கு திட்டத்திற்கு ஏற்றுமதி செய்யலாம். GUI வழிகாட்டியிலிருந்து உருவாக்கப்பட்ட குறியீட்டை உங்கள் திட்டத்தில் எளிதாகச் சேர்க்கலாம், இது வளர்ச்சி செயல்முறையை துரிதப்படுத்துகிறது மற்றும் உங்கள் பயன்பாட்டில் உட்பொதிக்கப்பட்ட பயனர் இடைமுகத்தை தடையின்றிச் சேர்க்க உங்களை அனுமதிக்கிறது. GUI Guider ஆனது NXP இன் பொது நோக்கம் மற்றும் குறுக்குவழி MCUகளுடன் பயன்படுத்த இலவசம் மற்றும் பல ஆதரிக்கப்படும் தளங்களுக்கான உள்ளமைக்கப்பட்ட திட்ட டெம்ப்ளேட்களை உள்ளடக்கியது. GUI வழிகாட்டியில் LVGL மற்றும் GUI மேம்பாடு பற்றி மேலும் அறிய, ஒளி மற்றும் பல்துறை கிராபிக்ஸ் நூலகம் மற்றும் GUI வழிகாட்டியைப் பார்க்கவும்.
வளர்ச்சி சூழல்
முதலில், முன்னாள் செயல்படுத்துவதற்கான வன்பொருள் மற்றும் மென்பொருள் சூழலைத் தயாரித்து அமைக்கவும்ampகட்டமைப்பின் மீது le.
வன்பொருள் சூழல்
வன்பொருள் சூழல் முன்னாள் சரிபார்க்க அமைக்கப்பட்டுள்ளதுampலெ:
- NXP i.MX RT117H அடிப்படையிலான ஸ்மார்ட் HMI டெவலப்மெண்ட் கிட் (SLN_TLHMI_IOT கிட்)
- 9-pin Cortex-M அடாப்டர் மற்றும் V7.84a அல்லது இயக்கியின் புதிய பதிப்புடன் கூடிய SEGGER J-Link
மென்பொருள் சூழல்
மென்பொருள் சூழல் முன்னாள் அபிவிருத்திக்காக அமைக்கப்பட்டுள்ளதுampலெ:
- MCUXpresso IDE V11.7.0
- GUI வழிகாட்டி V1.6.1-GA
- lvgl_gui_camera_preview_cm7 – exampவளர்ச்சியின் அடிப்படை மென்பொருளாக இரண்டாவது பயன்பாட்டுக் குறிப்பின் le குறியீடு. விவரங்களுக்கு, பார்க்கவும் https://mcuxpresso.nxp.com/appcodehub.
- RT1170 SDK V2.13.0 - வளர்ச்சிக்கான குறியீடு ஆதாரமாக.
- SLN-TLHMI-IOT மென்பொருள் V1.1.2 – ஸ்மார்ட் HMI மூலக் குறியீடு NXP கிட்ஹப் களஞ்சியத்தில் மேம்பாட்டிற்கான குறியீடு ஆதாரமாக வெளியிடப்பட்டது. விவரங்களுக்கு, பார்க்கவும்: GitHub – NXP/mcu-smhmi at v1.1.2
மென்பொருள் சூழலின் கையகப்படுத்தல் மற்றும் அமைவு பற்றிய விவரங்களுக்கு, பார்க்கவும்: SLN-TLHMI-IOT உடன் தொடங்குதல்.
கட்டமைப்பின் மீதான பார்வை கட்டமைப்பு
கட்டமைப்பில் உள்ள பார்வை கட்டமைப்பு படம் 2 இல் காட்டப்பட்டுள்ளது. பார்வை அல்கோ HAL (OASIS_HAL) பின்வரும் செயல்முறைகளைக் கொண்டுள்ளது:
- வெளியீட்டு UI HAL இலிருந்து தொடர்புடைய நிகழ்வுகளைப் பெற்ற பிறகு, AI&ML விஷன் அல்காரிதம் மாதிரி மூலம் முகப் பதிவு மற்றும் அங்கீகாரம் செய்யுங்கள். அல்காரிதம் மாதிரியிலிருந்து வெளியீடு UI HAL க்கு அனுமான முடிவுகளை அறிவிக்கவும்.
- சிறிய அடிப்படையிலான முக அம்ச தரவுத்தளத்தை அணுகுகிறது (சேர்க்கவும், நீக்கவும்...). file UI HAL வெளியீட்டிலிருந்து தொடர்புடைய நிகழ்வுகளைப் பெற்ற பிறகு, FaceDB HAL இன் APIகளை அழைப்பதன் மூலம் அமைப்பு.
- முகப் பதிவு மற்றும் அங்கீகாரம் செய்யும் போது கேமரா HAL இலிருந்து கேமரா வீடியோ சட்டத்தைக் கோரவும்.
கட்டமைப்பில் முக அங்கீகாரத்தை செயல்படுத்தவும்
LVGL GUI முக அங்கீகாரம் முன்னாள்ample (முன்னாள்ample பின்னர் வழங்கப்படும்) கட்டமைப்பில் முன்னாள் அடிப்படையில் செயல்படுத்தப்படுகிறதுampLVGL GUI கேமரா முன் செயல்படுத்துவதற்கான குறியீடுகள்view கட்டமைப்பில் (ஆவணம் AN14147).
முன்னாள் முக அங்கீகாரத்தை நிரூபிப்பதற்காகample, GUI பயன்பாட்டின் அடிப்படை செயல்பாடு (படம் 3 இல் உள்ள பிரதான திரையைப் பார்க்கவும்) கீழே விவரிக்கப்பட்டுள்ளபடி வடிவமைக்கப்பட்டுள்ளது:
- GUI ஆப்ஸ், பதிவு அல்லது அங்கீகாரம் என்ற பட்டனைக் கிளிக் செய்யும் போது, UI HAL வெளியீட்டிற்கு முகப் பதிவு அல்லது அங்கீகார நிகழ்வைத் தூண்டுகிறது. முகப் பதிவு வெற்றிகரமாக முடிந்த பிறகு, HAL என்ற விஷன் அல்கோவில் ஒரு பயனரைச் சேர்க்கும் நிகழ்வை UI HAL வெளிப்படுத்துகிறது.
- பயனரின் முகம் அடையாளம் காணப்பட்ட பிறகு, பயனரை நீக்கு என்ற பொத்தானைக் கிளிக் செய்யும் போது, GUI பயன்பாடு, UI HAL வெளியீட்டிற்கு ஒரு பயனரை நீக்கும் நிகழ்வைத் தூண்டுகிறது.
- பொத்தான்கள் மற்றும் படங்களுக்கு வெளியே உள்ள திரையைக் கிளிக் செய்யும் போது, வெளியீடு UI HAL இல் இயங்கும் ஒயாசிஸ் அல்கோவை நிறுத்தும் நிகழ்வை GUI ஆப்ஸ் தூண்டுகிறது.
முன்னாள் செயல்படுத்த மென்பொருள் தொகுப்பு தயார்ampலெ.
- அடிப்படை மென்பொருளான lvgl_gui_camera_pre ஐ குளோன் செய்யவும்view_செமீ7. திட்டத்தின் பெயரையும் பிரதானத்தையும் மாற்றவும் filelvgl_gui_face_rec_cm7 க்கு பெயர்.
- 1.1.2 பதிப்பிலிருந்து கிட்ஹப்பில் ஃப்ரேம்வொர்க் கோர்க்கான மூலக் குறியீடுகள் பொதுவில் இருக்கத் தொடங்கியதால், மென்பொருளில் கட்டமைப்பைப் புதுப்பிக்க வேண்டும்.
- கட்டமைப்பின் கோப்புறையை GitHub இலிருந்து V1.1.2 நகலுடன் மாற்றவும் fileinc\ இன் கீழ் s fwk_log.h மற்றும் fwk_common.h ஆகியவை பயன்பாட்டுக் குறிப்பின் தொடருக்காக மாற்றியமைக்கப்பட்டுள்ளன. செயல்பாடுகள் படம் 4 இல் காட்டப்பட்டுள்ளன:
- லிப்ஸ் குழுவின் கீழ் உள்ள framework_cm7 கோப்புறையை நீக்கி, லைப்ரரி framework_cm7 மற்றும் அதன் தேடல் பாதையை Project > Properties > C/C++ Build > settings > Tool Settings > MCU C++ Linker > Libraries என்பதில் கட்டமைக்கப்பட்ட மையத்தின் மூலக் குறியீடு வழங்கப்பட்டுள்ளதால் அதை அகற்றவும்.
கட்டமைப்பில் முகம் அடையாளம் காணும் அம்சத்தை இயக்கவும்
முகம் அடையாளம் காணும் அம்சம் நிலையான நூலகமாக வழங்கப்பட்ட ML பார்வை அல்காரிதம் மாதிரியில் கட்டமைக்கப்பட்டுள்ளது - NXP ஆல் ஓயாசிஸ் லைட் இயக்க நேர நூலகம். நூலகம் ஒரு சிறிய, மிகவும் திறமையான, தனிப்பயனாக்கப்பட்ட மற்றும் உகந்த AI நூலகமாகும். மாடலில் முகம் கண்டறிதல், முகம் கண்டறிதல், கண்ணாடி கண்டறிதல் மற்றும் உயிரோட்டத்தைக் கண்டறிதல் ஆகியவை அடங்கும். இது முக்கியமாக API OASISLT_run_extended() ஐ வழங்குகிறது, அதே சமயம் முகத்தை அடையாளம் காணும் பைப்லைனை இயக்கவும், நிகழ்வு கால்பேக்குகள் மூலம் அழைப்பாளருக்கு முடிவுகளைப் புதுப்பிக்கவும், மேலும் மூலச் சட்டத் தகவல், கால்பேக்குகள் மற்றும் நினைவகத்தைக் குறிப்பிட்ட பிறகு, முக தரவுத்தள அழைப்புகள் மூலம் தரவுத்தளத்தில் முகங்களைச் சேர்க்கவும்/புதுப்பிக்கவும்/நீக்கவும். துவக்கத்தில் மற்றொரு API OASISLT_init() ஐ அழைப்பதன் மூலம் நூலகத்தால் பயன்படுத்தப்படும் குளம். APIகளின் அழைப்பு மற்றும் திரும்ப திரும்ப செயல்பாடுகள் கட்டமைப்பின் பார்வை அல்கோ HAL இல் செயல்படுத்தப்படுகிறது.
பார்வை அல்கோ மாதிரி நூலகத்தைச் சேர்க்கவும்
- நூலகம் மற்றும் தொடர்புடைய தலைப்பு உள்ள கோப்புறை சோலையை நகலெடுக்கவும் file ஸ்மார்ட் HMI\coffee_machine\cm7\libs\ இலிருந்து முன்னாள் கோப்புறை லிப்களுக்குள்ample SW.
- தலைப்பின் தேடல் பாதையைச் சேர்க்கவும் file திட்டம் > பண்புகள் > C/C++ பில்ட் > அமைப்புகள் > கருவி அமைப்புகள் > MCU C கம்பைலர் > அடங்கும் மற்றும் MCU C++ கம்பைலர் > இதில் அடங்கும்: “${workspace_loc:/${ProjName}/libs/oasis/include}”
- Lib மற்றும் அதன் தேடல் பாதையை Project > Properties > C/C++ Build > settings > MCU C+ + Linker > Libraries இல் சேர்க்கவும்: liboasis_lite2D_DEFAULT_117f_ae.a “${workspace_loc:/${ProjName}/libs/oasis}” மற்றும் மேக்ரோ வரையறை Project > Properties > C/C++ Build > settings > Tool Settings > MCU C Compiler > Preprocessor மற்றும் MCU C++ Compiler > Preprocessor: SMART_TLHMI_2D என்பதில் அம்சத்தை இயக்கவும்
பார்வை அல்கோ HAL ஐ இயக்கு
விஷன் அல்கோ HAL ஆனது விஷன் அல்கோ மாடலை வேலை செய்ய இயக்குகிறது மற்றும் அதிலிருந்து நிகழ்வுகளைப் பெற்ற பிறகு UI வெளியீடு HAL க்கு முடிவுகளைப் பதிலளிக்கிறது.
அதை இயக்க, ஏற்கனவே உள்ள அதே HAL இயக்கியை குளோன் செய்யவும் file கீழே உள்ள செயல்பாடுகள் செயல்படுத்தப்படும் இடத்தில்:
- ஃபேஸ் டேட்டாபேஸ் செயல்பாடுகள் மற்றும் நிகழ்வுகள் கையாளுதலின் கால்பேக்குகளை செயல்படுத்தவும்.
- ஒயாசிஸ் லைப்ரரியின் APIகளை அழைப்பதன் மூலம் பார்வை அல்கோவை வேலை செய்ய இயக்கவும்.
- பயனர் முக தரவுத்தளம் மற்றும் பயன்பாட்டு தரவுத்தளத்தை அணுகவும் (முன்னாள் இல் இது தேவையில்லைample)
- நிகழ்வுகளைப் பெறவும் மற்றும் முடிவுகளை UI HAL க்கு அனுப்பவும்.
முன்னாள் மக்களுக்கு HAL ஐ செயல்படுத்துவதற்கான முக்கிய பணிகள்ampஅவை:
- ஏற்கனவே உள்ள இதே போன்ற HAL இயக்கியை குளோன் செய்யவும் file மற்றும் தொடர்புடைய பெயர்களை மாற்றவும்.
- பயன்பாட்டு தரவு செயல்பாடுகள் தொடர்பான குறியீடுகளை அகற்றவும்.
- நிகழ்வுகளைக் கையாள்வதற்கான வரையறைகள் மற்றும் செயல்பாடுகளை ஒரு முன்னாள் வெளியீட்டு UI HAL இலிருந்து புதுப்பிக்கவும்ample வடிவமைப்பு.
- சோலை துவக்கத்தில் தேவையான உள்ளமைவுகளைச் சேர்க்கவும்.
விரிவான படிகள் பின்வருமாறு:
- குளோன் hal_vision_algo_oasis_coffeemachine.c. மாற்று fileபெயர் hal_vision_algo_oasis_guifacerec.c. மற்றும் அனைத்து சரங்களையும் CoffeeMachine ஐ GUIFaceRec உடன் மாற்றவும் file.
- ஆப்ஸ் டேட்டாபேஸுடன் தொடர்புடைய காஃபிடிபி (கேஸ் சென்சிட்டிவ் அல்ல) சரம் கொண்ட குறியீடுகளை அகற்றவும்.ample, #include hal_sln_coffeedb.h.
- HAL வெளியீட்டு UI இலிருந்து நிகழ்வுகளைக் கையாள HAL_VisionAlgoDev_OasisGUIFaceRec_InputNotify() செயல்பாட்டை மாற்றவும்.
- நிகழ்வு வரையறை kEventFaceRecId_RegisterCoffeeSelection ஐ kEventFaceRecId_RegisterUserFace ஆகவும், புதிய முக அம்சத் தரவை தரவுத்தளத்தில் சேர்க்க, நிகழ்வு கையாளுதலுக்கான கட்டமைப்பு சரம் regCoffeeSelection ஐ regGUIFaceRec ஆகவும் மாற்றவும்.
- முன்னாள் முகத்தை அடையாளம் காணும் செயல்களின் நிலையான செயல்முறையைக் காட்டample, மாநிலங்களின் வரையறைகளுடன் kEventFaceRecID_OasisSetState விஷயத்தில் கையாளுதலை மாற்றவும்:
- kOASISLiteState
- பதிவு kOASISLiteState
- அங்கீகாரம் kOASISLiteState
- நிறுத்தப்பட்டது
- மேலே உள்ள படியில் குறிப்பிடப்பட்டுள்ள நிகழ்வுகளின் வரையறைகளைச் சேர்த்து மாற்றவும்.
- தலைப்பை நகலெடுக்கவும் file smart_tlhmi_event_descriptor.h ஸ்மார்ட் HMI\coffee_machine \cm7\source\event_handlers\ இலிருந்து முன்னாள் கோப்புறை மூலத்தில்ample SW. புதுப்பிக்கவும் file கீழே உள்ளவாறு:
- enum வகை _event_smart_tlhmi_id இல் நிகழ்வு வரையறை kEventFaceRecId_RegisterCoffeeSelection ஐ kEventFaceRecId_RegisterUserFace ஆகவும், struct_event_smart இல் regGUIFaceRec என்ற கட்டமைப்பு சரத்தை regCoffeeSelection ஆகவும் மாற்றவும். எனவே, regCoffeeSelectionக்கான struct register_coffee_selection_event_t ஐ register_gui_facerec_event_t என மாற்றவும்.
- காபி மெஷின் பயன்பாட்டிற்குப் பயன்படுத்தப்படும் மற்ற உள்ளடக்கங்களை நீக்கவும்ample, குரல் பற்றிய குறியீட்டு வரி: # "hal_event_descriptor_voice.h" அடங்கும்.
- ப்ராஜெக்டில் hal_vision_algo.h இல் உள்ள enum வகை oasis_lite_state_t இல் kOAISILiteState_Stopped மற்றும் kOAISISLiteState_Running வகைகளை கீழே ப்ராஜெக்ட்>ஹால்>விஷனில் சேர்க்கவும்:
typedef enum _oasis_lite_state {- kOASISLiteState
- இயங்குகிறது, kOASISLiteState
- நிறுத்தப்பட்டது, kOASISLiteState
- அங்கீகாரம்,
- kOASISLiteState
- பதிவு, kOASISLiteState
- பதிவு நீக்கம், kOASISLiteState
- ரிமோட் ரெஜிஸ்ட்ரேஷன், kOASISLiteState
- எண்ணு
- hal_event_descriptor_face_rec.h இல் உள்ள struct oasis_state_event_t ஐச் செம்மைப்படுத்த மேலே மேம்படுத்தப்பட்ட struct oasis_lite_state_t ஐப் பயன்படுத்தவும், கீழே உள்ள ப்ராஜெக்டில் கட்டமைப்பு>hal>பார்வை: typedef struct _oasis_state_event_t {oasis_lite_state_; } சோலை_நிலை_நிகழ்வு_டி;
- டூயல் கோர் பயன்படுத்தப்படுவதற்குப் பதிலாக ஒரே மையத்தில் இயங்கும் விஷன் அல்கோ HAL இலிருந்து மற்ற HAL களுக்கு நிகழ்வுகளை அனுப்ப அனைத்து kEventInfo_Remote ஐ kEventInfo_Local ஆக மாற்றவும்.ampலெ.
- OAISLT_init():
- Board_define.h இல் வீடியோ சட்டத்திற்கான மேக்ரோ வரையறைகள் மற்றும் நினைவகப் பிரிவுகளைச் சேர்க்கவும்: #define OASIS_RGB_FRAME_WIDTH 800
- #OASIS_RGB_FRAME_HEIGHT 600ஐ வரையறுக்கவும்
- #OASIS_RGB_FRAME_SRC_FORMAT kPixelFormat_YUV1P444_RGB ஐ வரையறுக்கவும்
- #OASIS_RGB_FRAME_BYTE_PER_PIXEL 3ஐ வரையறுக்கவும்
- #வரையறுக்கவும் AT_FB_SHMEM_SECTION_ALIGN(var, alignbytes) \
- __attribute__((".bss.$fb_sh_mem,\"aw\",%nobits @"))) var
- __attribute__((சீரமைக்கப்பட்டது(alignbytes)))
- படம் 5 இல் காட்டப்பட்டுள்ள திட்டம் > பண்புகள் > C/C++ Build > MCU அமைப்புகளில் மேலே உள்ள நினைவகப் பிரிவில் fb_sh_mem க்கு நினைவக ஒதுக்கீட்டை உள்ளமைக்கவும்:
- g_DTCOPBuf என்ற உலகளாவிய மாறியை lvgl_gui_face_rec_cm7.cpp இல் அறிவிக்கவும்: AT_NONCACHEABLE_SECTION_ALIGN_DTC (uint8_t g_DTCOPBuf[DTC_OPTIMIZE_BUFFER_SIZE], 4);
- மேலே உள்ள மாறியில் பயன்படுத்தப்படும் வரையறைகளைச் சேர்ப்பதைத் தொடரவும்:
- மேலே உள்ள பகுதியை board_define.h இல் வரையறுக்கவும்:
- #வரையறுக்கவும் AT_NONCACHEABLE_SECTION_ALIGN_DTC(var, alignbytes) \
- பண்புக்கூறு__((".bss.$SRAM_DTC_cm7,\"aw\",%nobits @"))) var
- பண்புக்கூறு__((சீரமைக்கப்பட்டது(அலைன்பைட்டுகள்)))
- தலைப்பைச் சேர்க்கவும் file lvgl_gui_face_rec_cm7.cpp இல் சேர்க்கப்பட்டுள்ள app_config.h இல் உள்ள hal_vision_algo.h மேக்ரோ வரையறை DTC_OPTIMIZE_BUFFER_SIZE உள்ளது.
- Board_define.h இல் வீடியோ சட்டத்திற்கான மேக்ரோ வரையறைகள் மற்றும் நினைவகப் பிரிவுகளைச் சேர்க்கவும்: #define OASIS_RGB_FRAME_WIDTH 800
- முகம் கண்டறிதலில் முன்னேற்ற நிலையைக் காட்ட s_debugOption என்ற மாறியை true என அமைக்கவும்.
- தலைப்பின் தேடல் பாதையைச் சேர்க்கவும் fileதிட்டம் > பண்புகள் >C/C++ பில்ட் > அமைப்புகள் > கருவி அமைப்புகள் > MCU C கம்பைலர் > உள்ளடக்கியது மற்றும் MCU C++ கம்பைலர் > இதில் உள்ள பார்வை HAL: “${workspace_loc:/${ProjName}/framework/hal/vision}”
- Board_define.h இல் பார்வை அல்கோ HAL ஐ இயக்க கீழே உள்ள வரையறையைச் சேர்க்கவும்: #define ENABLE_VISIONALGO_DEV_Oasis_GUIFaceRec
வெளியீட்டு UI HAL ஐ இயக்கவும்
வெளியீட்டு UI HAL நிகழ்வுகளை விஷன் அல்கோ HAL க்கு தெரிவிக்கிறது மற்றும் HAL பார்வை அல்கோவின் அனுமான முடிவுகளுக்கு பதிலளிக்கிறது. GUI பயன்பாட்டின் மூலம், நிகழ்வுகள் பொதுவாக பயன்பாட்டினால் தூண்டப்பட்டு முடிவுகள் பயன்பாட்டில் காட்டப்படும்.
அதை இயக்க, ஏற்கனவே உள்ள அதே HAL இயக்கியை குளோன் செய்யவும் file பொதுவாக கீழே உள்ள செயல்பாடுகள் செயல்படுத்தப்படுகின்றன:
- முக அங்கீகாரம் மற்றும் தரவுத்தள அணுகலுக்கான நிகழ்வுகளை அறிவிக்கவும்.
- நிகழ்வுகளைத் தூண்டுவதற்கு GUI பயன்பாட்டிற்கான கால்பேக்குகளைச் செயல்படுத்தவும்.
- பார்வை அல்கோ தொகுதியிலிருந்து அனுமான முடிவுகளைக் கையாளவும்.
- டைமர்கள் மற்றும் முக வழிகாட்டி செவ்வகத்துடன் கட்டுப்படுத்தப்படும் முன்னேற்றப் பட்டியின் மூலம் UI இல் கையாளும் நிகழ்வுகளின் செயல்முறை மற்றும் முடிவுகளைக் காட்டு.
முன்னாள் மக்களுக்கு HAL ஐ செயல்படுத்துவதற்கான முக்கிய பணிகள்ampஇந்த ஆவணத்தில் பயன்படுத்தப்பட்டவை:
- ஏற்கனவே உள்ள இதே போன்ற HAL இயக்கியை குளோன் செய்யவும் file மற்றும் தொடர்புடைய பெயர்களை மாற்றவும்.
- பயன்பாடு தொடர்பான குறியீடுகளை அகற்றவும்.
- நிகழ்வுகள் அறிவிப்புக்கான செயல்பாடுகளையும், முன்னாள் முடிவுகளுக்கான பதில்களையும் புதுப்பிக்கவும்ample வடிவமைப்பு.
- நிகழ்வுகளைத் தூண்டுவதற்கு GUI பயன்பாட்டிற்கான கால்பேக்குகளைச் சேர்க்கவும்.
விரிவான படிகள் பின்வருமாறு:
- குளோன் hal_output_ui_coffee_machine.c. மாற்று fileபெயர் hal_ output_ui_guifacerec.c.
- அனைத்து சரங்களையும் CoffeeMachine ஐ GUIFaceRec உடன் மாற்றவும் file.
- பயன்பாடு தொடர்பான குறியீடுகளை அகற்று - காபி இயந்திரம்.
- WakeUp() மற்றும் _StandBy() செயல்பாடுகள் மற்றும் தொடர்புடைய குறியீடுகளை அகற்றவும் (வேக்_அப் மற்றும் காத்திருப்பு சரத்தை தேடலாம்).
- முன் அகற்றுview HAL_OutputDev_UiGUIFaceRec_Input Notify() இல் தொடர்புடைய குறியீடுகளைக் கையாளும் பயன்முறை நிகழ்வுகள்.
- UI_xxx_Callback() செயல்பாடுகள் மற்றும் gui_set_virtual_face() ஐ தவிர்த்து காபி இயந்திரத்தின் GUI தொடர்பான சரம் gui_ மற்றும் திரை கொண்ட குறியீடுகளை அகற்றவும்view முறை அம்சம்.
- காபி மெஷின் ஆப்ஸுடன் தொடர்புடைய s_IsWaitingAnotherSelection மற்றும் s_IsWaitingRegisterSelection ஆகிய மாறிகளுடன் தொடர்புடைய அனைத்து குறியீடுகளையும் அகற்றவும்.
- குரல், ஆடியோ மற்றும் மொழி தொடர்பான குறியீடுகளை அகற்றவும். உதாரணமாகampலெ:
- #"hal_voice_algo_asr_local.h", அடங்கும்
- "hal_event_descriptor_voice.h" # அடங்கும்
- பல்வேறு நிகழ்வுகள் அறிவிப்புகளுக்கு, _StopFaceRec(), _RegisterCoffeeSelection(), மற்றும் DeregisterCoffeeSelection
- _OutputManagerNotify() ஒரு நிகழ்வை விஷன் அல்கோ HAL க்கு அனுப்ப அடிப்படை நிகழ்வு வெளியீட்டு செயல்பாட்டை செயல்படுத்துகிறது. கீழே உள்ள செயல்பாடுகள் அதை தங்கள் சொந்த நிகழ்வுகளை அனுப்ப அழைக்கின்றன.
- _SetFaceRec() ஆனது kEventFaceRecID_OasisSetState நிகழ்வை முகப் பதிவு, அங்கீகாரம் மற்றும் அல்கோவை நிறுத்த பார்வை அல்கோவைத் தூண்டுவதற்கு அனுப்புகிறது.
- _RegisterGUIFaceRec() ஆனது kEventFaceRecId_RegisterGUIFaceRec நிகழ்வை அனுப்புகிறது, இது ஸ்மார்ட்_tlhmi_event_descriptor.h இல் வரையறுக்கப்பட்டுள்ளது, அது சரியாகப் பதிவு செய்யும் போது தரவுத்தளத்தில் முக அம்சத் தரவைச் சேர்க்கிறது.
- DeregisterGUIFaceRec() முகத்தை அடையாளம் காணும் போது, தரவுத்தளத்திலிருந்து முக அம்சத் தரவை நீக்க, நிகழ்வு kEventFaceRecID_DelUser ஐ அனுப்புகிறது.
- _InferComplete_Vision() செயல்பாட்டில் முகப் பதிவு மற்றும் அங்கீகாரத்தின் அனுமான முடிவுகளுக்கு LVGL GUI பயன்பாட்டிலிருந்து APIகளை அழைப்பதன் மூலம் GUI ஐப் புதுப்பித்தல் உட்பட தொடர்புடைய செயல்களைச் செய்ய குறியீடுகளைப் புதுப்பிக்கவும்.ampஇன் வடிவமைப்பு. உதாரணமாகampமுகப் பதிவு வெற்றிகரமாக இருக்கும் போது,
- _FaceRecProcess_Stop() ஐ அழைப்பதன் மூலம் முன்னேற்றத்தைக் காட்டுவதை நிறுத்துங்கள்;
- _SetFaceRec(kOAISISLiteState_Stopped) ஐ அழைப்பதன் மூலம் முகப் பதிவை நிறுத்தவும்;
- GUI இல் வெற்றிகரமான முடிவைக் காட்டு: gui_show_face_rec_result(kFaceRecResult_OK, s_UserId);
- முகத் தரவை தரவுத்தளத்தில் பதிவு செய்யவும்: _RegisterUserFace(s_UserId);
- நிகழ்வுகளைக் கையாள UI கால்பேக் செயல்பாடுகளைச் சேர்க்கவும்: முன்view, முகப் பதிவு, அங்கீகாரம் மற்றும் பயனரை நீக்குதல் GUI இலிருந்து தூண்டப்பட்டது. உதாரணமாகample, முகம் பதிவு அழைப்பு: void UI_Registration_Callback(){ _SetFaceRec(kOAISISLiteState_Registration); _FaceRecProcess_Start(); }
- வெவ்வேறு நிகழ்வுகள் மற்றும் முடிவுகளில் முன்னேற்றம் மற்றும் நிலையைக் காட்ட _FaceRecProcess_Start() மற்றும் _FaceRecProcess_Stop() செயல்பாடுகளைச் சேர்க்கவும்.
- டைமர் ISR கால்பேக் செயல்பாட்டைப் புதுப்பிக்கவும் _SessionTimer_Callback() அழைப்பதன் மூலம் நேரம் முடிவடைந்ததைக் கையாளவும்: gui_show_face_rec_result(kFaceRecResult_TimeOut, s_UserId);
- Board_define.h இல் UI வெளியீட்டை HAL இயக்குவதற்கு கீழே உள்ள வரையறைகளைச் சேர்க்கவும்: #define ENABLE_OUTPUT_DEV_UiGUIFaceRec
அறிவிப்பு:
முகத்தை அடையாளம் காணும் அம்சத்தை சிறப்பாக வழங்க, வெளியீட்டு UI HAL இல் முகம் அடையாளம் காணும் செயல்முறை மற்றும் முடிவுகளைக் காண்பிக்க செயல்பாட்டை வைத்திருங்கள். செயல்பாடு கீழே விவரிக்கப்பட்டுள்ளது
- முக வழிகாட்டி செவ்வகம் நீல நிறத்தைக் காட்டுகிறது, மேலும் முகப் பதிவு அல்லது அங்கீகாரத்தைத் தொடங்கும் போது முன்னேற்றப் பட்டி முன்னேற்றத்தைக் காட்டுகிறது.
- முகப் பதிவு வெற்றிகரமாக இருக்கும் போது முக வழிகாட்டி செவ்வகம் சிவப்பு நிறத்தைக் காட்டுகிறது.
- முகம் கண்டறிதல் வெற்றிகரமாக இருக்கும்போது முக வழிகாட்டி செவ்வகம் பச்சை நிறத்தைக் காட்டுகிறது.
- முக வழிகாட்டி செவ்வகம் நீல நிறத்தில் இருக்கும், மேலும் டைமர் காலாவதியான பிறகு செயல் தோல்வியுற்றால் முன்னேற்றப் பட்டி முழு முன்னேற்றத்தைக் காட்டுகிறது. அந்த நேரத்தில், முகப் பதிவு அல்லது அங்கீகாரத்தை நிறுத்துங்கள்.
முன்னேற்றப் பட்டி மற்றும் முக வழிகாட்டி செவ்வகம் ஆகியவை ஆதார பைனரியில் கட்டமைக்கப்பட்ட ஐகான்களாக வழங்கப்படுகின்றன file ஃபிளாஷில் புரோகிராம் செய்ய வேண்டும். SDRAM இல் உள்ள ஐகான்கள் தரவுக்கான சுட்டிகள், வெளியீட்டு UI HAL சாதனத்தின் துவக்கத்தில் UI HAL இல் அழைக்கப்படும் LoadIcons (APP_ICONS_BASE) செயல்பாட்டில் அமைக்கப்பட்டுள்ளன. இது செயல்பாட்டிற்கான ஐகான்களின் ஆதரவை செயல்படுத்த வேண்டும்.
சின்னங்கள் ஆதரவை செயல்படுத்தவும்
- LVGL GUI பயன்பாட்டில் பயன்படுத்தப்படும் படங்களுடன் ஐகான்களை இணைத்து ஆதாரத்தை உருவாக்கவும்:
- நான்கு ஐகான் தலைப்பை குளோன் செய்யவும் fileஸ்மார்ட் HMI இலிருந்து s process_bar_240x14.h, virtual_face_blue_420x426.h, virtual_face_green_420x426.h மற்றும் virtual_face_red_420x426.h
\coffee machine\resource\icons\ to new folder icons under the resource folder of example SW. - நான்கு ஐகானுக்கான தேடல் பாதையைச் சேர்க்கவும் fileகேமரா_ப்ரீயில் கள்view_resource.txt file ஆதார கோப்புறையில், உதாரணமாகample: icon ../resource/icons/process_bar_240x14.h
- கேமரா_ப்ரீயை இயக்கவும்view_resource_build.bat பின் உருவாக்க படங்கள் மற்றும் ஐகான்கள் ஆதாரங்களை உருவாக்க file கேமரா_முன்view_resource.bin மற்றும் தகவல் file resource_information_table.txt (படம் 6 ஐப் பார்க்கவும்).
- நான்கு ஐகான் தலைப்பை குளோன் செய்யவும் fileஸ்மார்ட் HMI இலிருந்து s process_bar_240x14.h, virtual_face_blue_420x426.h, virtual_face_green_420x426.h மற்றும் virtual_face_red_420x426.h
- SDRAM இல் தொடக்க முகவரியையும் app_config.h இல் உள்ள ஐகான்களின் அளவையும் வரையறுக்கவும். GUI பயன்பாட்டின் படங்களுக்கு அடுத்ததாக முகவரி தொடங்குகிறது. அளவு தகவலில் உருவாக்கப்படுகிறது file. #APP_ICONS_BASE ஐ வரையறுக்கவும் (APP_RES_SHMEM_BASE + APP_LVGL_IMGS_SIZE) #APP_ICONS_SIZE 0x107c40ஐ வரையறுக்கவும்
- res_sh_mem என பெயரிடப்பட்ட நினைவகப் பிரிவின் ஒதுக்கப்பட்ட அளவை app_config.h இல் மறுவரையறை செய்வதன் மூலம் 0x200000 க்கு புதுப்பிக்கவும்: #Redefine RES_SHMEM_TOTAL_SIZE 0x200000 மற்றும் அதற்கான அமைப்பை Project > Properties > C/C++ Build > MCU அமைப்புகளில் அமைக்கவும்.
- APP_LoadResource() செயல்பாட்டில் Flash இலிருந்து SDRAM க்கு ஏற்றப்பட்ட ஆதாரத்தின் மொத்த அளவுடன் ஐகான் அளவைச் சேர்க்கவும். file lvgl_gui_face_rec_cm7.cpp: memcpy((செல்லம் *)APP_LVGL_IMGS_BASE, pLvglImages, APP_LVGL_IMGS_SIZE + APP_ICONS_SIZE);
கவனிக்கவும்: முகம் அடையாளம் காணும் அம்சத்தை முடிக்க, LVGL GUI ஆப்ஸ் ஆதரவு தேவை. வெளியீட்டு UI HAL இல் உள்ள UI கால்பேக் செயல்பாடுகள் UI திரையில் இருந்து நிகழ்வுகளைக் கையாள LVGL GUI பயன்பாட்டால் அழைக்கப்படுகின்றன. மறுபுறம், வெளியீடு UI HAL ஆனது LVGL GUI பயன்பாட்டிலிருந்து APIகளை முடிவு மற்றும் நிலையைக் காட்ட UI ஐப் புதுப்பிக்க அழைக்கிறது. LVGL GUI பயன்பாட்டின் மேம்பாடு ஒப்பீட்டளவில் சுயாதீனமானது மற்றும் பிரிவு 4.3 இல் அறிமுகப்படுத்தப்பட்டது.
4.1.5 முகத்தை அடையாளம் காண HAL சாதனங்கள் மற்றும் மேலாளர்களைத் தொடங்கவும்
செயல்படுத்தப்பட்ட பார்வை அல்கோ HAL மற்றும் UI வெளியீடு HAL மற்றும் அவற்றின் மேலாளர்கள் முக்கியமாகத் தொடங்கப்பட்டுள்ளனர் file
lvgl_gui_face_rec_cm7.cpp கீழே உள்ள கட்டமைப்பின் வளர்ச்சியின் மாற்றங்களைத் தொடர்ந்து:
- தலைப்பைச் சேர்க்கவும் file குறியீடு வரியைச் சேர்ப்பதன் மூலம் இரண்டு HAL மேலாளர்களுடன் தொடர்புடையது:
- "fwk_output_manager.h" # அடங்கும்
- # "fwk_vision_algo_manager.h" அடங்கும்
- HAL சாதனங்களை அறிவிக்கவும்:
- HAL_VALGO_DEV_DECLARE(OasisGUIFaceRec);
- HAL_OUTPUT_DEV_DECLARE(UiGUIFaceRec);
- HAL சாதனங்களை பதிவு செய்யவும்:
- HAL_VALGO_DEV_REGISTER(OasisGUIFaceRec, ret);
- HAL_OUTPUT_DEV_REGISTER(UiGUIFaceRec, ret);
- மேலாளர்களைத் தொடங்கவும்:
- FWK_MANAGER_INIT(VisionAlgoManager, ret);
- FWK_MANAGER_INIT(OutputManager, ret);
- மேலாளர்களைத் தொடங்கவும்:
- FWK_MANAGER_START(VisionAlgoManager, VISION_ALGO_MANAGER_TASK_PRIORITY, ret);
- FWK_MANAGER_START(வெளியீட்டு மேலாளர், OUTPUT_MANAGER_TASK_PRIORITY, ret);
- மேலாளர் பணிகளின் முன்னுரிமையை வரையறுக்கவும்:
- #விஷன்_ஆல்கோ_மேலாளர்_பணி_முன்னுரிமையை வரையறுக்கவும் 3
- #அவுட்புட்_மேனேஜர்_பணி_முன்னுரிமை 1 வரையறுக்கவும்
கட்டமைப்பில் முக தரவுத்தள ஆதரவைச் சேர்க்கவும்
பதிவுசெய்யப்பட்ட முக அம்சத் தரவு, ஃப்ளாஷில் சேமிக்கப்பட்ட முகத் தரவுத்தளத்தில் சிறிது வழியாக அணுகப்படுகிறது file அமைப்பு. முக தரவுத்தள ஆதரவைச் சேர்ப்பதற்கான படிகள் கீழே விவரிக்கப்பட்டுள்ளன.
ஃபிளாஷ் சேமிப்பகத்திற்கான இயக்கிகளைச் சேர்க்கவும்
ஃப்ளாஷ் இடைமுகம் FlexSPI இயக்கியை நகலெடுக்கவும் files fsl_flexspi.c மற்றும் fsl_flexspi.h, மற்றும் தரவு குறியாக்க இயக்கி fileSDK_2_13_0_MIMXRT1170-EVK\devices \MIMRX1176\drivers\ என்ற பாதையில் இருந்து fsl_caam.c மற்றும் fsl_caam.h முன்னாள் இயக்கிகள் கோப்புறைக்குample SW.
பலகை நிலை ஆதரவைச் சேர்க்கவும்
- போர்டில் உள்ள ஃப்ளாஷ் சாதனத்திற்குப் பயன்படுத்தப்படும் FlexSPI இன் வரையறைகளை board.h இல் சேர்க்கவும்:
- #BOARD_FLEXSPI FLEXSPI1ஐ வரையறுக்கவும்
- #DOARD_FLEXSPI_CLOCK kCLOCK_FlexSpi1ஐ வரையறுக்கவும்
- #BOARD_FLEXSPI_AMBA_BASE FlexSPI1_AMBA_BASEஐ வரையறுக்கவும்
- ஆபரேட்டர்கள் மற்றும் கட்டமைப்புகளை நகலெடுக்கவும் fileஃப்ளாஷ் சாதனத்தின் கள் flexspi_nor_flash_ops.c, flexspi_nor_flash_ops.h, sln_flash_config.c, sln_flash_config_w25q256jvs.h, andsln_flash_ops.h ஆகியவை ஸ்மார்ட் HMI\coffee_machine\flashample SW.
- C/C++ Build > Settings என்பதில் வலது கிளிக் செய்த பின் "உருவாக்கத்திலிருந்து ஆதாரத்தை விலக்கு" என்பதைத் தேர்வுநீக்கவும் fileகளின் பெயர் மற்றும் அவற்றைத் திட்டத்தில் கட்டமைக்க உதவும் பண்புகளைத் திறப்பது.
- சேர்க்கப்பட்ட தலைப்பை மாற்றவும் filesln_flash_config.h க்கு sln_flash_config_w25q256jvs.h என்று பெயரிடுங்கள் sln_flash_config.c மற்றும் flexspi_nor_flash_ops.h.
- FlexSPI1 கடிகார மூலத்தை இல் அமைக்கவும் file clock_config.c என்பது காபி இயந்திர பயன்பாட்டைக் குறிக்கிறது.
அடாப்டர் மற்றும் நடுத்தர நிலை ஆதரவைச் சேர்க்கவும்
- நகலெடுக்கவும் files sln_flash.c, sln_flash.h, sln_encrypt.c, மற்றும் sln_encrypt.h ஆகியவை அடாப்டர் இயக்கிகளாக file ஸ்மார்ட் HMI\coffee_machine\cm7\source\ என்ற பாதையிலிருந்து முன்னாள் கோப்புறை மூலத்திற்கு கணினி மற்றும் பயன்பாடுampலெ. புதியதைப் புதுப்பிக்கவும் files:
- அவற்றைக் கட்டியெழுப்ப, "கட்டிடத்திலிருந்து வளத்தை விலக்கு" என்பதைத் தேர்வுநீக்கவும்.
- சேர்க்கப்பட்ட அனைத்து தலைப்புகளையும் மாற்றவும் file sln_flash_config.h to sln_flash_config_w25q256jvs.h என்று பெயர்.
- கோப்புறையை நகலெடுக்கவும் fileசிறியவர்களுக்கான ஏபிஐகளைக் கொண்ட அமைப்பு fileகணினி மற்றும் HAL இயக்கி ஸ்மார்ட் HMI \coffee_machine\cm7\source\ இலிருந்து example SW. புதிய கோப்புறைக்கு புதுப்பிக்கவும்:
- கட்டியெழுப்ப, அதில் "கட்டிடத்திலிருந்து வளத்தை விலக்கு" என்பதைத் தேர்வுநீக்கவும்.
- திட்ட அமைப்புகளில் அதற்கான பாதையைச் சேர்க்கவும்: “${workspace_loc:/${ProjName}/fileஅமைப்பு}"
- சேர்க்கப்பட்ட தலைப்பை மாற்றவும் file sln_flash_config.h க்கு sln_flash_config_w25q256jvs.h என்றும் fica_definition.h க்கு app_config.h என்றும் பெயர் file sln_flash_littlefs.h.
- நடுத்தர ware - கொஞ்சம் கொண்ட கோப்புறை littlefs ஐ நகலெடுக்கவும் fileSDK_2_13_0_ MIMXRT1170-EVK\middleware\ என்ற பாதையிலிருந்து முன்னாள்ample SW. புதிய கோப்புறையைப் புதுப்பிக்கவும்:
- கட்டியெழுப்ப, அதில் "கட்டிடத்திலிருந்து வளத்தை விலக்கு" என்பதைத் தேர்வுநீக்கவும்.
- திட்ட அமைப்புகளில் அதற்கான பாதையைச் சேர்க்கவும்: “${workspace_loc:/${ProjName}/littlefs}”
HAL இயக்கிகளைச் சேர்க்கவும்
- இரண்டு HAL சாதனங்கள் உள்ளன - file கணினி மற்றும் முக தரவுத்தள HAL தரவுத்தள அணுகல் அம்சத்திற்காக ஆதரிக்கப்படுகிறது மற்றும் அவை எந்த மாற்றமும் இல்லாமல் ஏற்கனவே கட்டமைப்பில் செயல்படுத்தப்பட்டுள்ளன. Board_define.h இல் கீழே உள்ள வரையறைகளைச் சேர்ப்பதன் மூலம் அவற்றை இயக்கவும்:
- ENABLE_FLASH_DEV_Littlefs ஐ வரையறுக்கவும்
- ENABLE_FACEDB ஐ வரையறுக்கவும்
முன்னாள் நபருக்கான முக தரவுத்தள பெயரை மாற்றவும்ample: #OASIS_FACE_DB_DIR “oasis_gui_face_rec” என்பதை வரையறுக்கவும்
பயன்பாட்டு நிலை ஆதரவைச் சேர்க்கவும்
- பிரதானத்தைப் புதுப்பிக்கவும் file lvgl_gui_face_rec_cm7.cpp:
- தலைப்பைச் சேர்க்கவும் file ஃப்ளாஷ் தொடர்பானது file குறியீட்டு வரியைச் சேர்ப்பதன் மூலம் கணினி HAL மேலாளர்: #“fwk_flash.h”ஐச் சேர்க்கவும்
- அறிவித்து பதிவு செய்யவும் file அமைப்பு HAL சாதனம்:
- HAL_FLASH_DEV_DECLARE(லிட்டில்ஃப்ஸ்);
- HAL_FLASH_DEV_REGISTER(லிட்டில்ஃப்ஸ், ஓய்வு);
குறிப்பு: தி file APP_InitFramework() செயல்பாட்டில் அனைத்து சாதன மேலாளர்களும் துவக்கப்படுவதற்கு முன் கணினி HAL சாதனம் பதிவு செய்யப்பட வேண்டும்.
- MPU ஐ உள்ளமைக்க APP_BoardInit() இல் உள்ள BOARD_ConfigMPU() செயல்பாட்டை அழைக்கவும்.
- அமைக்கவும் file ஃபிளாஷில் கணினி ஒதுக்கீடு file app_config.h இல் பயன்படுத்தப்படும் மேக்ரோ வரையறைகளை வரையறுப்பதன் மூலம் file sln_flash_littlefs.h:
- #FICA_IMG_ஐ வரையறுக்கவும்FILE_SYS_ADDR (FLASH_IMG_SIZE + RES_SHMEM_TOTAL_SIZE)
- #FICA_ஐ வரையறுக்கவும்FILE_SYS_SIZE (0x280000)
கட்டமைப்புகள்
போதுமான செயல்திறனுக்காக SRAM ITC பகுதியில் சில Flash தொடர்பான குறியீடுகள் செயல்படுத்தப்படுகின்றன. ஸ்மார்ட் HMI\coffee_machine\cm7\ என்ற பாதையிலிருந்து இணைப்பான் உள்ளமைவுகளைக் கொண்ட கோப்புறை இணைப்புஸ்கிரிப்ட்களை நகலெடுக்கவும்ample SW.
LVGL GUI பயன்பாட்டைச் செயல்படுத்தவும்
கட்டமைப்பின் அடிப்படையிலான LVGL GUI பயன்பாட்டின் உருவாக்கம், வெளியீட்டு UI HAL இலிருந்து APIகளை அழைக்கிறது மற்றும் UI HAL ஐ வெளியிடுவதற்கு APIகளை வழங்குகிறது (வெளியீடு UI HAL ஐ செயல்படுத்துவதற்கு பிரிவு 4.1.3 ஐப் பார்க்கவும்).
இருப்பினும், LVGL GUI பயன்பாட்டின் விரிவான செயலாக்கம் பயன்பாட்டின் தேவைகள் மற்றும் வடிவமைப்பைப் பொறுத்தது. இதில் உள்ள GUI ஆப்ampபிரிவு 4 இன் தொடக்கத்தில் விவரிக்கப்பட்டுள்ளபடி le வடிவமைக்கப்பட்டுள்ளது.
செயல்படுத்தல் அறிமுகங்கள் கீழே:
- தனிப்பயனாக்கப்பட்ட குறியீடுகள் GUI வழிகாட்டி திட்டத்திற்கும் உட்பொதிக்கப்பட்ட கணினி திட்டத்திற்கும் இடைமுகமாக GUI வழிகாட்டி வழங்கிய custom.c மற்றும் custom.h இல் செயல்படுத்தப்படுகிறது.
- பின்வரும் செயல்பாடுகளை அடைய custom.c இல் gui_xxx() என்ற புதிய செயல்பாடுகளைச் சேர்க்கவும்:
- UI ஐப் புதுப்பிக்க UI HAL மற்றும் GUI ஆப்ஸ் வெளியீடு.
- GUI பயன்பாட்டிற்கு, வெளியீடு UI HAL இலிருந்து UI கால்பேக் செயல்பாடுகளை அழைப்பதன் மூலம் நிகழ்வுகளைத் தூண்டும்.
உதாரணமாகample, புதிய செயல்பாடு gui_event_face_rec_action() தொடர்புடைய பொத்தானைக் கிளிக் செய்யும் போது GUI பயன்பாட்டிலிருந்து தூண்டப்படும் முகப் பதிவு, முகத்தை அடையாளம் காணுதல் மற்றும் பயனரை நீக்குதல் போன்ற நிகழ்வுகளில் ஒன்றைக் கையாள, UI கால்பேக் செயல்பாடுகளை அழைக்கிறது.
குறிப்பு: செயல்பாடு gui_set_virtual_face() முன் வெளியீடு UI HAL இல் அழைக்கப்படுகிறதுview custom.c இல் பயன்முறையை செயல்படுத்த வேண்டும்:
- குளோன் செயல்பாடு gui_set_virtual_face() இலிருந்து ஸ்மார்ட் HMI\coffee_machine\cm4\ custom \custom.c.
- விட்ஜெட்டின் பெயரை home_img_cameraPre மாற்றவும்view திரைக்கு_img_camera_preview செயல்பாட்டில்.
- GUI வழிகாட்டி திட்டத்துடன் இணக்கமாக இருப்பதற்கு, கஸ்டம்.சியில் உள்ள மேக்ரோ வரையறை #ifndef RT_PLATFORM இன் மேக்ரோ வரையறையின் கட்டுப்பாட்டின் கீழ், வெளியீட்டு UI HAL இல் உள்ள அனைத்திற்கும் ஒரே மாதிரியுடன் UI கால்பேக் செயல்பாடுகளைச் செயல்படுத்தவும், ஏனெனில் வெளியீடு UI HAL இல் உள்ள இந்த செயல்பாடுகள் உட்பொதிக்கப்பட்ட தளம். custom.c இல், அவை GUI வழிகாட்டியில் உள்ள சிமுலேட்டரைச் சார்ந்தது மற்றும் உட்பொதிக்கப்பட்ட இயங்குதளத்திற்குச் சார்பற்றவை. உதாரணமாகample, GUI Guider சிமுலேட்டருக்கு கீழே முகம் பதிவு அழைப்பு செயல்படுத்தப்படுகிறது: #ifndef RT_PLATFORM void UI_Registration_Callback() {gui_hide_del_user_btn(true); s_InAction = பொய்; திரும்ப; }
குறிப்பு: பிரிவு 6 இன் படி 4.1.3 இல் அறிமுகப்படுத்தப்பட்ட செயல்பாட்டின் அதே முன்மாதிரியைப் பார்க்கவும்
மேக்ரோ வரையறை RT_PLATFORM ஆனது படம் 7 இல் காட்டப்பட்டுள்ளபடி MCUXpresso இன் திட்ட அமைப்புகளில் அமைக்கப்பட்டுள்ளது: - UI_xxx_Callback() மற்றும் gui_xxx() என பெயரிடப்பட்ட அனைத்து செயல்பாடுகளையும் custom.h இல் அறிவித்து, GUI APIகளை UI அவுட்புட் HALக்கு பகிர, smart_tlhmi_event_descriptor.h இல் சேர்க்கப்பட்டுள்ள custom.h ஐச் சேர்க்கவும்.
- பின்வரும் செயல்பாடுகளை அடைய custom.c இல் gui_xxx() என்ற புதிய செயல்பாடுகளைச் சேர்க்கவும்:
- GUI வழிகாட்டியில் GUI ஐ உருவாக்கவும்:
- கோப்புறை கேமராவை முன் குளோன் செய்யவும்view அடிப்படை மென்பொருள் தொகுப்பான lvgl_gui_camera_pre இல் உள்ள gui_guider கோப்புறையில் GUI Guider திட்ட மென்பொருளைக் கொண்டுள்ளதுview_செமீ7. தொடர்புடைய பெயரை camera_pre மாற்றவும்view புதிய முன்னாள்க்கு face_recampலெ.
- மேலே மேம்படுத்தப்பட்ட custom.c மற்றும் custom. புதிய GUI Guider திட்ட மென்பொருளுக்கு h.
- GUI வழிகாட்டியில் புதிய face_rec திட்டத்தைத் திறக்கவும். கீழே உள்ளவாறு புதுப்பிக்கவும்:
- பயனரை நீக்கு என்று பெயரிடப்பட்ட புதிய பொத்தானைச் சேர்க்கவும். அதில் மறைந்துள்ள கொடியைச் சேர்க்கவும், இதனால் GUI ஆப்ஸ் தொடங்கும் போது பொத்தான் மறைக்கப்படும்.
- முகப் பதிவு, முகத்தை அடையாளம் காணுதல் மற்றும் பயனரை நீக்குதல் போன்ற நிகழ்வுகளைத் தூண்டுவதற்கு, அனைத்து பொத்தான்களின் பதிவு, அங்கீகாரம் மற்றும் நீக்கும் பயனரின் நிகழ்வு அமைப்பில் "வெளியிடப்பட்டது" தூண்டுதலில் வெவ்வேறு நிகழ்வு ஐடி அளவுருவுடன் API gui_event_face_rec_action() ஐ அழைப்பதற்கான குறியீட்டு வரியைச் சேர்க்கவும். படம் 8, பொத்தான் பதிவு நிகழ்விற்கான குறியீட்டைக் காட்டுகிறது:
- உருவாக்கப்பட்ட குறியீட்டை GUI வழிகாட்டியிலிருந்து MCUXpresso திட்டத்திற்குப் புதுப்பிக்கவும்.
- MCUXpresso ப்ராஜெக்ட் SW ஆல் உருவாக்கப்பட்ட கோப்புறையில் உள்ள கோப்புறை படங்களைத் தவிர்த்து உள்ளடக்கங்களை GUI Guider திட்டப்பணி SW உருவாக்கிய கோப்புறையில் உள்ளவற்றுடன் மாற்றவும்.
குறிப்பு: மேலே அறிமுகப்படுத்தப்பட்ட மாற்றங்களைப் பற்றிய கூடுதல் விவரங்களுக்கு, முன்னாள் பார்க்கவும்ample மென்பொருள் இல் https://mcuxpresso.nxp.com/appcodehub.
முன்னாள் உடன் சரிபார்ப்புகள்ample திட்டம்
முன்னாள் பெறampஇந்த பயன்பாட்டுக் குறிப்புக்கான ஆதாரங்கள் மற்றும் கருவிகளைக் கொண்ட le மென்பொருள் தொகுப்பு, பார்வையிடவும்: https://mcuxpresso.nxp.com/appcodehub. முன்னாள் திறக்கவும்ampMCUXpresso IDE இல் திட்டம். .axf ஐ உருவாக்கி நிரல்படுத்தவும் file 0x30000000 என்ற முகவரிக்கு மற்றும் ஆதார தொட்டியை நிரல் செய்யவும் file கேமரா_முன்view0x30800000 என்ற முகவரிக்கு _resource.bin.
LVGL GUI முக அங்கீகாரம் முன்னாள்ample பொதுவாக கீழே வேலை செய்கிறது:
- முன்view: பவர்-அப் மூலம், கேமராவால் பிடிக்கப்பட்ட வீடியோ ஸ்ட்ரீம்கள், கேமரா முன் குறிப்பிட்ட பகுதியில் காண்பிக்கப்படும்view GUI திரையில். நிலை லேபிள் “முன்view…”. விவரங்களுக்கு, படம் 3 ஐப் பார்க்கவும். பயனரை நீக்கு என்ற பொத்தான் மறைக்கப்பட்டுள்ளது. பொத்தான்கள் மற்றும் படங்களுக்கு வெளியே உள்ள பகுதியைக் கிளிக் செய்யும் போது, அது முன்பைக் காட்டுகிறதுview முகத்தை பதிவு செய்தல் அல்லது அடையாளம் காணும் நடவடிக்கை முடிந்ததும் மேலே உள்ளவாறு கூறவும்.
- பதிவு:
- டார்டப்: பதிவு பொத்தானைக் கிளிக் செய்தால், முகப் பதிவு தொடங்குகிறது. நிலை லேபிள் “பதிவு…” காண்பிக்க மாறுகிறது, முக வழிகாட்டி செவ்வகம் நீல நிறத்தைக் காட்டுகிறது, மேலும் முன்னேற்றப் பட்டியில் முன்னேற்றத்தைக் காட்டத் தொடங்குகிறது. பதிவு செய்வதற்கான நீல முக வழிகாட்டி செவ்வகத்தில் பயனரின் முகம் காட்டப்படுவதை உறுதிசெய்யவும்.
- வெற்றி: நிலை லேபிள் “பதிவு…சரி” மற்றும் பதிவுசெய்யப்பட்ட பயனர் ஐடி எண்ணைக் காட்டுகிறது, பட்டியில் முன்னேற்றம் முழுவதையும் காட்டுவதற்கு முன்பு முகப் பதிவு வெற்றிகரமாக இருந்தால், முக வழிகாட்டி செவ்வகம் சிவப்பு நிறமாக மாறும்.
- தோல்வி -> நேரம் முடிந்தது: பட்டியில் முன்னேற்றம் முழுவதையும் காட்டும்போது முகப் பதிவு தோல்வியடைந்தால், நிலை லேபிள் “பதிவு...நேரம் முடிந்தது” என்பதைக் காட்டுகிறது.
- தோல்வி -> நகல்: ஸ்டேட்டஸ் லேபிள் “பதிவு...தோல்வி” என்பதைக் காட்டுகிறது, பட்டியில் முன்னேற்றம் முழுவதையும் காண்பிக்கும் முன் பதிவு செய்யப்பட்ட முகம் அங்கீகரிக்கப்பட்டால் முக வழிகாட்டி செவ்வகம் பச்சை நிறமாக மாறும்.
- அங்கீகாரம்:
- தொடக்கம்: அறிதல் பொத்தானைக் கிளிக் செய்யும் போது, முகத்தை அடையாளம் காணத் தொடங்கும். நிலை லேபிள் "அங்கீகாரம்..." காண்பிக்க மாறுகிறது, முக வழிகாட்டி செவ்வகம் நீல நிறத்தைக் காட்டுகிறது, மேலும் முன்னேற்றப் பட்டியில் முன்னேற்றத்தைக் காட்டத் தொடங்குகிறது. பதிவு செய்வதற்கான நீல முக வழிகாட்டி செவ்வகத்தில் பயனரின் முகம் காட்டப்பட்டுள்ளதை உறுதிசெய்யவும்.
- வெற்றி: ஸ்டேட்டஸ் லேபிள் “அங்கீகாரம்…சரி” மற்றும் அங்கீகரிக்கப்பட்ட பயனர் ஐடி எண்ணைக் காட்டுகிறது, பட்டியில் முன்னேற்றம் முழுவதையும் காட்டுவதற்கு முன், முகத்தை அடையாளம் காண்பது வெற்றிகரமாக இருந்தால், முக வழிகாட்டி செவ்வகம் பச்சை நிறமாக மாறும். அந்த இடத்தில், பயனரை நீக்கு என்ற பொத்தான் தோன்றும். பயனர் அங்கீகரிக்கப்பட்டால் மட்டுமே அதை நீக்க அனுமதிக்கப்படுவார் என்று அர்த்தம்.
- வலிப்பு: பட்டியில் முன்னேற்றம் முழுவதையும் காட்டும்போது முகத்தை அடையாளம் காண முடியவில்லை என்றால், நிலை லேபிள் "அங்கீகாரம்...நேரம் முடிந்தது" என்பதைக் காட்டுகிறது.
- பயனரை நீக்கு: "பயனரை நீக்கு" என்ற பொத்தானைக் கிளிக் செய்யும் போது, முகத்தை அடையாளம் காண்பது வெற்றியடைந்த பிறகு, முக வழிகாட்டி செவ்வகம் நீலமாகி, பட்டியில் முன்னேற்றம் முழுவதையும் காட்டுவதன் மூலம் "பயனரை நீக்கு...சரி" எனக் காண்பிக்கும் நிலை லேபிள் மாறும். பயனரை நீக்கு என்ற பொத்தான் மீண்டும் மறைக்கப்பட்டுள்ளது. அங்கீகரிக்கப்பட்ட முகம்/பயனர் தரவுத்தளத்திலிருந்து நீக்கப்பட்டுள்ளனர். மீண்டும் பதிவு செய்யும் வரை இந்த முகம்/பயனரை அடையாளம் காண முடியாது.
ஆவணத்தில் உள்ள மூலக் குறியீட்டைப் பற்றிய குறிப்பு
Exampஇந்த ஆவணத்தில் காட்டப்பட்டுள்ள le குறியீட்டிற்கு பின்வரும் பதிப்புரிமை மற்றும் BSD-3-பிரிவு உரிமம் உள்ளது:
பதிப்புரிமை 2024 NXP மறுபகிர்வு மற்றும் மூல மற்றும் பைனரி வடிவங்களில், மாற்றத்துடன் அல்லது இல்லாமல், பின்வரும் நிபந்தனைகள் பூர்த்தி செய்யப்பட்டால் அனுமதிக்கப்படுகிறது:
- மூலக் குறியீட்டின் மறுபகிர்வுகள் மேலே உள்ள பதிப்புரிமை அறிவிப்பு, இந்த நிபந்தனைகளின் பட்டியல் மற்றும் பின்வரும் மறுப்பு ஆகியவற்றை வைத்திருக்க வேண்டும்.
- பைனரி வடிவத்தில் மறுபகிர்வுகள் மேலே உள்ள பதிப்புரிமை அறிவிப்பை மீண்டும் உருவாக்க வேண்டும், இந்த நிபந்தனைகளின் பட்டியல் மற்றும் பின்வரும் ஆவணங்கள் மற்றும்/அல்லது பிற பொருட்களில் உள்ள மறுப்பு ஆகியவை விநியோகத்துடன் வழங்கப்பட வேண்டும்.
- குறிப்பிட்ட முன் எழுதப்பட்ட அனுமதியின்றி இந்த மென்பொருளிலிருந்து பெறப்பட்ட தயாரிப்புகளை அங்கீகரிக்க அல்லது விளம்பரப்படுத்த பதிப்புரிமைதாரரின் பெயரோ அல்லது அதன் பங்களிப்பாளர்களின் பெயர்களோ பயன்படுத்தப்படக்கூடாது.
இந்த மென்பொருள் காப்புரிமை வைத்திருப்பவர்கள் மற்றும் பங்களிப்பாளர்களால் வழங்கப்படுகிறது. ஒரு குறிப்பிட்ட நோக்கத்திற்காக மறுக்கப்படுகிறது. எந்தவொரு சந்தர்ப்பத்திலும் பதிப்புரிமை வைத்திருப்பவர் அல்லது பங்களிப்பாளர்கள் எந்தவொரு நேரடி, மறைமுகமான, தற்செயலான, சிறப்பு, முன்மாதிரியான, அல்லது அதன் விளைவாக ஏற்படும் சேதங்களுக்கு (கடன் வழங்குதல், கடனளிப்பது உட்பட) பொறுப்பேற்க மாட்டார்கள். மாற்றுப் பொருட்கள் அல்லது சேவைகள் பயன்பாடு இழப்பு, தரவு அல்லது லாபம் அல்லது வணிகத் தடங்கல் அலட்சியம் அல்லது இல்லையெனில்) இந்த மென்பொருளைப் பயன்படுத்துவதால் ஏற்படும் எந்த விதத்திலும், அத்தகைய சேதம் ஏற்படுவதற்கான சாத்தியக்கூறுகள் அறிவுறுத்தப்பட்டாலும் கூட.
சரிபார்ப்பு வரலாறு
சட்ட தகவல்
வரையறைகள்
வரைவு - ஒரு ஆவணத்தில் உள்ள வரைவு நிலை, உள்ளடக்கம் இன்னும் உள்நிலையில் இருப்பதைக் குறிக்கிறதுview மற்றும் முறையான ஒப்புதலுக்கு உட்பட்டது, இது மாற்றங்கள் அல்லது சேர்த்தல்களுக்கு வழிவகுக்கும். NXP செமிகண்டக்டர்கள் ஒரு ஆவணத்தின் வரைவுப் பதிப்பில் சேர்க்கப்பட்டுள்ள தகவலின் துல்லியம் அல்லது முழுமை குறித்து எந்தப் பிரதிநிதித்துவங்களையும் உத்தரவாதங்களையும் வழங்குவதில்லை மற்றும் அத்தகைய தகவலைப் பயன்படுத்துவதால் ஏற்படும் விளைவுகளுக்கு எந்தப் பொறுப்பையும் கொண்டிருக்காது.
மறுப்பு
- வரையறுக்கப்பட்ட உத்தரவாதம் மற்றும் பொறுப்பு - இந்த ஆவணத்தில் உள்ள தகவல் துல்லியமானது மற்றும் நம்பகமானது என நம்பப்படுகிறது. எவ்வாறாயினும், NXP செமிகண்டக்டர்கள் அத்தகைய தகவலின் துல்லியம் அல்லது முழுமை குறித்து வெளிப்படுத்தப்பட்ட அல்லது மறைமுகமாக எந்தவிதமான பிரதிநிதித்துவங்கள் அல்லது உத்தரவாதங்களை வழங்குவதில்லை மற்றும் அத்தகைய தகவலைப் பயன்படுத்துவதால் ஏற்படும் விளைவுகளுக்கு எந்தப் பொறுப்பையும் கொண்டிருக்காது. NXP செமிகண்டக்டர்களுக்கு வெளியே உள்ள தகவல் மூலத்தால் இந்த ஆவணத்தில் உள்ள உள்ளடக்கத்திற்கு NXP செமிகண்டக்டர்கள் பொறுப்பேற்காது.
எந்தவொரு நிகழ்விலும் NXP செமிகண்டக்டர்கள் எந்தவொரு மறைமுகமான, தற்செயலான, தண்டனைக்குரிய, சிறப்பு அல்லது விளைவான சேதங்களுக்கு (வரம்பில்லாமல் - இழந்த இலாபங்கள், இழந்த சேமிப்புகள், வணிகத் தடங்கல், ஏதேனும் தயாரிப்புகளை அகற்றுவது அல்லது மாற்றுவது தொடர்பான செலவுகள் அல்லது மறுவேலைக் கட்டணங்கள் உட்பட) பொறுப்பாகாது. அல்லது அத்தகைய சேதங்கள் சித்திரவதை (அலட்சியம் உட்பட), உத்தரவாதம், ஒப்பந்தத்தை மீறுதல் அல்லது வேறு ஏதேனும் சட்டக் கோட்பாட்டின் அடிப்படையில் இல்லை.
எந்தவொரு காரணத்திற்காகவும் வாடிக்கையாளருக்கு ஏற்படும் சேதங்கள் இருந்தபோதிலும், NXP செமிகண்டக்டர்களின் வணிக விற்பனையின் விதிமுறைகள் மற்றும் நிபந்தனைகளுக்கு இணங்க, இங்கு விவரிக்கப்பட்டுள்ள தயாரிப்புகளுக்கான வாடிக்கையாளர் மீதான NXP செமிகண்டக்டர்களின் மொத்த மற்றும் ஒட்டுமொத்த பொறுப்பு வரையறுக்கப்படும். - மாற்றங்களைச் செய்வதற்கான உரிமை — NXP செமிகண்டக்டர்கள் இந்த ஆவணத்தில் வெளியிடப்பட்ட தகவல்களில் எந்த நேரத்திலும் அறிவிப்பு இல்லாமல் வரம்புக்குட்பட்ட விவரக்குறிப்புகள் மற்றும் தயாரிப்பு விளக்கங்கள் உட்பட மாற்றங்களைச் செய்வதற்கான உரிமையைக் கொண்டுள்ளது. இந்த ஆவணம் இதை வெளியிடுவதற்கு முன் வழங்கப்பட்ட அனைத்து தகவல்களையும் மாற்றியமைக்கிறது மற்றும் மாற்றுகிறது.
- பயன்பாட்டிற்கு ஏற்றது — NXP செமிகண்டக்டர்கள் தயாரிப்புகள், வாழ்க்கைத் துணை, உயிருக்கு முக்கியமான அல்லது பாதுகாப்பு முக்கியமான அமைப்புகள் அல்லது உபகரணங்களில் பயன்படுத்துவதற்கு ஏற்றதாக வடிவமைக்கப்படவில்லை, அங்கீகரிக்கப்படவில்லை அல்லது உத்தரவாதம் அளிக்கப்படவில்லை. தனிப்பட்ட காயம், இறப்பு அல்லது கடுமையான சொத்து அல்லது சுற்றுச்சூழல் சேதம். NXP செமிகண்டக்டர்கள் மற்றும் அதன் சப்ளையர்கள் NXP செமிகண்டக்டர்கள் தயாரிப்புகளை அத்தகைய உபகரணங்கள் அல்லது பயன்பாடுகளில் சேர்ப்பதற்கு மற்றும்/அல்லது பயன்படுத்துவதற்கு எந்தப் பொறுப்பையும் ஏற்கவில்லை, எனவே அத்தகைய சேர்ப்பு மற்றும்/அல்லது பயன்பாடு வாடிக்கையாளரின் சொந்த ஆபத்தில் உள்ளது.
- விண்ணப்பங்கள் - இந்த தயாரிப்புகளில் ஏதேனும் இங்கே விவரிக்கப்பட்டுள்ள பயன்பாடுகள் விளக்க நோக்கங்களுக்காக மட்டுமே. NXP செமிகண்டக்டர்கள் அத்தகைய பயன்பாடுகள் மேலும் சோதனை அல்லது மாற்றமின்றி குறிப்பிட்ட பயன்பாட்டிற்கு ஏற்றதாக இருக்கும் என்று எந்த பிரதிநிதித்துவமும் அல்லது உத்தரவாதமும் அளிக்கவில்லை.
NXP செமிகண்டக்டர்ஸ் தயாரிப்புகளைப் பயன்படுத்தி தங்கள் பயன்பாடுகள் மற்றும் தயாரிப்புகளின் வடிவமைப்பு மற்றும் செயல்பாட்டிற்கு வாடிக்கையாளர்கள் பொறுப்பாவார்கள், மேலும் NXP குறைக்கடத்திகள் பயன்பாடுகள் அல்லது வாடிக்கையாளர் தயாரிப்பு வடிவமைப்புக்கான எந்த உதவிக்கும் எந்தப் பொறுப்பையும் ஏற்காது. வாடிக்கையாளரின் பயன்பாடுகள் மற்றும் திட்டமிடப்பட்ட தயாரிப்புகள் மற்றும் வாடிக்கையாளரின் மூன்றாம் தரப்பு வாடிக்கையாளரின் (கள்) திட்டமிட்ட பயன்பாடு மற்றும் பயன்பாட்டிற்கு NXP செமிகண்டக்டர்கள் தயாரிப்பு பொருத்தமானதா மற்றும் பொருத்தமானதா என்பதை தீர்மானிப்பது வாடிக்கையாளரின் முழுப் பொறுப்பாகும். வாடிக்கையாளர்கள் தங்கள் பயன்பாடுகள் மற்றும் தயாரிப்புகளுடன் தொடர்புடைய அபாயங்களைக் குறைக்க பொருத்தமான வடிவமைப்பு மற்றும் செயல்பாட்டு பாதுகாப்புகளை வழங்க வேண்டும். வாடிக்கையாளரின் பயன்பாடுகள் அல்லது தயாரிப்புகளில் ஏதேனும் பலவீனம் அல்லது இயல்புநிலை அல்லது வாடிக்கையாளரின் மூன்றாம் தரப்பு வாடிக்கையாளர் (கள்) பயன்பாடு அல்லது பயன்பாடு ஆகியவற்றின் அடிப்படையில் ஏற்படும் இயல்புநிலை, சேதம், செலவுகள் அல்லது சிக்கல் தொடர்பான எந்தப் பொறுப்பையும் NXP குறைக்கடத்திகள் ஏற்காது. NXP செமிகண்டக்டர்ஸ் தயாரிப்புகளைப் பயன்படுத்தி வாடிக்கையாளரின் பயன்பாடுகள் மற்றும் தயாரிப்புகளுக்குத் தேவையான அனைத்து சோதனைகளைச் செய்வதற்கும் வாடிக்கையாளர் பொறுப்பு. NXP இந்த வகையில் எந்தப் பொறுப்பையும் ஏற்காது. - வணிக விற்பனைக்கான விதிமுறைகள் மற்றும் நிபந்தனைகள் — https://www.nxp.com/pro இல் வெளியிடப்பட்ட வணிக விற்பனையின் பொதுவான விதிமுறைகள் மற்றும் நிபந்தனைகளுக்கு உட்பட்டு NXP செமிகண்டக்டர்கள் தயாரிப்புகள் விற்கப்படுகின்றன.file/விதிமுறைகள், செல்லுபடியாகும் எழுதப்பட்ட தனிப்பட்ட ஒப்பந்தத்தில் வேறுவிதமாக ஒப்புக் கொள்ளப்படாவிட்டால். ஒரு தனிப்பட்ட ஒப்பந்தம் முடிவடைந்தால், அந்தந்த ஒப்பந்தத்தின் விதிமுறைகள் மற்றும் நிபந்தனைகள் மட்டுமே பொருந்தும். NXP குறைக்கடத்திகள் வாடிக்கையாளர்களால் NXP செமிகண்டக்டர் தயாரிப்புகளை வாங்குவது தொடர்பாக வாடிக்கையாளரின் பொதுவான விதிமுறைகள் மற்றும் நிபந்தனைகளைப் பயன்படுத்துவதை இதன் மூலம் வெளிப்படையாக எதிர்க்கிறது.
- ஏற்றுமதி கட்டுப்பாடு - இந்த ஆவணம் மற்றும் இங்கு விவரிக்கப்பட்டுள்ள உருப்படி(கள்) ஏற்றுமதி கட்டுப்பாட்டு விதிமுறைகளுக்கு உட்பட்டதாக இருக்கலாம். ஏற்றுமதி செய்வதற்கு தகுதிவாய்ந்த அதிகாரிகளிடமிருந்து முன் அங்கீகாரம் தேவைப்படலாம்.
- வாகனம் அல்லாத தகுதி வாய்ந்த தயாரிப்புகளில் பயன்படுத்த ஏற்றது — இந்த குறிப்பிட்ட NXP செமிகண்டக்டர்ஸ் தயாரிப்பு வாகனத் தகுதி வாய்ந்தது என்று இந்த ஆவணம் வெளிப்படையாகக் கூறாவிட்டால், தயாரிப்பு வாகனப் பயன்பாட்டிற்கு ஏற்றது அல்ல. இது வாகன சோதனை அல்லது பயன்பாட்டுத் தேவைகளுக்கு ஏற்ப தகுதி பெறவில்லை அல்லது சோதிக்கப்படவில்லை. NXP செமிகண்டக்டர்கள் வாகன உபகரணங்கள் அல்லது பயன்பாடுகளில் வாகனம் அல்லாத தகுதி வாய்ந்த தயாரிப்புகளைச் சேர்ப்பதற்கு மற்றும்/அல்லது பயன்படுத்துவதற்கு எந்தப் பொறுப்பையும் ஏற்காது.
வாகன விவரக்குறிப்புகள் மற்றும் தரநிலைகளுக்கு வாகனப் பயன்பாடுகளில் வடிவமைப்பு மற்றும் பயன்பாட்டிற்காக வாடிக்கையாளர் தயாரிப்பைப் பயன்படுத்தினால், வாடிக்கையாளர் (அ) அத்தகைய வாகனப் பயன்பாடுகள், பயன்பாடு மற்றும் விவரக்குறிப்புகளுக்கு தயாரிப்புக்கான NXP குறைக்கடத்திகளின் உத்தரவாதமின்றி தயாரிப்பைப் பயன்படுத்த வேண்டும் b) வாடிக்கையாளர் NXP செமிகண்டக்டர்களின் விவரக்குறிப்புகளுக்கு அப்பாற்பட்ட வாகனப் பயன்பாடுகளுக்கு தயாரிப்பைப் பயன்படுத்தும் போது, அத்தகைய பயன்பாடு வாடிக்கையாளரின் சொந்த ஆபத்தில் மட்டுமே இருக்க வேண்டும், மேலும் (c) வாடிக்கையாளர் வடிவமைப்பு மற்றும் பயன்பாட்டினால் ஏற்படும் எந்தவொரு பொறுப்பு, சேதம் அல்லது தோல்வியுற்ற தயாரிப்பு உரிமைகோரல்களுக்கு வாடிக்கையாளர் முழுமையாக NXP குறைக்கடத்திகளுக்கு இழப்பீடு வழங்குகிறார். NXP செமிகண்டக்டர்களின் நிலையான உத்தரவாதம் மற்றும் NXP செமிகண்டக்டர்களின் தயாரிப்பு விவரக்குறிப்புகளுக்கு அப்பாற்பட்ட வாகன பயன்பாடுகளுக்கான தயாரிப்பு. - மொழிபெயர்ப்புகள் — ஒரு ஆவணத்தின் ஆங்கிலம் அல்லாத (மொழிபெயர்க்கப்பட்ட) பதிப்பு, அந்த ஆவணத்தில் உள்ள சட்டத் தகவல்கள் உட்பட, குறிப்புக்காக மட்டுமே. மொழிபெயர்க்கப்பட்ட மற்றும் ஆங்கிலப் பதிப்புகளுக்கு இடையில் ஏதேனும் முரண்பாடு இருந்தால் ஆங்கிலப் பதிப்பு மேலோங்கும்.
- பாதுகாப்பு — அனைத்து NXP தயாரிப்புகளும் அடையாளம் காணப்படாத பாதிப்புகளுக்கு உட்பட்டிருக்கலாம் அல்லது நிறுவப்பட்ட பாதுகாப்பு தரநிலைகள் அல்லது அறியப்பட்ட வரம்புகளுடன் கூடிய விவரக்குறிப்புகளை ஆதரிக்கலாம் என்பதை வாடிக்கையாளர் புரிந்துகொள்கிறார். வாடிக்கையாளரின் பயன்பாடுகள் மற்றும் தயாரிப்புகளில் இந்த பாதிப்புகளின் விளைவைக் குறைக்க, அதன் பயன்பாடுகள் மற்றும் தயாரிப்புகளின் வடிவமைப்பு மற்றும் செயல்பாட்டிற்கு வாடிக்கையாளர் அவர்களின் வாழ்நாள் முழுவதும் பொறுப்பு. வாடிக்கையாளரின் பயன்பாடுகளில் பயன்படுத்த NXP தயாரிப்புகளால் ஆதரிக்கப்படும் பிற திறந்த மற்றும்/அல்லது தனியுரிம தொழில்நுட்பங்களுக்கும் வாடிக்கையாளரின் பொறுப்பு நீட்டிக்கப்படுகிறது. எந்தவொரு பாதிப்புக்கும் NXP பொறுப்பேற்காது. வாடிக்கையாளர் NXP இலிருந்து பாதுகாப்பு புதுப்பிப்புகளை தவறாமல் சரிபார்த்து, சரியான முறையில் பின்தொடர வேண்டும். வாடிக்கையாளர் உத்தேசிக்கப்பட்ட பயன்பாட்டின் விதிகள், விதிமுறைகள் மற்றும் தரநிலைகளை சிறப்பாகப் பூர்த்தி செய்யும் பாதுகாப்பு அம்சங்களைக் கொண்ட தயாரிப்புகளைத் தேர்ந்தெடுத்து, அதன் தயாரிப்புகள் தொடர்பான இறுதி வடிவமைப்பு முடிவுகளை எடுப்பார் மற்றும் அதன் தயாரிப்புகள் தொடர்பான அனைத்து சட்ட, ஒழுங்குமுறை மற்றும் பாதுகாப்பு தொடர்பான தேவைகளுக்கு இணங்குவதற்கு மட்டுமே பொறுப்பு. NXP ஆல் வழங்கப்படும் ஏதேனும் தகவல் அல்லது ஆதரவு.
NXP தயாரிப்புகளின் பாதுகாப்பு பாதிப்புகளுக்கான விசாரணை, அறிக்கை மற்றும் தீர்வு வெளியீட்டை நிர்வகிக்கும் தயாரிப்பு பாதுகாப்பு நிகழ்வு மறுமொழி குழு (PSIRT) (PSIRT@nxp.com இல் அணுகக்கூடியது) உள்ளது.
NXP BV — NXP BV ஒரு இயக்க நிறுவனம் அல்ல மேலும் அது பொருட்களை விநியோகிக்கவோ அல்லது விற்கவோ இல்லை.
வர்த்தக முத்திரைகள்
கவனிக்கவும்: அனைத்து குறிப்பிடப்பட்ட பிராண்டுகள், தயாரிப்பு பெயர்கள், சேவை பெயர்கள் மற்றும் வர்த்தக முத்திரைகள் அந்தந்த உரிமையாளர்களின் சொத்து.
என்.எக்ஸ்.பீ — wordmark மற்றும் logo NXP BV இன் வர்த்தக முத்திரைகள்
AMBA, Arm, Arm7, Arm7TDMI, Arm9, Arm11, கைவினைஞர், பிக்.லிட்டில், கார்டியோ, கோர்லிங்க், கோர்சைட், கார்டெக்ஸ், டிசைன்ஸ்டார்ட், டைனமிக், ஜாசெல், கெயில், மாலி, எம்பெட், எம்பெட் இயக்கப்பட்டது, நியான், பாப்,View, SecurCore, Socrates, Thumb, TrustZone, ULINK, ULINK2, ULINK-ME, ULINK-PLUS, ULINKpro, μVision, Versatile — இவை US மற்றும்/அல்லது ஆர்ம் லிமிடெட்டின் (அல்லது அதன் துணை நிறுவனங்கள் அல்லது துணை நிறுவனங்கள்) வர்த்தக முத்திரைகள் மற்றும்/அல்லது பதிவு செய்யப்பட்ட வர்த்தக முத்திரைகள். வேறு இடத்தில். தொடர்புடைய தொழில்நுட்பம் ஏதேனும் அல்லது அனைத்து காப்புரிமைகள், பதிப்புரிமைகள், வடிவமைப்புகள் மற்றும் வர்த்தக ரகசியங்கள் ஆகியவற்றால் பாதுகாக்கப்படலாம். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை.
- i.MX - NXP BV இன் வர்த்தக முத்திரை
- ஜே-இணைப்பு — SEGGER மைக்ரோகண்ட்ரோலர் GmbH இன் வர்த்தக முத்திரை.
Microsoft, Azure மற்றும் ThreadX - இவை மைக்ரோசாப்ட் குழும நிறுவனங்களின் வர்த்தக முத்திரைகள்.
இந்த ஆவணம் மற்றும் இங்கு விவரிக்கப்பட்டுள்ள தயாரிப்பு(கள்) தொடர்பான முக்கிய அறிவிப்புகள் 'சட்டத் தகவல்' பிரிவில் சேர்க்கப்பட்டுள்ளன என்பதை நினைவில் கொள்ளவும்.
© 2024 NXP BV
மேலும் தகவலுக்கு, தயவுசெய்து செல்க: https://www.nxp.com
- வெளியீட்டு தேதி: 19 ஏப்ரல் 2024
- ஆவண அடையாளங்காட்டி: AN14263
அடிக்கடி கேட்கப்படும் கேள்விகள்
கே: இந்த தயாரிப்பின் முக்கிய நோக்கம் என்ன?
ப: எளிய LVGL GUI உடன் AI&ML விஷன் அல்காரிதம் மாதிரியைப் பயன்படுத்தி முகம் அடையாளம் காணும் செயல்பாட்டை இயக்குவதே முக்கிய நோக்கமாகும்.ampSLN-TLHMI-IOT போர்டில் le.
கே: இந்தப் பயன்பாட்டுக் குறிப்பிலிருந்து டெவலப்பர்கள் எவ்வாறு பயனடைவார்கள்?
ப: டெவலப்பர்கள், வழங்கப்பட்ட முன்னாள் பயன்படுத்தி, கட்டமைப்பில் முகம் கண்டறிதலை எவ்வாறு படிப்படியாகச் செயல்படுத்துவது என்பதை அறியலாம்ample மற்றும் சாதன மேலாளர்கள், HAL சாதனங்கள் மற்றும் நிகழ்வு வழிமுறைகள் ஆகியவற்றைப் புரிந்து கொள்ளுங்கள்.
ஆவணங்கள் / ஆதாரங்கள்
![]() |
NXP AN14263 Framewor இல் LVGL GUI முக அங்கீகாரத்தை செயல்படுத்தவும் [pdf] பயனர் வழிகாட்டி AN14263 Framewor இல் LVGL GUI முக அங்கீகாரத்தை செயல்படுத்தவும், AN14263, Framewor இல் LVGL GUI முக அங்கீகாரம், Framewor இல் LVGL GUI முக அங்கீகாரம், Framewram இல் முக அங்கீகாரம், Framewram, அங்கீகாரம், |