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次,发文人进小黑屋喔~

评论