NXP NCF3321 卡保護應用示例講解

一 、前言

NCF3321 是世平集團代理的 NXP 所研發的新一代車規級 NFC 前端 IC,相比上代 NFC 前端 IC 性能提升巨大、支持多類型多協議卡檢測、支持手機模擬 NFC 識別、支持手機與卡共同檢測、寬範圍工作溫度工作更加穩定。

NCF3321是一款高度集成的高性能、完全符合 NFC 論壇標準的 13.56 MHz 非接觸式通信前端 IC,它採用了出色的調製和解調概念,完全集成了不同類型的非接觸式通信方法和協議。NCF3321可確保與下一代 NFC 手機的最大互操作性。NCF3321 針對門把手應用進行了優化,並實現了具有超低功耗卡檢測的大功率發射器功能。

S32K144 是恩智浦(NXP)公司於 2017 推出面向通用汽車應用市場的高性能微處理器,該微處理器基於 32位 ARM Cortex-M4F 內核,最快內核頻率達 112MHz。NXP Echoes-S32K144評估板採用 14×14mm LQFP100 封裝,引腳間距 0.5mm,具有豐富的外設資源。該方案支持 JTAG 標準調試接口和 JTAG 4 線 SWD 調試模式,具有 micro USB 或外部 12V 電源兩種供電選擇,板載 CAN、LIN 與 UART 連接。

本文將從關鍵環境搭建、模擬檢測、識別算法、工程配置和調試演示等方面講解 S32K144 搭配 NCF3321 卡保護示例工程。


二、相關組件

2.1 必備組件

硬體組件:

  • S32K144 EVB
  • NCF3321 Demo

軟體組件:

  • 編譯器:GCC ARM Embedded 6.3.1 20170509
  • IDE:S32 Design Studio for ARM 2018.R1
  • 配置工具:EB Tresos Studio v24.0.1 b180321-0610
  • 用於 AUTOSAR、AnfcRL 的汽車 NFC 讀取器庫包:AnfcRL_TS_T40D2M10I1R0
  • 用於 S32K144 AUTOSAR4.3 驅動包:S32K14X_MCAL4_3_RTM_1_0_1
  • Gnuwin32 (version 3.81)
  • GNU Arm Embedded Toolchain (Version 7-2018-q2-major)

備註:IDE、EB、NFC 讀取器庫包、MCAL 等軟體組件與代碼工程包需要在 NXP 官網申請權限進行下載。

2.2      組件安裝

下載軟體組件後編譯器、IDE、配置工具只需默認安裝即可滿足使用需求,在安裝 MCAL 中需要注意將配置工具的安裝路徑添加進 MCAL 的鏈接路徑中,安裝成功後會在配置工具安裝路徑的“EB\tresos_24AS43\links”文件夾下出現相應的 .link 文件,如不添加進鏈接路徑後續配置工具將無法配置所安裝的 MCAL 版本。

安裝 AnfcRL 組件:

  • 複製 AnfcRL_TS_T40D2M10I1R0 到 S32K14X_MCAL4_3_RTM_1_0_1\eclipse\plugins 下
  • 從 AnfcRL_TS_T40D2M10I1R0\stubs\S32K14X\include 複製 h 到 S32K14X_MCAL4_3_RTM_1_0_1\eclipse\plugins\Base_TS_T40D2M10I1R0\include 文件夾下
  • 從 AnfcRL_TS_T40D2M10I1R0\stubs\S32K14X\include 複製 h 到 S32K14X_MCAL4_3_RTM_1_0_1\eclipse\plugins\Rte_TS_T40D2M10I1R0\include 文件夾下
  • 從 AnfcRL_TS_T40D2M10I1R0\stubs\S32K14X\src 複製 c 到 S32K14X_MCAL4_3_RTM_1_0_1\eclipse\plugins\Rte_TS_T40D2M10I1R0\src 文件夾下

 

三、卡保護應用示例

3.1 模擬檢測流程

RFID 保護是一種特殊算法,可防止在將 NFC 卡放置在無線充電板上時激活無線充電功能。該算法結合了無線充電技術的“模擬感應”與“NFC 算法區分”。

 模擬傳感流程圖

3.2      NFC 識別算法

卡保護 NFC 識別算法流程圖

應用示例程序抽象序列

示例應用 NFC 區分算法識別完成後兩個結果:

