សេចក្តីណែនាំអំពីឧបករណ៍បញ្ជា NFC ផ្អែកលើ NXP PN7160

ព័ត៌មានឯកសារ 

ព័ត៌មាន មាតិកា
ពាក្យគន្លឹះ PN7160, PN7220, NCI, EMVCo, វេទិកា NFC, ប្រព័ន្ធប្រតិបត្តិការ Android, NFC
អរូបី ឯកសារនេះពិពណ៌នាអំពីរបៀបច្រក PN7160/PN7220 ការចេញផ្សាយឧបករណ៍កណ្តាលទូទៅទៅ Android 14 ។

មគ្គុទេសក៍នេះផ្តល់នូវការណែនាំលម្អិតអំពីរបៀបបញ្ចូលឧបករណ៍បញ្ជា NFC ដែលមានមូលដ្ឋានលើ NXP NCI, PN7160 និង PN7220 ទៅក្នុងបរិស្ថាន Android ។ ដំណើរការនេះពាក់ព័ន្ធនឹងការដំឡើងកម្មវិធីបញ្ជាខឺណែលចាំបាច់ និងការកំណត់រចនាសម្ព័ន្ធ MW (សូមមើល [1]) ។ សម្រាប់ព័ត៌មានបន្ថែម សូមមើលទំព័រផលិតផលសម្រាប់ PN7160 [2] និង PN7220 [3] ។ គម្រោងប្រភពបើកចំហរបស់ Android (AOSP) ត្រូវបានធ្វើបច្ចុប្បន្នភាពដើម្បីបញ្ចូលការគាំទ្រសម្រាប់ទាំងឧបករណ៍បញ្ជា NFC PN7160 និង PN7220 ។

PN7220 មាននៅក្នុងការកំណត់រចនាសម្ព័ន្ធពីរ៖ ម៉ាស៊ីនតែមួយ និងម៉ាស៊ីនពីរ។ ជង់ជាទូទៅគឺដូចគ្នាសម្រាប់ទាំងពីរ។ នៅក្នុងរបៀបម៉ាស៊ីនពីរ SMCU ត្រូវបានបន្ថែមដែលមានន័យថារាល់កិច្ចការដែលទាក់ទងនឹង EMVCo ត្រូវបានប្រតិបត្តិនៅលើ SMCU ។ នៅក្នុង singlehost EMVCo ត្រូវបានប្រតិបត្តិក្នុងជង់ EMVCo MW ដែលខិតខំប្រឹងប្រែង

ជង់ Android MW

រូបភាពទី 1 បង្ហាញពីស្ថាបត្យកម្មនៃ PN7220 Android NFC stack ។

  • កម្មវិធីបញ្ជា NXP I2C គឺជាម៉ូឌុលខឺណែលដែលអនុញ្ញាតឱ្យចូលប្រើធនធានផ្នែករឹងរបស់ PN7220 ។
  • ម៉ូឌុល HAL គឺជាការអនុវត្តនៃស្រទាប់អរូបីផ្នែករឹងជាក់លាក់របស់ឧបករណ៍បញ្ជា NXP NFC ។
  • LibNfc-Nci គឺជាបណ្ណាល័យដើមដែលផ្តល់មុខងារ NFC ។
  • NFC JNI ដើរតួជាស្ពានរវាងថ្នាក់ Java និង Native ។
  • NFC និង EMVCo Framework គឺជាម៉ូឌុលនៃក្របខ័ណ្ឌកម្មវិធីដែលអនុញ្ញាតឱ្យចូលប្រើមុខងារ NFC និង EMVCo ។

រូបភាពទី 2 បង្ហាញពីស្ថាបត្យកម្មនៃជង់ PN7160 Android NFC ។ 


រូបភាពទី 2. ជង់ PN7160 Android MW 

  • កម្មវិធីបញ្ជា NXP I2C គឺជាម៉ូឌុលខឺណែលដែលអនុញ្ញាតឱ្យចូលប្រើធនធានផ្នែករឹងរបស់ PN7160 ។
  • ម៉ូឌុល HAL គឺជាការអនុវត្តនៃស្រទាប់អរូបីផ្នែករឹងជាក់លាក់របស់ឧបករណ៍បញ្ជា NXP NFC ។
  • LibNfc-nci គឺជាបណ្ណាល័យដើមដែលផ្តល់មុខងារ NFC ។
  • NFC JNI ដើរតួជាស្ពានរវាងថ្នាក់ Java និង Native ។
  • NFC គឺជាម៉ូឌុលនៃក្របខ័ណ្ឌកម្មវិធីដែលអនុញ្ញាតឱ្យចូលប្រើមុខងារ NFC ។
  • កូដប្រភព MW គឺដូចគ្នាសម្រាប់ PN7160 និង PN7220 ប៉ុន្តែមានដែនកំណត់មួយចំនួន។

តារាងទី 1 បង្ហាញពីលក្ខណៈពិសេសដែលមិនគាំទ្រនៃឧបករណ៍បញ្ជា NFC នីមួយៗ។ 

តារាងទី 1. មុខងារដែលមិនគាំទ្រ 

ឧបករណ៍បញ្ជា NFC មុខងារមិនគាំទ្រ
PN7160
  • ជង់ EMVCo MW
  • SMCU
  • មុខងារ CT
PN7220
  • NFCEE_NDEF

ចំណាំ៖ ចាប់ពី Android 14 តទៅ P2P ក៏មិនត្រូវបានគាំទ្រនៅលើ PN7160 ដែរ។

កម្មវិធីបញ្ជាខឺណែល។

ដើម្បីបង្កើតការតភ្ជាប់ជាមួយ PN7220 ឬ PN7160 ជង់ Android ប្រើកម្មវិធីបញ្ជាខឺណែល nxpnfc ។ វាអាចត្រូវបានរកឃើញនៅក្នុង [4] ។

ព័ត៌មានលម្អិតអំពីអ្នកបើកបរ

PN7220 គាំទ្រចំណុចប្រទាក់រូបវន្ត I2C ខណៈពេលដែល PN7160 គាំទ្រចំណុចប្រទាក់រូបវន្ត I2C ឬ SPI ។ នៅពេលដំឡើងទៅក្នុងខឺណែល អ្នកបើកបរត្រូវបានលាតត្រដាងតាមរយៈថ្នាំងឧបករណ៍នៅក្នុង /dev/nxpnfc ។

ចំណាំ៖ PN7160 និង PN7220 ប្រើកម្មវិធីបញ្ជាពីរផ្សេងគ្នា ការជ្រើសរើសកម្មវិធីបញ្ជាត្រឹមត្រូវគឺត្រូវបានទាមទារដោយផ្អែកលើប្រភេទបន្ទះឈីប។

ទទួលបានកូដប្រភពកម្មវិធីបញ្ជា PN7160

ចម្លងឃ្លាំងកម្មវិធីបញ្ជា nfcandroid_platform_drivers/drivers/pn7160/nfc ទៅក្នុងថតខឺណែល ដោយជំនួសការអនុវត្តដែលមានស្រាប់។ សូមមើល [4] សម្រាប់ខឺណែល។ files.

$rm -rf drivers/nfc
ក្លូន $git “https://github.com/nxp-nfc-infra/nfcandroid_platform_drivers.git” -b
br_ar_14_comm_infra_dev

វាបញ្ចប់ដោយ folder drivers/nfc ដែលមានដូចខាងក្រោម files:

  • README.md៖ ព័ត៌មានឃ្លាំង
  • ធ្វើfile៖ ក្បាលអ្នកបើកបរធ្វើឱ្យfile
  • Kconfig៖ ការកំណត់រចនាសម្ព័ន្ធកម្មវិធីបញ្ជា file
  • អាជ្ញាប័ណ្ណ៖ លក្ខខណ្ឌអាជ្ញាប័ណ្ណអ្នកបើកបរ
  • ថតរង nfc ដែលមាន៖
    • commoc.c: ការអនុវត្តកម្មវិធីបញ្ជាទូទៅ
    • common.h: និយមន័យចំណុចប្រទាក់កម្មវិធីបញ្ជាទូទៅ
    • i2c_drv.c: ការអនុវត្តកម្មវិធីបញ្ជាជាក់លាក់ i2c
    • – i2c_drv.h: i2c និយមន័យចំណុចប្រទាក់កម្មវិធីបញ្ជាជាក់លាក់
    • spi_drv.c: ការអនុវត្តកម្មវិធីបញ្ជាជាក់លាក់ spi
    • spi_drv.h៖ និយមន័យចំណុចប្រទាក់កម្មវិធីបញ្ជាជាក់លាក់ spi
    • ធ្វើfile៖ ធ្វើfile ដែលត្រូវបានរួមបញ្ចូលនៅក្នុងការបង្កើតfile របស់អ្នកបើកបរ
    • Kbuild => ស្ថាបនា file
    • Kconfig => ការកំណត់រចនាសម្ព័ន្ធកម្មវិធីបញ្ជា file
