最直白理解NFC开发的三种工作模式

AI助手已提取文章相关产品:

刚开始开发NFC时,说的三种模式:说的感觉都是些专业术语.看的不是很明白,以下是最直白的NFC三种模式的介绍.

1.NFC的工作模式

NFC支持如下3种工作模式:读卡器模式(Reader/writer mode)、仿真卡模式(Card Emulation Mode)、点对点模式(P2P mode)。

下来分别看一下这三种模式:

(1)读卡器模式

数据在NFC芯片中,可以简单理解成“刷标签”。本质上就是通过支持NFC的手机或其它电子设备从带有NFC芯片的标签、贴纸、名片等媒介中读写信息。通常NFC标签是不需要外部供电的。当支持NFC的外设向NFC读写数据时,它会发送某种磁场,而这个磁场会自动的向NFC标签供电。

(2)仿真卡模式

数据在支持NFC的手机或其它电子设备中,可以简单理解成“刷手机”。本质上就是将支持NFC的手机或其它电子设备当成借记卡、公交卡、门禁卡等IC卡使用。基本原理是将相应IC卡中的信息凭证封装成数据包存储在支持NFC的外设中 。
在使用时还需要一个NFC射频器(相当于刷卡器)。将手机靠近NFC射频器,手机就会接收到NFC射频器发过来的信号,在通过一系列复杂的验证后,将IC卡的相应信息传入NFC射频器,最后这些IC卡数据会传入NFC射频器连接的电脑,并进行相应的处理(如电子转帐、开门等操作)。

您可能感兴趣的与本文相关内容

### 单片机开发中适用的NFC库文件及其使用 #### NFC库的选择标准 为了便于单片机开发者快速上手并有效利用NFC技术,在选择适合于单片机项目的NFC库时,应考虑以下几个方面: - **兼容性**:确保所选库支持目标单片机平台,并能够良好适配常用的NFC协议如ISO/IEC 14443A/B 和 ISO/IEC 15693[^1]。 - **易用性**:优秀的API设计可以简化复杂的底层操作流程,使开发者专注于应用程序逻辑而非硬件细节。 - **资源消耗低**:考虑到嵌入式系统的内存和处理能力有限,理想的NFC库应该具有较小体积且运行效率高。 #### 推荐使用的NFC库——PN532库 针对上述需求,推荐采用基于广泛认可和支持良好的PN532芯片构建而成的开源库。该库提供了详尽的功能覆盖范围,涵盖了从基础的数据传输到高级的安全认证机制等多个层面的操作接口。此外,它还具备跨平台特性,能够在多种主流微控制器架构(例如Arduino, STM32等)之上顺畅运作。 下载链接通常可以在GitHub或其他知名代码托管平台上获取新版本。安装过程相对简单直白,一般只需按照官方指南执行几条命令即可完成环境配置工作。 #### 使用教程概览 一旦成功集成了合适的NFC库之后,则可以通过如下方式开始探索其强大功能: ##### 初始化设置 ```cpp #include <Wire.h> #include <Adafruit_PN532.h> // 创建 PN532 对象实例 Adafruit_PN532 nfc; void setup(void) { Serial.begin(115200); // 设置通信模式 (这里以 I2C为例) nfc.begin(); } ``` ##### 基本读取卡片UID示例 ```cpp uint8_t uid[] = { 0, 0, 0, 0, 0, 0, 0 }; uint8_t uidLength; bool success = false; success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, &uid[0], &uidLength); if(success){ Serial.print("Found an ISO14443A card with UID:"); for(uint8_t i=0; i<uidLength;i++){ Serial.print(" 0x"); Serial.print(uid[i], HEX); } }else{ Serial.println("No cards found."); } ``` 此段程序展示了如何初始化设备并与之建立连接,随后尝试扫描附近存在的MIFARE Classic类型的标签或卡片,并打印出它们唯一的识别码(UID)。这只是一个非常简单的入门级例子,实际应用场景可能会涉及到更多复杂交互行为,比如数据加密解密、访问控制列表管理等功能。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值