当前位置: 首页 > news >正文

Arduino大师练成手册 -- 控制 PN532 NFC 模块

要在 Arduino 上控制 PN532 NFC 模块,你可以按照以下步骤进行:

硬件连接

VCC:连接到 Arduino 的 3.3V 引脚。

GND:连接到 Arduino 的 GND 引脚。

SDA:连接到 Arduino 的 SDA 引脚(通常是 A4)。

SCL:连接到 Arduino 的 SCL 引脚(通常是 A5)。

安装必要的库

在 Arduino IDE 中,安装 Adafruit PN532 库。你可以在库管理器中搜索并安装该库。

代码示例

以下是一个简单的示例代码,用于读取 MF1S50 NFC 卡的数据:

#include <Wire.h>
#include <Adafruit_PN532.h>// 如果使用I2C接口
#define SDA_PIN A4
#define SCL_PIN A5
Adafruit_PN532 nfc(SDA_PIN, SCL_PIN);
void setup(void) {Serial.begin(9600);Serial.println("Hello! This is a test.");nfc.begin();uint32_t versiondata = nfc.getFirmwareVersion();if (!versiondata) {Serial.print("Didn't find PN53x board");while (1); // halt}// 配置PN532模块进入读卡器模式nfc.SAMConfig();Serial.println("Waiting for an NFC card...");
}
void loop(void) {uint8_t success;uint8_t uid[] = { 0, 0, 0, 0, 0, 0, 0 };  // 缓存NFC标签的UIDuint8_t uidLength;                         // 存储NFC标签的UID长度success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, uid, &uidLength);if (success) {// 显示NFC标签的UID信息Serial.println("Found an NFC card!");Serial.print("UID Length: ");Serial.print(uidLength, DEC);Serial.println(" bytes");Serial.print("UID Value: ");for (uint8_t i=0; i < uidLength; i++) {Serial.print(" 0x");Serial.print(uid[i], HEX);}Serial.println("");delay(1000);}
}

连接示意图

VCC -> Arduino 3.3V

GND -> Arduino GND

SDA -> Arduino A4

SCL -> Arduino A5

重要提示

库安装:确保安装了 Adafruit PN532 库。如果没有安装,可以在 Arduino IDE 的库管理器中搜索并安装。

引脚定义:确保代码中的引脚定义与实际连接一致。

在这里插入图片描述

http://www.lryc.cn/news/527114.html

相关文章:

  • 解决日志中 `NOT NULL constraint failed` 异常的完整指南
  • C动态库的生成与在Python和QT中的调用方法
  • UE求职Demo开发日志#7 强化属性完善
  • Day35:字符串的大小写转换
  • 喜报丨迪捷软件入选2025年浙江省“重点省专”
  • 深度剖析 PyTorch框架:从基础概念到高级应用的深度学习之旅!
  • 基于C++的DPU医疗领域编程初探
  • Linux 执行 fdisk -l 出现 GPT PMBR 大小不符 解决方法
  • 图漾相机搭配VisionPro使用简易教程
  • 第一届“启航杯”网络安全挑战赛WP
  • 大模型训练策略与架构优化实践指南
  • 新电脑安装系统找不到硬盘原因和解决方法来了
  • 【Linux】21.基础IO(3)
  • 深度学习算法:从基础到实践
  • 27. 【.NET 8 实战--孢子记账--从单体到微服务】--简易报表--报表服务
  • coffee销售数据集分析:基于时间趋势分析的实操练习
  • 【转帖】eclipse-24-09版本后,怎么还原原来版本的搜索功能
  • Centos 修改历史读录( HISTSIZE)
  • lwIP——4 网络接口
  • pytest自动化测试 - pytest夹具的基本概念
  • FreeRtos的使用教程
  • yolov11 解读简记
  • 实验二 数据库的附加/分离、导入/导出与备份/还原
  • Kafka常见问题之 `javax.management.InstanceAlreadyExistsException`
  • 性能测试丨JVM 性能数据采集
  • 计算机图形学实验练习(实验1.2-4.1AND补充实验12)
  • JWT实现单点登录
  • 云计算的概念与特点:开启数字化时代的新篇章
  • salesforce中如何获取一个profile的18位id
  • Vue 3 中的标签 ref 与 defineExpose:模板引用与组件暴露