摘要
本应用说明介绍了近场通信(NFC)/射频识别(RFID) MAX66242EVKIT板的基础知识,以及一个利用iOS和Android的NFC功能的应用程序®基于移动设备锻炼板功能。然后演示该应用程序如何使用户能够使用MAX66242的内存和安全特性。它还展示了如何使用MAX66242与板载I2C温度传感器,该传感器演示了该设备的能量收集功能。
简介
本应用说明讨论了两者的特性MAX66242EVKIT和MAX66242集成电路和移动应用程序可在苹果应用程序商店和谷歌播放。讨论了如何快速启动移动应用程序。
除了介绍该器件的内存和安全特性外,还给出了一个实例来突出说明MAX66242的能量收集特性。MAX66242作为NFC to I2C桥,用于与外部设备通信。所使用的外部设备为aDS7505我2C温度传感器。
更详细的设备操作和规格请参见MAX66242数据手册。要订购的EV kit的零件号是MAX66242EVKIT#。
设备的功能
MAX66242结合了NFC/RFID标签功能,包括高级安全性、用户可编程存储器、数据保护、I2C接口和能量收集。图1中的框图显示了主要组件之间的关系,包括控制部分、内存部分以及RF前端和I等接口2C。
高级安全性通过SHA-256加密引擎提供,该引擎提供基于共享密钥的对称挑战-响应身份验证功能。因此,MAX66242可以选择与之通信的读取器,并提供一种安全的方式来存储密钥和保护敏感数据。
4Kb EE用户内存被划分为16个32字节的页面。每个页面被分成8个4字节的块。保护设置应用于整个页面。在数据保护方面,有几种模式可供选择:
- 读保护(RP)
- 写保护(WP)
- EPROM仿真模式(EM)
- 认证保护(AP)
MAX66242支持25个固定功能的命令,分为ISO 15693标准命令和ISO 15693自定义命令,这些命令通过设备功能控制块进行维护。
除了ISO 15693射频前端,该部件还具有一个开漏多用途引脚(PIO)和一个I2C接口。根据应用需求,设备可以作为从机(响应器)或主机(控制器)运行。
MAX66242还可用于从RFID阅读器获取能量,并操作连接的设备,如传感器或低功耗微控制器。
MAX66242 EV板
如图2所示,MAX66242EVKIT板有一个SO8封装的MAX66242 IC,一个共振频率为13.56MHz的5µH螺旋天线,一个DS7505温度传感器和一个易于引脚访问的引脚头。MAX66242也可采用晶圆级封装(WLP),带有小金(金)凸起,用于导电粘合剂附着在标签上。
板上可用的标头能够交换板载DS7505和外部I之间的连接2C传感器,如MAX31875,这是由移动应用程序以及支持。在附录中提供了MAX31875如何连接到MAX66242EVKIT板的原理图(图3)。DS7505温度传感器的精度为0.5°C,工作电压范围为1.8V和3.3V。
移动应用程序
这款移动应用可用于iOS和Android系统。可以在苹果应用商店和谷歌Play中下载和安装。请使用“MAX66242 NFC阅读器”关键字进行搜索(图4)。该应用程序允许用户通过NFC接口发送命令来评估MAX66242的功能。
请注意:由于谷歌Play Store的应用程序排名系统,应用程序在搜索结果列表中的位置可能会有所不同。请向下滚动,直到您在谷歌Play Store的搜索结果列表中找到该应用程序。
移动应用程序有四个主要选项卡,允许用户在MAX66242的不同功能之间切换焦点。每个选项卡分别显示了MAX66242的不同功能,如图5、6、7和8所示。
- Basic command -读取UID
- 设备特性—查看设备内存功能
- 密码学-使用设备的密码功能
- 温度-温度测量和数据记录
基本命令(图5)
- 读取MAX66242 64位UID (unique identifier)
- 打开/关闭板载LED
设备特性(图6)
- 读写用户电擦可编程只读存储器(EEPROM)
- 在EEPROM页面上设置保护
- EEPROM页面保护设置的Read状态
密码(图7)
- 写一个SHA2秘密
- 执行SHA2 Authenticated Writes操作
- 执行挑战/响应SHA2 MAC序列
- 比较在设备中计算的MAC值和在应用程序中以编程方式计算的MAC值。
温度(图8)
- 使用板载DS7505或外部连接的MAX31875*进行温度测量附录对于增加外部拉拔的连接方案)。
- 随着时间的推移,重复测量,记录并绘制数据。
* MAX31875不包含在MAX66242EVKIT#中。
板带
MAX66242EVKIT单板需要通过有源NFC读写器上电。由于使用智能手机收音机,在使用移动应用程序时,不能使用外部VCC给单板上电。为了验证应用程序和MAX66242之间的通信,应该使用以下程序:
- 启动MAX66242移动应用。
- 导航到被调用的第一个选项卡基本命令.
- 单击读取UID.
- 等待“准备扫描”通知。
- 让电路板靠近智能手机背面的天线(图9和10)。
- 等待单板响应UID。
- 检查结果标签中接收到的UID。
在验证MAX66242与移动应用程序之间的通信后,可以继续使用应用程序上的关联按钮打开和关闭板载LED基本命令选项卡。
如图9所示,通过手机收集的功率高度依赖于MAX66242EVKIT板与手机之间的距离。随着距离的增加,收获的能量减少。距离在3.2厘米以下时效果最好。在3.2cm以下,V出可根据用户配置输出3.3V或1.8V。在距离大于10.2cm时,在V处没有收获电压调节出.
MAX66242性能演示
本节通过移动应用的四个选项卡来演示MAX66242的功能。图11、12、13、14描述了移动应用程序的主要功能。
基本命令(图11)
- 读取MAX66242 64位UID,该UID使用了Maxim 64位ROMID的一部分。UID的下28位是由ROMID序列化的28位衍生出来的IC序列号。上36位固定在E02B00800h。详细信息请参见附录:MAX66242的64位UID和ROMID.
- 通过设置V打开LED出通过能量收集输出使能(EHOE)位到3.3V模式。
- 设置V关闭LED出通过EHOE位转换到1.8V模式。
请注意: iPhone的LED不会一直亮着。一旦启用,它会通过移动板子来间歇性地打开/关闭。
设备特性(图12)
- 页面选择,将4Kb E2用户内存划分为16个32字节的页面。
- 页面内的块选择。每个页面被分成8个4字节的块。写是在块的基础上执行的。详细信息请参见附录:MAX66242用户内存组织.
- 所选、写入或读取的块的四个字节的数据。
- 对于写入,'Rand'用4个相等的字节填充Data字段。每次按压都会改变数据。按trash将清除Data字段。
- 用于应用于具有“设置保护”的页面的保护滑块,或用于指示“读取状态”中的保护设置。
- “Set Protection”命令用于永久启用E2用户内存页面的保护模式。保护是按每一页计算的。“读状态”用于读取页面的保护设置。
- 结果:从Read page Memory或Read Status显示32字节的页面数据。
密码(图13)
- SHA2操作的页面选择。
- 在SHA2操作的页面选择中阻塞。
- 32字节用于设置App SHA2秘密和/或写入MAX66242。该应用程序不WP秘密在MAX66242,所以这可以在任何时候改变。'Rand'用32个相等的字节填充Secret字段。每次按下更改的数据或可手动输入32个字节。
- 'Rand'用32个相等的字节填充Challenge字段。每次按压都会改变数据。或者可以手动输入32个字节。
- 'Rand'用4个相等的字节填充数据字段。每次按压都会改变数据。 按trash键将清除相应的数据字段。
- 如果一个页面设置了AP认证,Authenticated Write使用App SHA2秘密尝试写入所选的页面和数据字段中4个字节的块。
- 对于挑战/响应序列,Compare MAC使用所选页面和挑战数据字段计算MAC,并与MAX66242返回的MAC进行比较。如果两者匹配,则应用程序和MAX66242具有相同的秘密。
- 使用“Write SHA Secret”将“App SHA Secret”字段中的32字节内容写入MAX66242。
温度(图14)
- 设备和I没有变化2C地址与董事会使用。
- 温度测量被绘制成图表。
- 温度测量显示选项图/表在图形和表视图之间切换。表视图列出了测量值和时间戳。°C/°F改变了摄氏度和华氏度之间的测量单位。
- 执行DS7505温度测量。
- 删除以前的测量值。
沟通
移动电话和MAX66242之间的通信是一种主应答器类型的事务,基于数据包的交换。手机发起每一笔交易。在任何时候,只能通过手机或MAX66242两种设备进行信息传输。移动应用程序还可以与其他I2C设备连接到MAX66242。DS7505是I2C温度传感器,安装在EV板上。
总结
本应用笔记涵盖了MAX66242移动应用程序的基本操作,以及如何快速启动和运行,以体验其功能和测量温度数据。同样的原理可以很容易地应用于与任何具有I2C接口的设备通信。更详细的命令描述可根据要求提供。
商标
Android是谷歌Inc.的注册商标。
附录
与MAX31875 EV板接口
MAX66242移动应用程序也可以从MAX31875获得温度数据。需要两个外部上拉电阻才能正常工作。参见图16。
MAX66242的64位UID和ROMID
图17显示了MAX66242的UID和ROMID寄存器的布局。
MAX66242用户内存组织
图18显示了用户内存的组织。它被组织为16页,每页32字节。每页分为8个页块,每个页块容纳32位。