ទទួលបានកូដប្រភពកម្មវិធីបញ្ជា PN7220

ចម្លង nfcandroid_platform_drivers/drivers/pn7220cs/nfc (single-host usecase) ឬ nfcandroid_platform_ drivers/drivers/pn7220cms/nfc (dual-host usecase) ទៅក្នុង kernel directory drivers/nfc. ជំនួសកម្មវិធីបញ្ជាដែលមានស្រាប់។ សូមមើល [4] សម្រាប់ខឺណែល។ files.

$rm -rf drivers/nfc$git ក្លូន “https://github.com/nxp-nfc-infra/nfcandroid_platform_drivers.git” -bbr_ar_14_comm_infra_dev

ដោយធ្វើតាមពាក្យបញ្ជានេះ folder drivers/nfc មានដូចខាងក្រោម files:

  • README.md៖ ព័ត៌មានឃ្លាំង
  • ធ្វើfile៖ ក្បាលអ្នកបើកបរធ្វើឱ្យfile
  • Kconfig៖ ការកំណត់រចនាសម្ព័ន្ធកម្មវិធីបញ្ជា file
  • អាជ្ញាប័ណ្ណ៖ លក្ខខណ្ឌអាជ្ញាប័ណ្ណអ្នកបើកបរ
  • ថតរង nfc ដែលមាន៖
    • commoc.c: ការអនុវត្តកម្មវិធីបញ្ជាទូទៅ
    • common.h: និយមន័យចំណុចប្រទាក់កម្មវិធីបញ្ជាទូទៅ
    • i2c_drv.c: i2 c ការអនុវត្តកម្មវិធីបញ្ជាជាក់លាក់
    • i2c_drv.h: i2 c និយមន័យចំណុចប្រទាក់កម្មវិធីបញ្ជាជាក់លាក់
    • ធ្វើfile៖ ធ្វើfile ដែលត្រូវបានរួមបញ្ចូលនៅក្នុងការបង្កើតfile របស់អ្នកបើកបរ
    • Kbuild => ស្ថាបនា file
    • Kconfig => ការកំណត់រចនាសម្ព័ន្ធកម្មវិធីបញ្ជា file
ការកសាងអ្នកបើកបរ

devicetree ទទួលខុសត្រូវចំពោះការបន្ថែមកម្មវិធីបញ្ជាទៅខឺណែល ហើយផ្ទុកវានៅពេលចាប់ផ្ដើមឧបករណ៍។

បន្ទាប់ពីការអាប់ដេតការបញ្ជាក់ devicetree នោះ devicetree ដែលទាក់ទងនឹង platform ត្រូវតែត្រូវបានសាងសង់ឡើងវិញ។ NXP ណែនាំឱ្យប្រើខឺណែលកំណែ 5.10 ព្រោះវាផ្តល់សុពលភាពយ៉ាងទូលំទូលាយ។

ដើម្បីបង្កើតកម្មវិធីបញ្ជា ជំហានខាងក្រោមត្រូវធ្វើ៖

  1. ទទួលបានកម្មវិធីបញ្ជាខឺណែល។
  2. ទទួលបានកូដប្រភពសម្រាប់អ្នកបើកបរ
  3. កែប្រែនិយមន័យរបស់ devicetree ដែលមានលក្ខណៈប្លែកពីឧបករណ៍ដែលកំពុងប្រើប្រាស់។
  4. បង្កើតអ្នកបើកបរ៖

ក. តាមរយៈនីតិវិធី menuconfig បន្ថែមកម្មវិធីបញ្ជាគោលដៅទៅក្នុង build ។

បន្ទាប់ពីបង្កើតខឺណែលដែលបានបញ្ចប់ឡើងវិញ កម្មវិធីបញ្ជានឹងត្រូវបានបញ្ចូលក្នុងរូបភាពខឺណែល។ រូបភាពខឺណែលថ្មីទាំងអស់ត្រូវតែចម្លងទៅក្នុង AOSP build។

ការសម្របសម្រួល AOSP

NXP បន្ថែមការកែប្រែទៅកូដ AOSP ។ នេះមានន័យថាលេខកូដ AOSP ត្រូវបានប្រើជាមូលដ្ឋានគ្រឹះ ប៉ុន្តែត្រូវបានពង្រីកសម្រាប់លក្ខណៈពិសេសជាក់លាក់របស់ NXP ។ [5] គឺជា AOSP បច្ចុប្បន្ន tag ប្រើដោយ NXP ។ បន្ទាប់ពីទទួលបាន AOSP build លេខកូដ AOSP ដែលមានស្រាប់ត្រូវតែត្រូវបានជំនួស ហើយបំណះមួយចំនួនត្រូវតែអនុវត្ត។

ចំណាំ៖ កំណែផ្សេងគ្នានៃកូដ AOSP អាចត្រូវបានប្រើ ប៉ុន្តែការកែប្រែបន្ថែមត្រូវតែត្រូវបានអនុវត្ត។

ការបង្កើត AOSP

ទទួលបានកូដប្រភព AOSP ។

$repo init -u https://android.googlesource.com/platform/manifest -b android-14.0.0_r2 $ repo sync

ចំណាំ៖ ឧបករណ៍ repo ត្រូវតែត្រូវបានដំឡើងនៅលើប្រព័ន្ធ។ សូមមើល [6] សម្រាប់ការណែនាំ។

បង្កើតកូដប្រភព។

$cd Android_AROOT
$source build/envsetup.sh
$lunch select_target #target គឺ DH ដែលយើងចង់ប្រើសម្រាប់អតីតample: evk_8mn-userdebug
$ បង្កើត -j

ចម្លងឃ្លាំង NXP ទាំងអស់ទៅក្នុងទីតាំងគោលដៅ។

តារាង 2 ។ សាខាសម្រាប់កំណែ Android ជាក់លាក់

កំណែ Android សាខា
ប្រព័ន្ធប្រតិបត្តិការ Android 14 br_ar_14_comm_infra_dev

ចំណាំ៖ ខណៈពេលដែលក្លូនវាមានសារៈសំខាន់ក្នុងការជ្រើសរើសសាខាត្រឹមត្រូវ។

តារាងទី 3. ឃ្លាំងក្លូន

AOSP Repos NXP GitHub Repos
“$ANDROID_ROOT”/កញ្ចប់/ កម្មវិធី/Nfc https://github.com/nxp-nfc-infra/nxp_nci_hal_nfc/tree/br_ar_14_comm_infra_dev
“$ANDROID_ROOT”/system/nfc https://github.com/nxp-nfc-infra/nxp_nci_hal_libnfc-nci/tree/br_ar_14_comm_infra_dev
“$ANDROID_ROOT”/ផ្នែករឹង/ nxp/nfc https://github.com/nxp-nfc-infra/nfcandroid_nfc_hidlimpl/tree/br_ar_14_comm_infra_dev
“$ANDROID_ROOT”/vendor/nxp/ ក្របខ័ណ្ឌ https://github.com/nxp-nfc-infra/nfcandroid_frameworks/tree/br_ar_14_comm_infra_dev
“$ANDROID_ROOT”/ផ្នែករឹង/ nxp/emvco https://github.com/nxp-nfc-infra/nfcandroid_emvco_aidlimpl/tree/ br_ar_14_comm_infra_dev
“$ANDROID_ROOT” https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/tree/ br_ar_14_comm_infra_dev

តារាងទី 4. ឃ្លាំងក្លូនសម្រាប់កម្មវិធីសាកល្បង និងការគាំទ្រ TDA 

ថតឯកសារនៅក្នុង GitHub AOSP Repos NXP GitHub IC គាំទ្រ
test_apps/SMCU_Switch “$ANDROID_ROOT”/

កញ្ចប់/កម្មវិធី/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/EMVCoMode SwitchApp “$ANDROID_ROOT”/

កញ្ចប់/កម្មវិធី/Nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/Cockpit “$ANDROID_ROOT”/

