Skip to main content

NFC Shield V2.0

pir

pir

NFC(近场通信)是一种广泛使用的技术。NFC的一些应用包括无线门禁系统(例如无钥匙门锁)和移动设备支付(例如通过手机应用程序接收付款信息的商店收银机)。

NFC Shield 配备了一个收发器模块 PN532,它处理 13.56MHz 的无线通信,这意味着您可以使用此扩展板读写 13.56MHz 标签,或在扩展板和智能手机之间实现点对点(P2P)数据交换。

对于这个新版本的扩展板,我们创建了一个独立的 PCB 天线区域,这使您能够更容易地将 NFC 接口延伸到主电路外壳之外。

应用创意

如果您想使用 NFC Shield V2.0 制作一些精彩的项目,这里有一些项目供参考。

NFC Shield 演示

纸人,一个与 Android 交互的有趣物体

pir

立即制作!

更多 NFC Shield V2.0 精彩项目

特性

  • 使用 ICSP 接头进行 SPI 通信。这意味着该扩展板适用于以下 Arduino 开发板:Uno、Mega、Leonardo
  • 13.56MHz 无线 NFC 通信
  • SPI 协议 - 节省引脚的接口,仅需要 4 个引脚
  • 输入电压:来自 Arduino 5V 引脚的 5V
  • 典型电流:100mA
  • 最大有效范围 5cm
  • 支持 P2P 通信
  • 支持 ISO14443 Type A 和 Type B 协议

硬件概述

NFC 扩展板的引脚和其他端子描述如下。

pir

NFC 扩展板接口

  • D10 和 D9 用于 SPI 片选(CS/SS)。默认连接 D10,要连接 D9 需要焊接 SS 焊盘到 D9 焊盘,并刮掉 SS 和 D10 之间的连接。
  • D2 可用于接收扩展板的中断请求(IRQ)引脚信号。中断默认未连接,需要焊接"D2/INT0"和"IRQ"焊盘。
  • 扩展板直接从 Arduino 的 ICSP 接头获取其 SPI 接口(SPI MOSI、MISO 和 SCK 引脚),这意味着扩展板适用于以下 Arduino:Uno、Mega 和 Leonardo。
  • ANT1 端子是 NFC 天线(扩展板附带)的连接位置。
  • 扩展板由 Arduino 板的 5V 供电。

NFC 扩展板的天线包含在扩展板中,是一个通过电缆连接到扩展板的独立 PCB 模块。天线是用于接收和发送信息的区域。

pir

NFC 天线 PCB 连接

NFC Shield 设置

硬件安装

  1. 将 NFC 天线连接到扩展板。
  2. 将 NFC Shield 堆叠在您的 Arduino 开发板上,并使用 USB 电缆将板连接到 PC。

软件库安装

  • 步骤 1. 下载 Seeed Arduino NFC 库

  • 步骤 2. 参考 如何安装库 为 Arduino 安装 Seeed Arduino NFC 库。

  • 步骤 3. 通过路径打开"WriteTag"代码:File --> Examples --> WriteTag

  • 步骤 4. 修改代码如下以启用 SPI 通信。

#if 0
#include <SPI.h>
#include <PN532/PN532_SPI/PN532_SPI.h>


PN532_SPI pn532spi(SPI, 10);
NfcAdapter nfc = NfcAdapter(pn532spi);
#else

#include <Wire.h>
#include <PN532/PN532_I2C/PN532_I2C.h>


PN532_I2C pn532_i2c(Wire);
NfcAdapter nfc = NfcAdapter(pn532_i2c);
#endif

void setup() {
SERIAL.begin(9600);
SERIAL.println("NDEF Writer");
nfc.begin();
}

Arduino 可用库菜单

NFC Shield 示例/应用

示例:NFC WriteTag

此示例将向您展示如何使用 NFC shield 扫描 NFC 标签并显示其信息/数据。

在 Arduino IDE 中复制、粘贴,然后将下面的代码上传到您的开发板。

代码

#include <NfcAdapter.h>
#include <PN532/PN532/PN532.h>
#if 0
#include <SPI.h>
#include <PN532/PN532_SPI/PN532_SPI.h>


PN532_SPI pn532spi(SPI, 10);
NfcAdapter nfc = NfcAdapter(pn532spi);
#else

#include <Wire.h>
#include <PN532/PN532_I2C/PN532_I2C.h>


PN532_I2C pn532_i2c(Wire);
NfcAdapter nfc = NfcAdapter(pn532_i2c);
#endif

void setup() {
SERIAL.begin(9600);
SERIAL.println("NDEF Writer");
nfc.begin();
}

void loop() {
SERIAL.println("\nPlace a formatted Mifare Classic or Ultralight NFC tag on the reader.");
if (nfc.tagPresent()) {
NdefMessage message = NdefMessage();
message.addUriRecord("http://arduino.cc");

bool success = nfc.write(message);
if (success) {
SERIAL.println("Success. Try reading this tag with your phone.");
} else {
SERIAL.println("Write failed.");
}
}
delay(5000);
}

要测试代码:

  1. 打开 Arduino 串口监视器窗口
  2. 将波特率设置为 115200
  3. 将 NFC 标签放在 NFC 天线区域上方
  4. NFC 扩展板将扫描标签,您应该能够在串口监视器窗口中看到 NFC 标签的 UID、标签类型和消息(如果可用)。请参见下图。

pir

常见问题

Q1:电缆的长度是多少?如果我想要更长的电缆,可以多长?

A1:我们与 NFC 扩展板一起销售的电缆长度为 12cm。如果您想要更长的电缆,请不要超过 15cm,并使用 IPX/U.FL 连接器。

Q2:NFC Shield V2.0(SKU:113030001)可以添加两个或更多天线吗?

A2:NFC 扩展板 v2 基于 PN532 芯片。请注意,该设计仅支持一个天线。

NFC Shield v2.0 Eagle 文件原理图在线查看器

NFC Shield v2.1 Eagle 文件原理图在线查看器

资源

项目

纸人 通过 NFC 技术与您的 Android 设备通信的有趣方式。

NFC 卡控制遥控车 挑战您的协调能力:构建您自己的 NFC 控制汽车

技术支持与产品讨论

感谢您选择我们的产品!我们在这里为您提供不同的支持,以确保您使用我们产品的体验尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。

Loading Comments...