如何使用 NTAG 5 Link 搭建一个简单的场强取电 Demo?

一、 简介

本文介绍如何使用 NTAG 5 Link Development Board 搭建一个简单的演示 Demo,Demo 功能为:通过手机 NFC 给 NTAG 5 Link Development Board 供电,驱动外接的 UV Sensor VEML6070,并通过 I2C 接口读取 VEML6070 寄存器中的光数据,最后在手机 App 上显示。本文中介绍的 App 均为 Android 版本。

二、 硬件介绍

2.1 NTAG 5 Link Development Board

如下图 2-1,该开发板 NFC 芯片为 NTP5332,板子上可以通过拨码开关控制 I2C 引脚是否上拉,场强取电(Energy Harvesting)功能是否开启,板子两侧集成标准的 Arduino 接口,方便接到其他开发板上。NTP5332 最高的场强取电输出功率为 30mW。

NXP 官网链接:OM2NTx5332: NTAG 5 development kits | NXP Semiconductors

图 2-1 NTAG 5 Link Development Board 实物图

 

在本 Demo 中,将会使用该板上的 I2C 接口和场强取电功能。参照原理图,如下图 2-2,我们需要将拨码开关 SW3 的三个按键全部拨到右边,分别对应 I2C 上拉和使能场强取电功能。并将 SW6 的拨码开关拨到左边,即选择 1.8_3.3V 为输出引脚,为后续 UV Sensor 的供电脚做准备。

图 2-2 NTAG 5 Link Development Board 原理图

2.2 VEML6070 Sensor Module

如下图 2-3,VEML6070 Sensor Module 一共只引出了五个脚,在本 Demo 中,只需要接 I2C 、VCC、GND 四个引脚即可。根据数据手册,我们可以看到该 Sensor 的数据为 16 位数据, I2C Slave 地址为 0x38、0x39。读取 0x38 获得的数据为 LSB,读取 0x39 获得的数据为 MSB。

图 2-3 VEML6070 Sensor Module 实物图

2.3 接线

NTAG 5 Link Development Board

VEML6070 Sensor Module

J2-10(SCL)

SCL

J2-9(SDA)

SDA

J3-6(GND)

GND

J3-4(3V3)

VCC

 

三、 App 介绍

3.1 Xplore NTAG 5

该 App 是适用于 NTAG 5 Demo Kit 的应用程序,在本 Demo 中,仅用来设置场强取电的输出电压。该 App 可以在 Google Store 中下载。

进入 App 之后,点击左侧按钮,选择 NTAG 5 Link,再点击下方最右侧的 Setting,选择上面的 3V,然后将手机 NFC 区域贴近 NTAG 5 Link Development Board 的天线,测试能够看到,板子上的指示灯亮起,且亮度很高,表明此时配置成功。

图 3-1 配置输出电压流程

3.2 NTAG 5 - Use Case

该 App  适用于 NTAG 5 Link Development Board,主界面如下图 3-2,能够对开发板进行相应的配置,本 Demo 我们主z要使用第一个功能 I2C MASTER CHANNEL,其他功能我们在本文中不多做展开。

图 3-2 NTAG 5 -Use cases 主页面

 

3.2.1 配置 I2C Master mode

点击 I2C MASTER CHANNEL 进入界面,如下图 3-3。

第一步需要向将 NTAG 5 配置成 I2C Master,先将手机 NFC 区域靠近板子天线,待到板子上指示灯亮起,点击 App 右上角,选择 Set I2C Master mode,此时会提示是否改变模式,配置成功后,重启板子更新配置(即将手机远离板子,再将手机重新贴近板子)。该 App 为测试程序,没有正式发布,所以无法通过各大应用市场获取,但是该 App 源码已经在 NXP 官网发布,包含 Android 和 iOS 版本。


图 3-3 I2C MASTER CHANNEL 页面

3.2.2 发送指令

根据图 3-3 我们不难发现,发送命令有两个,第一个是 Select a default command,第二个是 Select a customer command,第一个指令是适配于陀螺仪 FXOS8700CQ 的默认指令,3.1 章节描述的 Xplore 中也有直接获取该 Sensor 的 Demo,有兴趣的小伙伴可以去 NXP 官网搜索,再次不做展开。这里主要讲一下第二个用户指令。点击之后如下图 3-4.

图 3-4 Write a custom command 页面

在页面下方,给出了命令的格式:

Flags

Write I2C

I2C Mfc code

I2C param

Data length

Data

1 B

1 B

1 B

1 B

(N-1) B

N B

无要求

读:D5

写:D4

厂商码,固定为 04

I2C 7 位从机地址

数据长度

数据

根据以上表格给出的格式,结合 2.2 节,我们可以直接读取当前获取到的 UV 光数据值。

四、 演示效果

图 4-1 Sensor 采集到不同数据的变化

如上图 4-1,发送数据 12D5043800,直接读取 LSB,可以看到在不同的光线下,采集到的数据从 01 变为 5B。

 

下图 4-2 为读取到 LSB 为 35 时的示波器波形图。

图 4-2 读取数据波形

数据解析

0111 0001

0

0011 0101

1

0x38 | R

NAK

0x35

ACK

 

五、 参考资料

[1] ds544533 - NTP53x2 NTAG 5 link - NFC Forum compliant I²C bridge (3.3).pdf

[2] an531811 - RM00221 NTAG 5 - Android Application development (1.1).pdf

[3] sc591710 - X-OM2NTP5332 NTAG 5 link - Development Board Schematic (1.0).pdf

[4] veml6070 Datasheet.pdf

技术文档

类型标题档案
硬件Datasheet
硬件Development Board Schematic
硬件veml6070 Datasheet

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论