ផ្នែករឹង/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/តេស្តខ្លួនឯង “$ANDROID_ROOT”/

ផ្នែករឹង/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/SelfTest_pn7160 “$ANDROID_ROOT”/

ផ្នែករឹង/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7160
test_apps/load_unload “$ANDROID_ROOT”/

ផ្នែករឹង/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/SelfTestAidl “$ANDROID_ROOT”/

ផ្នែករឹង/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
nfc_tda “$ANDROID_ROOT”/system/ https://github.com/ nxp-nfc-infra/

nfcandroid_infra_comm_libs

PN7220
emvco_tda “$ANDROID_ROOT”/

ផ្នែករឹង/nxp/emvco/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_comm_libs

PN7220
emvco_tda_test “$ANDROID_ROOT”/

ផ្នែករឹង/nxp/emvco/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_comm_libs

PN7220
NfcTdaTestApp “$ANDROID_ROOT”/

កញ្ចប់/កម្មវិធី/Nfc/

https://github.com/ nxp-nfc-infra/nfcandroid_infra_comm_libs PN7220

អនុវត្តបំណះ

តារាង 5. អនុវត្តបំណះ

ទីតាំងដែលត្រូវដាក់ពាក្យ បំណះដើម្បីអនុវត្ត ទីតាំងនៃបំណះ
“$ANDROID_ROOT”/build/ បាសែល/ AROOT_build_bazel។ បំណះ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/build/ ធ្វើ/ AROOT_build_make។ បំណះ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/build/ សូង/ AROOT_build_soong។ បំណះ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

ក្របខ័ណ្ឌ/មូលដ្ឋាន/

AROOT_frameworks_ base.patch https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

ក្របខ័ណ្ឌ/ដើម/

AROOT_frameworks_ native.patch https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

ប្រព័ន្ធ/កំណត់ហេតុ/

AROOT_system_logging ។ បំណះ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

កញ្ចប់/ម៉ូឌុល/ ប៊្លូធូស/

AROOT_packages_ modules_Bluethooth។ បំណះ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

framework/proto_logging/

AROOT_framework_ proto_logging.patch https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/

ចំណាំ៖ ពិនិត្យលទ្ធផលបន្ទាប់ពីអនុវត្តបំណះ ប្រសិនបើបញ្ហាណាមួយត្រូវបានគេសង្កេតឃើញក្នុងអំឡុងពេលបំណះ។

បន្ថែមបណ្ណាល័យ FW ។ សូមមើល [8] សម្រាប់ FW ។

ចំណាំ៖ មិនចាំបាច់ទេ។ FW អាចធ្វើបច្ចុប្បន្នភាពជានិច្ច។

សម្រាប់ PN7160៖ 

ក្លូន $git https://github.com/NXP/nfc-NXPNFCC_FW.git
$cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/64-bit/libpn7160_fw.so AROOT/អ្នកលក់/
nxp/7160/firmware/lib64/libpn7160_fw.so
$cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/32-bit/libpn7160_fw.so AROOT/អ្នកលក់/
nxp/7160/firmware/lib/libpn7160_fw.so

សម្រាប់ PN7220៖ 

ក្លូន $git https://github.com/NXP/nfc-NXPNFCC_FW.git
$cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/64-bit/libpn7220_64bit.so AROOT/vendor/nxp/
pn7220/firmware/lib64/libpn72xx_fw.so

ការបន្ថែម NFC ទៅក្នុងការបង្កើត

នៅក្នុង device.mk ធ្វើfile (សម្រាប់ឧample, device/brand/platform/device.mk), រួមបញ្ចូលការបង្កើតជាក់លាក់files:

$(ហៅមរតក-ផលិតផល, អ្នកលក់/nxp/nfc/device-nfc.mk) 

នៅក្នុង BoardConfig.mk បង្កើតfile (សម្រាប់ឧample, device/brand/platform/BoardConfig.mk), រួមបញ្ចូលការបង្កើតជាក់លាក់មួយ។file:

-រួមបញ្ចូលអ្នកលក់/nxp/nfc/BoardConfigNfc.mk 

ការបន្ថែមកម្មវិធី DTA

ក្លូន $git https://github.com/NXPNFCProject/NXPAndroidDTA.git $patch -p1 nfc-dta.patch #located in https://github.com/nxp-nfc-infra/ nfcandroid_platform_reference/tree/br_ar_14_comm_infra_dev/ build_mw_patches/db845c $ cp -r nfc-dta /system/nfc-dta $/system/nfc-dta/$ mm -j

បង្កើត AOSP ជាមួយនឹងការផ្លាស់ប្តូរ៖

$cd framework/base
$mm
$cd ../..
$cd vendor/nxp/frameworks
$mm #បន្ទាប់ពីមួយនេះ com.nxp.emvco.jar និង com.nxp.nfc.jar គួរតែស្ថិតនៅខាងក្រៅ/
គោលដៅ/ផលិតផល/xxxx/system/framwework/
$cd ../../..
$cd hardware/nxp/nfc
$mm
$cd ../../..
$ បង្កើត -j

ឥឡូវនេះ សូមបញ្ចេញពន្លឺឧបករណ៍ជាមួយនឹងរូបភាព Android ថ្មី។

កម្មវិធី Android NFC និង Lib នៅលើគោលដៅ

បន្ទាប់ពីការស្ថាបនា បណ្ណាល័យដែលបានបង្កើតត្រូវតែត្រូវបានដំឡើងនៅលើឧបករណ៍គោលដៅ។ ផ្នែកទី 4.2 បញ្ជាក់ទីតាំងគម្រោង បណ្ណាល័យដែលត្រូវគ្នា និងទីតាំងឧបករណ៍គោលដៅដែលត្រូវដំឡើង។

ចំណាំ៖ ប្រព័ន្ធគោលពីរ EMVCo អាចអនុវត្តបានតែជាមួយ PN7220 ប៉ុណ្ណោះ។

តារាងទី 6. ចងក្រង files ជាមួយនឹងគោលដៅឧបករណ៍ 

ទីតាំងគម្រោង ចងក្រង Files មតិយោបល់ ទីតាំងនៅក្នុងឧបករណ៍គោលដៅ
“$ANDROID_ROOT”/

កញ្ចប់/កម្មវិធី/Nfc

NfcNci.odex NfcNci.vdex lib/NfcNci.apk oat/libnfc_nci_jni.so   /system/app/NfcNci/ oat/arm64/

/system/app/NfcNci/ oat/arm64/

/system/app/NfcNci/

/system/lib64/

“$ANDROID_ROOT”/

ប្រព័ន្ធ/nfc

libnfc_nci.so   /system/lib64/
“$ANDROID_ROOT”/

ប្រព័ន្ធ/nfc_tda”

nfc_tda.so អនុវត្តសម្រាប់តែមុខងារ CT ប៉ុណ្ណោះ។ /system/lib64/
“$ANDROID_ROOT”/

ផ្នែករឹង/nxp/nfc

nfc_nci_nxp_pn72xx.so android.hardware.nfc_72xx@1.2-service android.hardware.nfc_72xx@1.2-service.rc android.hardware.nfc@1.0.so android.hardware.nfc@1.1.so android.hardware.nfc@1.2.so អ្នកលក់.nxp.nxpnfc@2.0.so អ្នកលក់.nxp.nxpnfc@1.0.so   /vendor/lib64

/vendor/bin/hw/

/vendor/etc/init

/system/lib64/

/system/lib64/

/system/lib64/

/អ្នកលក់/lib64/

/អ្នកលក់/lib64/

“$ANDROID_ROOT/

ផ្នែករឹង/ចំណុចប្រទាក់/nfc”

android.hardware.nfc-V1-ndk.so android.hardware.nfc@1.0.so android.hardware.nfc@1.1.so android.hardware.nfc@1.2.so android.hardware.nfc@1.0.so android.hardware.nfc@1.1.so android.hardware.nfc@1.2.so   /system\/ib64/

/system/lib64/

/system/lib64/

/system/lib64/

/អ្នកលក់/lib64/

/អ្នកលក់/lib64/

/អ្នកលក់/lib64/

“$ANDROID_ROOT”/

អ្នកលក់/nxp/frameworks

com.nxp.emvco.jar (PN7220) com.nxp.nfc.jar   / ប្រព័ន្ធ / ក្របខ័ណ្ឌ

/ ប្រព័ន្ធ / ក្របខ័ណ្ឌ

“$ANDROID_ROOT”/