“Prohibit Charging”:NCF3321 在無線充電板上發現至少一張 NFC 卡片。

“Allow Charging”:NCF3321 沒有在無線充電上發現 NFC 卡片。

當無線充電板上有兩個或者更多物理設備時,在第一輪循環後禁止充電:

  • 假設:不會有兩部手機在無線充電板上,則至少有一個設備是卡片。

如果無線充電板上僅存在一個設備,則進行進一步檢測:

  • 檢測設備(技術、協議、接口、模式、PAD0、AID 等。)
  • 如果設備是手機則允許充電/如果設備是卡片則禁止充電。

如果無法單獨通過協議做出決定,則執行模擬檢測:

  • 如果設備是手機則允許充電/如果設備是卡片則禁止充電。

以上算法要求可靠的射頻性能與正確的天線匹配。

對於帶有 NCF3321 的 NXP NFC 讀取器庫的發現循環的返回狀態將為(MULTI_TECH_DETECTED 或者 MULTI_DEVICES_RESOLVED),以防止無線充電板上檢測到多個設備。在該情況下,應禁止無線充電,因為其中至少有一個設備是卡片。

在只有一個設備被發現的情況下(status=DEVICE_ACTIVATED):

  • 類型 V:因為沒有針對 V 類型卡仿真所以禁止充電。
  • 類型 F:PAD0 參數用於確定這杯的性質。
  • 類型 A:
  • 如果先從卡中識別出 UID,則選擇 AID 為正,然後禁止充電;
  • 如果協議為 NFC-DEP 則允許充電,否則將進入第三次循環。
  • 類型 B:
  • 如果先從卡中識別出 UID,則選擇 AID 為正,然後禁止充電,否則進入第三次循環;
  • 如果第三次循環發現設備激活,則意味該設備是一部手機。因為同一個卡設備不會響應兩種不同的技術,然後允許充電。

四、運行演示

4.1 工程配置

打開 EB 配置工具,選擇 File>Import>General>ExistingProjects into Workspace 將工程導入到 EB 配置工具查看 S32K144EVB 的 port 口配置,如需修改配置也再次修改。在導入時需勾選 Search for nested projects 選項,如下圖所示。

打開 Port 模塊即可觀察到工程的相關配置,如需修改相關配置也在此頁面。

4.2 代碼編譯

打開 S32 Design Studio for ARM Version 2018.R1,選擇 File>Import>General>ExistingProjects into Workspace 將工程導入到 IDE 內,同樣在導入時需勾選 Search for nested projects 選項。打開工程列表,雙擊 AutosarEnvironment.bat 打開代碼頁,將紅框內代碼路徑更改成安裝位置路徑後即可編譯工程生成 .elf 文件。

 

4.3 調試演示

生成 .elf 文件後即可進行 debug 測試,測試結果如下所示。

無設備檢測結果

手機檢測結果

卡檢測結果

多卡檢測結果

綜上所述 NCF3321 卡保護應用示例可精確檢測無設備、手機、單卡與多卡情況並給出禁止充電、允許充電命令,結合無線充電程序板搭配使用可有效防止 NFC 卡片放置於無線充板上觸發無線充電損壞 NFC 卡片。如想了解 NCF3321 卡保護應用示例更多資料與設計,請聯繫我們 atu.sh@wpi-group.com

 

五、參考文獻

[1] DS787721-Data Sheet NCF3321(2.1).pdf,NXP

[2] UM-SCA11222-AUTOSAR_Demonstration_Guideline_for_aNFC_Reader_Library.pdf,NXP

[3] WCT-15WTXAUTOS13V2 Install User Guide(WCT15WTXAUTOSBUG).pdf,NXP

[4] UM-SCA11840-RTD_AUTOSAR_Demonstration_Guideline_for_aNFC_Reader_Library.pdf,NXP



歡迎在博文下方留言評論,我們會及時回復您的問題。如有更多需求,歡迎聯繫大聯大世平集團 ATU 部門:atu.sh@wpi-group.com
作者:Hobo Xu / 許寧

相關影片

NCF3321卡保護例程演示

這是一個使用 S32K144 搭配 NCF3321 應用於無線充電時保護 NFC 卡片的工程演示視頻



歡迎在視頻下方留言評論,我們會及時回復您的問題。如有更多需求,歡迎聯繫大聯大世平集團 ATU 部門:atu.sh@wpi-group.com

作者:Hobo Xu / 許寧

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論