ផ្នែករឹង/nxp/emvco

emvco_poller.so (PN7220) vendor.nxp.emvco-V1-ndk.so vendor.nxp.emvco-V2-ndk.so vendor.nxp.emvco-V2-ndk.so vendor.nxp.emvco-service vendor.nxp ។ emvco-service.rc   /អ្នកលក់/lib64/

/system/lib64/

/system/lib64/

/អ្នកលក់/lib64/

/vendor/bin/hw/

/អ្នកលក់/etc/init/

“$ANDROID_ROOT/

ផ្នែករឹង/nxp/emvco_tda”

emvco_tda.so អនុវត្តសម្រាប់តែមុខងារ CT ប៉ុណ្ណោះ។ /អ្នកលក់/lib64/
រារាំងការធ្វើផែនទី

ការគូសផែនទីឈ្មោះប្លុកពីផ្នែកទី 1 ទៅទីតាំងគោលដៅនៅក្នុងកូដ AOSP ។

តារាង 7. ទីតាំងបំណះនៅក្នុង NFC Stack 

ឈ្មោះប្លុក ទីតាំងនៅក្នុងលេខកូដ AOSP
NFC HAL និង EMVCo HAL ផ្នែករឹង/ចំណុចប្រទាក់/
ជង់ NFC ផ្នែករឹង/nxp/nfc/
ស្រទាប់ផ្លាស់ប្តូរទិន្នន័យ EMVCo L1 = ជង់ EMVCo ផ្នែករឹង/nxp/emvco/
LibNfc-Nci ប្រព័ន្ធ/nfc/
NFC JNI កញ្ចប់/កម្មវិធី/nfc/
សេវា NFC កញ្ចប់/កម្មវិធី/nfc/
ក្របខ័ណ្ឌ NFC ក្របខ័ណ្ឌ/មូលដ្ឋាន/
ក្របខ័ណ្ឌ EMVCo អ្នកលក់/nxp/frameworks/
EMVCo AP

ជង់ PN7220 MW ពង្រីកកូដ AOSP ជាមួយជង់ EMVCo MW ។ ផ្នែកនេះពិពណ៌នាអំពី EMVCo APIs ។

ចំណាំ៖ API អាច​ត្រូវ​បាន​ហៅ​តែ​ពេល​ប្រើ PN7220 IC ប៉ុណ្ណោះ។ ប្រសិនបើហៅវាជាមួយ PN7160 IC នោះ API មិនដំណើរការទេ។ EMVCo Profile ការរកឃើញ។ APIs ទាំងនោះអាចប្រើជាមួយ contactless និង contactless profiles.

ចុះឈ្មោះEMVCoEventListener()

  • ndk::ScopedAStatus registerEMVCoEventListener ( const std::shared_ptr< INxpEmvcoClientCallback > & in_clientCallback, bool * in_aidl_return)
  • ការពិពណ៌នា៖ ចុះឈ្មោះមុខងារហៅត្រឡប់ EMVCo ដើម្បីទទួលបានព្រឹត្តិការណ៍ពីឧបករណ៍ស្តាប់
  • ចំណាំ៖ មុខងារនេះត្រូវតែដាក់បាល់ មុនពេលហៅ api ផ្សេងទៀត។
  • ប៉ារ៉ាម៉ែត្រ៖
    • [in] *in_clientCallback៖ មាន EMVCo client HAL callback
    • [in] *in_aidl_return៖ បង្ហាញពីស្ថានភាពចុះឈ្មោះក្នុងការត្រឡប់ទៅអ្នកហៅចូល
  • ត្រឡប់មកវិញ
    • boolean ត្រឡប់ពិត ប្រសិនបើជោគជ័យ និងត្រឡប់មិនពិត ប្រសិនបើបរាជ័យក្នុងការចុះឈ្មោះ

ទទួលបានមុខងារ Discovery បច្ចុប្បន្ន () 

  • ndk::ScopedAStatus getCurrentDiscoveryMode(::aidl::vendor::nxp::emvco::NxpDiscoveryMode * _aidl_return)
  • ការពិពណ៌នា៖ ត្រឡប់ប្រូសកម្មបច្ចុប្បន្នfile ប្រភេទ។
  • ត្រឡប់មកវិញ
    • NxpDiscoveryMode – NFC/EMVCo/មិនស្គាល់

onNfcStateChange() 

  • ndk::ScopedAStatus onNfcStateChange(NxpNfcState in_nfcState)
  • ការពិពណ៌នា៖ បានធ្វើបច្ចុប្បន្នភាពស្ថានភាព NFC ទៅ EMVCo HAL ។
  • ប៉ារ៉ាម៉ែត្រ៖
    • [in] in_nfcState៖ បញ្ជាក់ស្ថានភាព NFC
  • ត្រឡប់៖
    • ទុកជាមោឃៈ

ចុះឈ្មោះNFCStateChangeCallback()

  • ndk::ScopedAStatus registerNFCStateChangeCallback ( const std::shared_ptr< ::aidl::vendor::nxp::emvco::INxpNfcStateChangeRequestCallback > & in_nfcStateChangeRequestCallback, bool * _aidl
  • ការពិពណ៌នា៖ ចុះឈ្មោះមុខងារហៅត្រឡប់ NFC ដើម្បីទទួលបានព្រឹត្តិការណ៍ពីឧបករណ៍ស្តាប់។
  • ចំណាំ៖ មុខងារនេះត្រូវតែហៅមុនពេលហៅ api ផ្សេងទៀត។
  • ប៉ារ៉ាម៉ែត្រ៖
    • [in] in_nfcStateChangeCallback: INxpNfcStateChangeRequestCallback មុខងារ callback ព្រឹត្តិការណ៍ដែលត្រូវឆ្លងកាត់ដោយអ្នកហៅចូល។ វាគួរតែអនុវត្តដើម្បីបើក/បិទ NFC ដោយផ្អែកលើសំណើដែលបានទទួល។
  • ត្រឡប់៖ boolean ត្រឡប់ពិត ប្រសិនបើជោគជ័យ និងត្រឡប់មិនពិត ប្រសិនបើបរាជ័យក្នុងការចុះឈ្មោះ។

setByteConfig()

ndk::ScopedAStatus setByteConfig ( ::aidl::vendor::nxp::emvco::NxpConfigType
in_type,
int32_t in_length,
int8_t in_value,
::aidl::vendor::nxp::emvco::NxpEmvcoStatus * _aidl_return

setEMVCoMode()

ndk::ScopedAStatus setEMVCoMode ( int8_t in_disc_mask,
bool in_isStartEMVCo )

  • ការពិពណ៌នា៖ ចាប់ផ្តើមរបៀប EMVCo ជាមួយឧបករណ៍បញ្ជាឧបករណ៍។ នៅពេលដែលបណ្តាញទិន្នន័យកម្មវិធីត្រូវបានបង្កើតឡើង កម្មវិធីអាចផ្ញើការចាប់ផ្តើមរបៀប EMVCo ជាមួយឧបករណ៍បញ្ជាឧបករណ៍។
  • ប៉ារ៉ាម៉ែត្រ៖
    • [in] in_disc_mask EMVCo៖ បច្ចេកវិទ្យាបោះឆ្នោតត្រូវបានកំណត់រចនាសម្ព័ន្ធតាមរយៈប៉ារ៉ាម៉ែត្រនេះ
    • [in]in_isStartEMVCo៖ បញ្ជាក់ដើម្បីចាប់ផ្តើម ឬបញ្ឈប់របៀប EMVCo
  • ត្រឡប់៖
    • ទុកជាមោឃៈ

setLed()

ndk::ScopedAStatus setLed ( ::aidl::vendor::nxp::emvco::NxpLedControl
in_ledControl,
::aidl::vendor::nxp::emvco::NxpEmvcoStatus * emvco_status)

សម្រាប់ទំនាក់ទំនង EMVCo APIs ខាងក្រោមអាចត្រូវបានប្រើនៅលើកំពូលនៃកម្មវិធីមុនៗ។

closeTDA()

ndk::ScopedAStatus closeTDA (int8_t in_tdaID, bool in_standBy)

  • ការពិពណ៌នា៖ បិទកាតឆ្លាតវៃដែលភ្ជាប់តាមរយៈ TDA
  • ប៉ារ៉ាម៉ែត្រ៖
    • [ក្នុង] tdaID៖ លេខសម្គាល់នៃរន្ធដោត tda ដែលត្រូវបិទ
  • ករណីលើកលែង៖
    • EMVCO_STATUS_INVALID_PARAMETER ប្រសិនបើបានផ្តល់ tdaID មិនត្រឹមត្រូវ
    • EMVCO_STATUS_FEATURE_NOT_SUPPORTED នៅពេលដែលមុខងារកាតទំនាក់ទំនងមិនត្រូវបានគាំទ្រ។
  • ត្រឡប់៖
    • ទុកជាមោឃៈ

រកឃើញTDA()

ndk::ScopedAStatus discoverTDA
( std::vector<::aidl::vendor::nxp::emvco::NxpEmvcoTDAIInfo > * emvcoTDAIinfo )

ការពិពណ៌នា៖ discoverTDA ផ្តល់ព័ត៌មានលម្អិតទាំងអស់នៃកាតឆ្លាតវៃដែលភ្ជាប់តាមរយៈ TDA

  • ប៉ារ៉ាម៉ែត្រ៖
    • [in]*in_clientCallback៖ ផ្តល់ស្ថានភាព EMVCo និង TDA ជាការហៅត្រឡប់មកវិញ
  • ករណីលើកលែង៖
    •  EMVCO_STATUS_FEATURE_NOT_SUPPORTED នៅពេលដែលមុខងារកាតទំនាក់ទំនងមិនត្រូវបានគាំទ្រ។
  • ត្រឡប់៖
    • NxpEmvcoTDAinfo[] ត្រឡប់កាតឆ្លាតវៃទាំងអស់ដែលបានភ្ជាប់តាមរយៈ TDA ។ emvcoTDAIInfo ត្រឹមត្រូវត្រូវបានទទួលតែនៅពេលដែលស្ថានភាពគឺ EMVCO_STATUS_OK ប៉ុណ្ណោះ។

openTDA()

ndk::ScopedAStatus openTDA (int8_t in_tdaID, bool in_standBy, int8_t * out_connID)

ការពិពណ៌នា៖ បើកកាតឆ្លាតវៃដែលភ្ជាប់តាមរយៈ TDA

  • ប៉ារ៉ាម៉ែត្រ៖
    • [in]tdaID៖ tda id នៃ smart card ដែលបានទទួលតាមរយៈ discoverTDA
  • ករណីលើកលែង៖
    • EMVCO_STATUS_INVALID_PARAMETER ប្រសិនបើបានផ្តល់ tdaID មិនត្រឹមត្រូវ
    • EMVCO_STATUS_FEATURE_NOT_SUPPORTED នៅពេលដែលមុខងារកាតទំនាក់ទំនងមិនត្រូវបានគាំទ្រ។
  • ត្រឡប់៖
    • byte ត្រឡប់លេខសម្គាល់ការតភ្ជាប់នៃកាតឆ្លាតវៃ។ លេខសម្គាល់ការតភ្ជាប់ត្រឹមត្រូវបានទទួលតែនៅពេលដែលស្ថានភាពគឺ EMVCO_STATUS_OK

ចុះឈ្មោះEMVCoCTListener() 

ndk::ScopedAStatus registerEMVCoCTListener ( const std::shared_ptr<::aidl::vendor::nxp::emvco::INxpEmvcoTDACallback > & in_in_clientCallback, bool * _aidl_return)

  • ការពិពណ៌នា៖ ចុះឈ្មោះ EMVCoCT ហៅត្រឡប់ទៅជង់ EMVCo
  • ប៉ារ៉ាម៉ែត្រ៖
    • [in]*in_in_clientCallback៖ ផ្តល់ស្ថានភាព EMVCo និង TDA ជាការហៅត្រឡប់មកវិញ
  • ត្រឡប់៖
    • ទុកជាមោឃៈ 

transceive() 

ndk::ScopedAStatus transceive ( const std::vector< uint8_t > & in_cmd_data, std::vector< uint8_t > * out_rsp_data )

  • ការពិពណ៌នា៖ ផ្ញើទិន្នន័យកម្មវិធីជាមួយឧបករណ៍បញ្ជាឧបករណ៍ និងទទួលទិន្នន័យឆ្លើយតបពីឧបករណ៍បញ្ជា
  • ចំណាំ៖ លេខសម្គាល់ការតភ្ជាប់នៃ TDA គួរតែត្រូវបានបន្ថែមជាផ្នែកមួយនៃបឋមកថា NCI ។
  • ប៉ារ៉ាម៉ែត្រ៖
    • [in]in_cmd_data៖ សតិបណ្ដោះអាសន្នទិន្នន័យពាក្យបញ្ជាកម្មវិធី
  • ករណីលើកលែង៖
    • EMVCO_STATUS_INVALID_PARAMETER ប្រសិនបើលេខសម្គាល់ការតភ្ជាប់ដែលបានផ្តល់មិនត្រឹមត្រូវ
    • EMVCO_STATUS_FEATURE_NOT_SUPPORTED នៅពេលដែលមុខងារកាតទំនាក់ទំនងមិនត្រូវបានគាំទ្រ។
  • ត្រឡប់៖
    • ការឆ្លើយតប APDU បានទទួលពីឧបករណ៍បញ្ជា។ ការឆ្លើយតបត្រឹមត្រូវ APDU បានទទួលតែនៅពេលដែលស្ថានភាពគឺ EMVCO_STATUS_OK ប៉ុណ្ណោះ។

សម្រាប់ EMVCo contactless APIs ខាងក្រោមអាចត្រូវបានគេហៅថា៖

ចុះឈ្មោះEMVCoEventListener()

ndk::ScopedAStatus registerEMVCoEventListener ( const std::shared_ptr< INxpEmvcoClientCallback > & in_clientCallback, bool * _aidl_return )

  • ការពិពណ៌នា៖ ចុះឈ្មោះមុខងារហៅត្រឡប់ EMVCo ដើម្បីទទួលបានព្រឹត្តិការណ៍ពីឧបករណ៍ស្តាប់។
  • ចំណាំ៖ មុខងារនេះត្រូវតែហៅមុនពេលហៅ api ផ្សេងទៀត។
  • ប៉ារ៉ាម៉ែត្រ៖
    • [in]*in_clientCallback៖ មាន EMVCo client HAL callback
    • [in]*in_aidl_return៖ បង្ហាញ​ពី​ស្ថានភាព​ចុះឈ្មោះ​ត្រឡប់​ទៅ​អ្នក​ហៅ​ទូរសព្ទ
  • ត្រឡប់៖
    • boolean ត្រឡប់ពិត ប្រសិនបើជោគជ័យ និងត្រឡប់មិនពិត ប្រសិនបើបរាជ័យក្នុងការចុះឈ្មោះ

setEMVCoMode()

ndk::ScopedAStatus setEMVCoMode ( int8_t in_config, bool in_isStartEMVCo )

  • ការពិពណ៌នា៖ ចាប់ផ្តើមរបៀប EMVCo ជាមួយឧបករណ៍បញ្ជាឧបករណ៍។ នៅពេលដែលបណ្តាញទិន្នន័យកម្មវិធីត្រូវបានបង្កើតឡើង កម្មវិធីអាចផ្ញើការចាប់ផ្តើមរបៀប EMVCo ជាមួយឧបករណ៍បញ្ជាឧបករណ៍។
  • ប៉ារ៉ាម៉ែត្រ៖
    • [in]in_config៖ បច្ចេកវិទ្យាបោះឆ្នោត EMVCo ត្រូវបានកំណត់រចនាសម្ព័ន្ធតាមរយៈប៉ារ៉ាម៉ែត្រនេះ
    • [in]in_isStartEMVCo៖ បញ្ជាក់ដើម្បីចាប់ផ្តើម ឬបញ្ឈប់របៀប EMVCo
  • ត្រឡប់៖
    • ទុកជាមោឃៈ

StopRFDisovery()

ndk::ScopedAStatus stopRFDisovery
( ::aidl::vendor::nxp::emvco::NxpDeactivationType in_deactivationType, ::aidl::vendor::nxp::emvco::NxpEmvcoStatus * emvco_status )

  • ការពិពណ៌នា៖ បញ្ឈប់វាល RF ហើយផ្លាស់ទីទៅក្នុងស្ថានភាពបិទដំណើរការដែលបានបញ្ជាក់។
  • ប៉ារ៉ាម៉ែត្រ៖
    • [in]in_deactivationType៖ បញ្ជាក់​ស្ថានភាព​ដែល​នឹង​ស្ថិត​នៅ​ក្រោយ​ការ​បិទ RF
  • ត្រឡប់៖
    • NxpEmvcoStatus ត្រឡប់ EMVCO_STATUS_OK ប្រសិនបើពាក្យបញ្ជាដំណើរការដោយជោគជ័យ ហើយត្រឡប់ EMVCO_STATUS_FAILED ប្រសិនបើពាក្យបញ្ជាមិនត្រូវបានដំណើរការដោយសារស្ថានភាពមិនត្រឹមត្រូវ។ របៀប EMVCo គួរតែបើក ដើម្បីហៅ API នេះ។

transceive()

ndk::ScopedAStatus transceive ( const std::vector< uint8_t > & in_data, int32_t * _aidl_return )

  • ការពិពណ៌នា៖ ផ្ញើទិន្នន័យកម្មវិធីជាមួយឧបករណ៍បញ្ជាឧបករណ៍។
  • ចំណាំ៖ ក្នុង​ករណី​ប្រសិនបើ​ការ​ផ្ញើ​ទិន្នន័យ​ត្រូវ​បាន​បរាជ័យ កម្មវិធី​នឹង​ហៅ​ម្តងទៀត open() មុនពេល​ហៅ API នេះ។
  • ប៉ារ៉ាម៉ែត្រ៖
    • (in]in_data៖ សតិបណ្ដោះអាសន្នទិន្នន័យកម្មវិធី
  • ត្រឡប់៖
    • NxpEmvcoStatus បង្ហាញពីស្ថានភាពប្រតិបត្តិ
ការកំណត់រចនាសម្ព័ន្ធ files PN7160

សម្រាប់ PN7160 មានការកំណត់ពីរផ្សេងគ្នា files.

  1. libnfc-nci.conf
  2. libnfc-nxp.conf

ចំណាំ៖ ការកំណត់រចនាសម្ព័ន្ធ files ដែលផ្តល់ដោយ NXP គឺឧamples ទាក់ទងនឹងបន្ទះបង្ហាញឧបករណ៍បញ្ជា NFC ។ ទាំងនេះ files ត្រូវតែត្រូវបានអនុម័តដោយយោងទៅតាមការរួមបញ្ចូលគោលដៅ។

ការកំណត់រចនាសម្ព័ន្ធ files ត្រូវតែដាក់នៅក្នុងទីតាំងគោលដៅ (សូមមើលតារាងទី 8) ។

តារាងទី 8. ទីតាំងនៃការកំណត់រចនាសម្ព័ន្ធ files 

ឈ្មោះនៃការកំណត់រចនាសម្ព័ន្ធ file ទីតាំងនៅក្នុងឧបករណ៍
libnfc-nci.conf ប្រព័ន្ធ / ល
libnfc-nxp.conf អ្នកលក់/ល។

ដើម្បីទទួលបានព័ត៌មានបន្ថែមអំពីការកំណត់រចនាសម្ព័ន្ធ files សូមមើល [9] ។

ការកំណត់រចនាសម្ព័ន្ធ files PN7220

សម្រាប់ PN7220 មានការកំណត់រចនាសម្ព័ន្ធប្រាំផ្សេងគ្នា files.

  1. libemvco-nxp.conf
  2. libnfc-nci.conf
  3. libnfc-nxp.conf
  4. libnfc-nxp-eeprom.conf
  5. libnfc-nxp-rfExt.conf

ចំណាំ៖ ការកំណត់រចនាសម្ព័ន្ធ files ដែលផ្តល់ដោយ NXP គឺឧamples ទាក់ទងនឹងបន្ទះបង្ហាញឧបករណ៍បញ្ជា NFC ។ ទាំងនេះ files ត្រូវតែត្រូវបានអនុម័តដោយយោងទៅតាមការរួមបញ្ចូលគោលដៅ

ការកំណត់រចនាសម្ព័ន្ធ files ចាំបាច់ត្រូវដាក់នៅទីតាំងគោលដៅ (សូមមើលតារាងទី 9) ។

តារាងទី 9. ទីតាំងនៃការកំណត់រចនាសម្ព័ន្ធ files 

ឈ្មោះនៃការកំណត់រចនាសម្ព័ន្ធ file ទីតាំងនៅក្នុងឧបករណ៍
libemvco-nxp.conf អ្នកលក់/ល។
libnfc-nci.conf ប្រព័ន្ធ / ល
libnfc-nxp.conf អ្នកលក់/ល។
libnfc-nxp-eeprom.conf អ្នកលក់/ល។
libnfc-nxprfExt.conf អ្នកលក់/ល។

ដើម្បីទទួលបានព័ត៌មានបន្ថែមអំពីការកំណត់រចនាសម្ព័ន្ធ files សូមមើល [9] ។ 

កម្មវិធី DTA

ដើម្បីអនុញ្ញាតឱ្យធ្វើតេស្តវិញ្ញាបនប័ត្រវេទិកា NFC កម្មវិធីសាកល្បងឧបករណ៍ត្រូវបានផ្តល់ជូន។ វាត្រូវបានផ្សំឡើងដោយសមាសធាតុជាច្រើននៅក្នុងស្រទាប់ Android ផ្សេងៗគ្នា ដែលត្រូវតែបង្កើត និងរួមបញ្ចូលនៅក្នុងរូបភាព Android ។

ដើម្បីជំរុញកម្មវិធី DTA ជំហានខាងក្រោមត្រូវតែអនុវត្ត៖

  1. ចម្លង DTA ទាំងអស់។ files ទៅទីតាំងមួយ។
    $cp -rf “out/target/product/hikey960/system/lib64/libosal.so” /DTA-PN7220
    $cp -rf “out/target/product/hikey960/system/lib64/libmwif.so” /DTA-PN7220
    $cp -rf “out/target/product/hikey960/system/lib64/libdta.so” /DTA-PN7220
    $cp -rf “out/target/product/hikey960/system/lib64/libdta_jni.so” /DTA-PN7220
    $cp -rf “out/target/product/hikey960/system/app/NxpDTA/NxpDTA.apk” /DTAPN7220
  2. រុញប្រព័ន្ធគោលពីរទៅឧបករណ៍ដូចខាងក្រោម
    adb shell mkdir /system/app/NxpDTA/
    adb push libosal.so /system/lib64/
    adb push libdta.so /system/lib64/
    adb push libdta_jni.so /system/lib64/
    adb push libmwif.so /system/lib64/
    adb ជំរុញ NxpDTA.apk /system/app/NxpDTA/

បន្ទាប់ពីបង្ហាញគោលដៅ កម្មវិធី DTA គួរតែមានវត្តមាននៅក្នុងបញ្ជីកម្មវិធីដែលបានដំឡើង។ សូមមើល [7] សម្រាប់ការពិពណ៌នាលម្អិតអំពីរបៀបប្រើកម្មវិធី។

អក្សរកាត់

តារាង 10. អក្សរកាត់ 

អក្សរកាត់ ការពិពណ៌នា
APDU ឯកតាទិន្នន័យពិធីការកម្មវិធី
AOSP គម្រោងប្រភពបើកចំហរបស់ Android
DH ម៉ាស៊ីនឧបករណ៍
ហាល ស្រទាប់អរូបីផ្នែករឹង
FW កម្មវិធីបង្កប់
I2C សៀគ្វីរួមបញ្ចូលគ្នាអន្តរ
LPCD ការរកឃើញកាតដែលមានថាមពលទាប
NCI ចំណុចប្រទាក់ឧបករណ៍បញ្ជា NFC
ប្រព័ន្ធ NFC នៅ​ជិត​វាល​គមនាគមន៍
MW ឧបករណ៍កណ្តាល
PLL រង្វិលជុំចាក់សោដំណាក់កាល
P2P peer to peer
RF ប្រេកង់វិទ្យុ
អេសឌីអេ ទិន្នន័យសៀរៀល
SMCU microcontroller សុវត្ថិភាព
SW កម្មវិធី

ឯកសារយោង

  1. ឃ្លាំង GitHub - PN7160 និង PN7220 MW ទូទៅ៖ (តំណ)
  2. Web ទំព័រ – PN7160 – ឧបករណ៍បញ្ជា NFC Plug and Play ជាមួយនឹងកម្មវិធីបង្កប់រួមបញ្ចូលគ្នា និងចំណុចប្រទាក់ NCI (តំណ)
  3. Web ទំព័រ – PN7220 – EMV L1 អនុលោមតាមឧបករណ៍បញ្ជា NFC ជាមួយនឹងចំណុចប្រទាក់ NCI គាំទ្រ EMV និងកម្មវិធីវេទិកា NFC (តំណ)
  4. ឃ្លាំង GitHub - កម្មវិធីបញ្ជាខឺណែល PN7160 និង PN7220៖ (តំណ)
  5. ធនធាន – AOSP r2 tag (តំណ)
  6. ធនធាន - ឧបករណ៍ត្រួតពិនិត្យប្រភព (តំណ)
  7. ការណែនាំអ្នកប្រើប្រាស់ – UG10068 – PN7220 – ការណែនាំអំពីការចាប់ផ្តើមរហ័ស (តំណ)
  8. ឃ្លាំង GitHub – PN7160 និង PN7220 FW ទីតាំង៖ (តំណ)
  9. កំណត់ចំណាំកម្មវិធី - ការកំណត់រចនាសម្ព័ន្ធ AN14431 - PN7160/PN7220 files (តំណ)

ចំណាំអំពីកូដប្រភពនៅក្នុងឯកសារ

Example កូដដែលបង្ហាញក្នុងឯកសារនេះមានសិទ្ធិរក្សាសិទ្ធិ និង BSD-3-Clause ដូចខាងក្រោម៖

រក្សាសិទ្ធិ 2024 NXP ការចែកចាយឡើងវិញ និងការប្រើប្រាស់ក្នុងទម្រង់ប្រភព និងប្រព័ន្ធគោលពីរ ដោយមានឬគ្មានការកែប្រែ ត្រូវបានអនុញ្ញាត ផ្តល់ថាលក្ខខណ្ឌខាងក្រោមត្រូវបានបំពេញ

  1. ការចែកចាយឡើងវិញនៃកូដប្រភពត្រូវតែរក្សាការជូនដំណឹងអំពីការរក្សាសិទ្ធិខាងលើ បញ្ជីលក្ខខណ្ឌ និងការបដិសេធខាងក្រោម។
  2. ការចែកចាយឡើងវិញក្នុងទម្រង់គោលពីរត្រូវតែបង្កើតឡើងវិញនូវការជូនដំណឹងអំពីការរក្សាសិទ្ធិខាងលើ បញ្ជីនៃលក្ខខណ្ឌ និងការមិនទទួលខុសត្រូវខាងក្រោមនៅក្នុងឯកសារ និង/ឬសម្ភារៈផ្សេងទៀតត្រូវតែផ្តល់ជូនជាមួយនឹងការចែកចាយ។
  3. ទាំងឈ្មោះនៃម្ចាស់កម្មសិទ្ធិបញ្ញា ឬឈ្មោះអ្នករួមចំណែករបស់វាមិនអាចត្រូវបានប្រើដើម្បីគាំទ្រ ឬផ្សព្វផ្សាយផលិតផលដែលទទួលបានពីកម្មវិធីនេះដោយគ្មានការអនុញ្ញាតជាលាយលក្ខណ៍អក្សរជាមុនជាក់លាក់ណាមួយឡើយ។

កម្មវិធីនេះត្រូវបានផ្តល់ដោយអ្នកកាន់កាប់សិទ្ធិអ្នកនិពន្ធ និងអ្នករួមវិភាគទាន "ដូចដែលមាន" និងការធានាណាមួយដែលបញ្ជាក់ ឬដោយប្រយោល រួមទាំង ប៉ុន្តែមិនកំណត់ចំពោះ ការធានាដោយអត្ថន័យនៃទំនិញគ្រប់គ្រាន់ ត្រូវបានបដិសេធ។ ក្នុងករណីណាក៏ដោយ អ្នកកាន់កាប់សិទ្ធិថតចម្លង ឬអ្នករួមចំណែកត្រូវទទួលខុសត្រូវចំពោះការខូចខាតដោយផ្ទាល់ ប្រយោល ចៃដន្យ ពិសេស គំរូ ឬការខូចខាតជាលទ្ធផល (រួមទាំង ប៉ុន្តែមិនកំណត់ចំពោះផ្នែករដ្ឋបាល សេវាកម្ម ការបាត់បង់ការប្រើប្រាស់ ទិន្នន័យ ឬប្រាក់ចំណេញ ឬការរំខានអាជីវកម្ម) ទោះជាបណ្តាលមកពី និងលើទ្រឹស្ដីទំនួលខុសត្រូវណាមួយ ទោះជាក្នុងកិច្ចសន្យា ទំនួលខុសត្រូវយ៉ាងតឹងរ៉ឹង ឬការបង្ខិតបង្ខំ (រួមទាំងការបិទសិទ្ធិប្រើប្រាស់)។ ការ​ប្រើ​ប្រាស់​កម្មវិធី​នេះ ទោះ​បី​ជា​មាន​ការ​ណែនាំ​អំពី​លទ្ធភាព​នៃ​ការ​ខូច​ខាត​បែប​នេះ​ក៏​ដោយ។

ប្រវត្តិនៃការពិនិត្យឡើងវិញ

តារាង 11. ប្រវត្តិនៃការពិនិត្យឡើងវិញ 

លេខសម្គាល់ឯកសារ កាលបរិច្ឆេទចេញផ្សាយ ការពិពណ៌នា
AN14430 v.1.0 ថ្ងៃទី 03 ខែកញ្ញាឆ្នាំ 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/លក្ខខណ្ឌ លុះត្រាតែមានការយល់ព្រមផ្សេងពីនេះក្នុងកិច្ចព្រមព្រៀងបុគ្គលដែលមានសុពលភាព។ ក្នុងករណីកិច្ចព្រមព្រៀងបុគ្គលត្រូវបានបញ្ចប់ មានតែលក្ខខណ្ឌនៃកិច្ចព្រមព្រៀងរៀងៗខ្លួនប៉ុណ្ណោះដែលត្រូវអនុវត្ត។ NXP Semiconductors សម្តែងការជំទាស់ចំពោះការអនុវត្តលក្ខខណ្ឌទូទៅរបស់អតិថិជនទាក់ទងនឹងការទិញផលិតផល NXP Semiconductors ដោយអតិថិជន។

ការត្រួតពិនិត្យការនាំចេញ - ឯកសារនេះក៏ដូចជាធាតុដែលបានពិពណ៌នានៅទីនេះអាចជាកម្មវត្ថុនៃបទប្បញ្ញត្តិត្រួតពិនិត្យការនាំចេញ។ ការនាំចេញអាចទាមទារការអនុញ្ញាតជាមុនពីអាជ្ញាធរមានសមត្ថកិច្ច។

ភាពស័ក្តិសមសម្រាប់ការប្រើប្រាស់នៅក្នុងផលិតផលដែលមិនមានគុណភាពសម្រាប់រថយន្ត — លុះត្រាតែឯកសារនេះបញ្ជាក់យ៉ាងច្បាស់ថាផលិតផល NXP Semiconductors ជាក់លាក់នេះមានលក្ខណៈសម្បត្តិគ្រប់គ្រាន់សម្រាប់យានយន្តនោះ ផលិតផលនេះមិនស័ក្តិសមសម្រាប់ការប្រើប្រាស់រថយន្តទេ។ វាមិនមានលក្ខណៈសម្បត្តិគ្រប់គ្រាន់ ឬត្រូវបានសាកល្បងដោយអនុលោមតាមការធ្វើតេស្តរថយន្ត ឬតម្រូវការកម្មវិធី NXP Semiconductors មិនទទួលខុសត្រូវចំពោះការរួមបញ្ចូល និង/ឬការប្រើប្រាស់ផលិតផលដែលមិនមានគុណភាពសម្រាប់រថយន្តនៅក្នុងឧបករណ៍ ឬកម្មវិធីរថយន្ត។

ក្នុងករណីដែលអតិថិជនប្រើប្រាស់ផលិតផលសម្រាប់ការរចនា និងប្រើប្រាស់ក្នុងកម្មវិធីរថយន្តទៅនឹងលក្ខណៈបច្ចេកទេស និងស្តង់ដាររថយន្ត អតិថិជន (ក) ត្រូវប្រើប្រាស់ផលិតផលដោយគ្មានការធានារបស់ NXP Semiconductors នៃផលិតផលសម្រាប់កម្មវិធីរថយន្ត ការប្រើប្រាស់ និងលក្ខណៈបច្ចេកទេស និង ( ខ) រាល់ពេលដែលអតិថិជនប្រើប្រាស់ផលិតផលសម្រាប់កម្មវិធីរថយន្តលើសពីលក្ខណៈបច្ចេកទេសរបស់ NXP Semiconductors ការប្រើប្រាស់បែបនេះត្រូវប្រឈមមុខនឹងហានិភ័យផ្ទាល់របស់អតិថិជន ហើយ (គ) អតិថិជននឹងសងសំណងទាំងស្រុងនូវ NXP Semiconductors សម្រាប់ការទទួលខុសត្រូវ ការខូចខាត ឬការទាមទារផលិតផលដែលបរាជ័យដែលបណ្តាលមកពីការរចនា និងការប្រើប្រាស់របស់អតិថិជន។ ផលិតផលសម្រាប់កម្មវិធីរថយន្តលើសពីការធានាស្តង់ដាររបស់ NXP Semiconductors និងផលិតផលជាក់លាក់របស់ NXP Semiconductors

ការបោះពុម្ព HTML - កំណែ HTML នៃឯកសារនេះត្រូវបានផ្តល់ជូនជាការគួរសម។ ព័ត៌មានច្បាស់លាស់មាននៅក្នុងឯកសារដែលអាចអនុវត្តបានជាទម្រង់ PDF ។ ប្រសិនបើមានភាពមិនស្របគ្នារវាងឯកសារ HTML និងឯកសារ PDF នោះឯកសារ PDF មានអាទិភាព។

ការបកប្រែ - កំណែដែលមិនមែនជាភាសាអង់គ្លេស (បកប្រែ) នៃឯកសារ រួមទាំងព័ត៌មានផ្លូវច្បាប់នៅក្នុងឯកសារនោះ គឺសម្រាប់ជាឯកសារយោងតែប៉ុណ្ណោះ។ កំណែជាភាសាអង់គ្លេសនឹងមានសុពលភាពក្នុងករណីមានភាពខុសគ្នារវាងកំណែដែលបានបកប្រែ និងភាសាអង់គ្លេស។

សុវត្ថិភាព - អតិថិជនយល់ថាផលិតផល NXP ទាំងអស់អាចទទួលរងនូវភាពងាយរងគ្រោះដែលមិនស្គាល់អត្តសញ្ញាណ ឬអាចគាំទ្រស្តង់ដារសុវត្ថិភាពដែលបានបង្កើតឡើង ឬជាក់លាក់ជាមួយនឹងដែនកំណត់ដែលគេស្គាល់។ អតិថិជនទទួលខុសត្រូវចំពោះការរចនា និងប្រតិបត្តិការនៃកម្មវិធី និងផលិតផលរបស់ខ្លួនពេញមួយវដ្តជីវិតរបស់ពួកគេ ដើម្បីកាត់បន្ថយឥទ្ធិពលនៃភាពងាយរងគ្រោះទាំងនេះលើកម្មវិធី និងផលិតផលរបស់អតិថិជន។ ទំនួលខុសត្រូវរបស់អតិថិជនក៏ពង្រីកដល់បច្ចេកវិទ្យាបើកចំហ និង/ឬកម្មសិទ្ធិផ្សេងទៀតដែលគាំទ្រដោយផលិតផល NXP សម្រាប់ប្រើប្រាស់ក្នុងកម្មវិធីរបស់អតិថិជន។ NXP មិនទទួលខុសត្រូវចំពោះភាពងាយរងគ្រោះណាមួយឡើយ។ អតិថិជនគួរតែពិនិត្យមើលការអាប់ដេតសុវត្ថិភាពពី NXP ជាទៀងទាត់ ហើយតាមដានដោយសមរម្យ។ អតិថិជនត្រូវជ្រើសរើសផលិតផលដែលមានលក្ខណៈពិសេសសុវត្ថិភាពដែលសមស្របបំផុតនឹងច្បាប់ បទប្បញ្ញត្តិ និងស្តង់ដារនៃកម្មវិធីដែលមានបំណង ហើយធ្វើការសម្រេចចិត្តរចនាចុងក្រោយទាក់ទងនឹងផលិតផលរបស់ខ្លួន ហើយទទួលខុសត្រូវទាំងស្រុងចំពោះការអនុលោមតាមតម្រូវការច្បាប់ និយតកម្ម និងសុវត្ថិភាពទាំងអស់ទាក់ទងនឹងផលិតផលរបស់ខ្លួន ដោយមិនគិតពី នៃព័ត៌មាន ឬជំនួយដែលអាចត្រូវបានផ្តល់ដោយ NXP ។

NXP មានក្រុមឆ្លើយតបឧប្បត្តិហេតុសុវត្ថិភាពផលិតផល (PSIRT) (អាចទាក់ទងបាននៅ PSIRT@nxp.com) ដែលគ្រប់គ្រងការស៊ើបអង្កេត ការរាយការណ៍ និងការចេញផ្សាយដំណោះស្រាយចំពោះភាពងាយរងគ្រោះផ្នែកសុវត្ថិភាពនៃផលិតផល NXP ។

NXP B.V. — NXP B.V. មិនមែនជាក្រុមហ៊ុនប្រតិបត្តិការទេ ហើយវាមិនចែកចាយ ឬលក់ផលិតផលទេ។

អាជ្ញាប័ណ្ណ

ការទិញ NXP ICs ជាមួយបច្ចេកវិទ្យា NFC — ការទិញ IC NXP Semiconductors IC ដែលអនុលោមតាមស្តង់ដារ Near Field Communication (NFC) មួយក្នុងចំណោមស្តង់ដារ ISO/IEC 18092 និង ISO/IEC 21481 មិនបង្ហាញពីអាជ្ញាប័ណ្ណដែលបង្កប់ក្រោមសិទ្ធិប៉ាតង់ណាមួយដែលត្រូវបានរំលោភបំពានដោយការអនុវត្ត ណាមួយនៃស្តង់ដារទាំងនោះ។ ការទិញ NXP Semiconductors IC មិនរួមបញ្ចូលអាជ្ញាប័ណ្ណចំពោះប៉ាតង់ NXP ណាមួយ (ឬសិទ្ធិ IP ផ្សេងទៀត) ដែលគ្របដណ្តប់ការបញ្ចូលគ្នានៃផលិតផលទាំងនោះជាមួយផលិតផលផ្សេងទៀត មិនថាផ្នែករឹង ឬផ្នែកទន់នោះទេ។

ពាណិជ្ជសញ្ញា

សេចក្តីជូនដំណឹង៖ ម៉ាកដែលបានយោងទាំងអស់ ឈ្មោះផលិតផល ឈ្មោះសេវាកម្ម និងពាណិជ្ជសញ្ញា គឺជាកម្មសិទ្ធិរបស់ម្ចាស់រៀងៗខ្លួន។ NXP — និមិត្តសញ្ញាពាក្យ និងនិមិត្តសញ្ញាគឺជាពាណិជ្ជសញ្ញារបស់ NXP BV I2C-bus — និមិត្តសញ្ញាគឺជាពាណិជ្ជសញ្ញារបស់ NXP BV

សូមជ្រាបថា ការជូនដំណឹងសំខាន់ៗទាក់ទងនឹងឯកសារនេះ និងផលិតផលដែលបានពិពណ៌នានៅទីនេះ ត្រូវបានដាក់បញ្ចូលក្នុងផ្នែក 'ព័ត៌មានផ្លូវច្បាប់'។

© 2024 NXP BV រក្សាសិទ្ធិគ្រប់យ៉ាង។
សម្រាប់ព័ត៌មានបន្ថែម សូមចូលទៅកាន់៖ https://www.nxp.com

 

ឯកសារ/ធនធាន

ឧបករណ៍បញ្ជា NFC ផ្អែកលើ NXP PN7160 NCI [pdf] សេចក្តីណែនាំ
PN7160, PN7220, PN7160 ឧបករណ៍បញ្ជា NFC ផ្អែកលើ NCI, PN7160, ឧបករណ៍បញ្ជា NFC ផ្អែកលើ NCI, ឧបករណ៍បញ្ជា NFC ដែលមានមូលដ្ឋាន, ឧបករណ៍បញ្ជា NFC, ឧបករណ៍បញ្ជា

ឯកសារយោង

ទុកមតិយោបល់

អាសយដ្ឋានអ៊ីមែលរបស់អ្នកនឹងមិនត្រូវបានផ្សព្វផ្សាយទេ។ វាលដែលត្រូវការត្រូវបានសម្គាល់ *