nfc标签写入方法:从单张发卡到批量初始化
RFID知识

nfc标签写入方法:从单张发卡到批量初始化

发布日期上海择捷智能科技有限公司

单张发卡用手机配合NFC Tools类APP就能完成,平均10秒一张;批量初始化需要专业读写器加脚本,效率能做到每秒1到2张。两者不是替代关系,而是适用场景不同:演示、单卡调试用前者,正式部署用后者。无论哪种方式,写卡前必须先定数据格式(NDEF,NFC数据交换格式)和标签型号,否则后续修改成本会很高。

选对标签是第一步

NFC标签写入的起点其实是选标签,不是写标签。常见型号按容量分三档:NTAG213有180字节,够存一条短URL或一个vCard联系人;NTAG215是540字节,可以放几条记录;NTAG216达到924字节,适合存较大文本或多条链接。门禁场景常用Mifare Classic 1K(1KB),但它分16个扇区,每个扇区有独立密钥,写法比NTAG系列复杂不少。

选完型号还要定数据结构。NDEF是NFC Forum定义的标准格式,规定了URL、TEXT、vCard、Wi-Fi配置等多种记录类型,每条记录叫一个NDEF Record。比如做产品溯源就写一条URL指向溯源系统,发会员卡就写vCard格式的联系人信息。我们做项目时一般建议先把字段列清楚,比如溯源需要产品ID、生产日期、批次号三项,对应URL里放查询参数,避免上线后再改标签内容。

单张发卡的正确姿势

单张发卡最方便的工具是手机APP。Android推荐NFC Tools Pro,iPhone可以用NFC Tools或快捷指令(Shortcuts)配合NFC自动化。流程很简单:打开APP选"写入",选数据类型(URL、TEXT等),填内容,把标签贴近手机背面NFC天线位置,听到提示音就完成了,整个过程5到15秒。

几个细节容易忽略:一是iPhone从iOS 14开始才支持完整的NDEF写入,对非Apple生态标签支持有限,写入前先确认APP兼容性;二是Android不同机型NFC天线位置不同,有的在摄像头附近,有的在手机中间,多试几次找到最灵敏的位置;三是写入后立刻读取验证,避免写成功但内容错误。

这种方式适合演示、单卡调试、临时测试,或一张标签对应一件物品的手工场景。一家做展会的客户给每件展品贴NFC标签,现场观众扫一下看产品视频,就是典型的手工发卡。

批量初始化:读写器加脚本是标配

数量超过50张,单张发卡就太慢了。这时候需要专业NFC读写器,比如ACR122U(USB接口,市场价200元左右)或ACR1255U(带蓝牙,约500元)。配合Python脚本或厂商配套工具,能做到每秒1到2张的写入速度,1000张标签单纯写入大约10到20分钟,加上放卡和异常处理通常一个多小时能跑完。

批量流程一般是四步:准备数据(CSV或数据库)、连接读写器、循环烧写、读取校验。Python可以用nfcpy或pyscard库,核心代码不到50行。批量写入的关键不是代码本身,而是异常处理:标签放歪、读写器瞬时无响应、标签本身有缺陷,都需要脚本能识别并跳过,否则一张卡坏掉整个流程卡住。上海择捷科技在项目实施时通常会在脚本里加日志和重试机制,写一张校验一张,失败标签自动标记,方便事后追溯。

几个容易踩的坑

扇区加密后忘记密码。Mifare Classic每个扇区有Key A和Key B两个密钥,一旦设置自定义密码又没有记录,几乎无法破解,只能换标签。加密前一定要把密钥表备份到密码管理器里。

标签锁死后无法修改。NTAG系列有一个CC(Capability Container)配置块,把某些位置设为只读后,标签就不能再写入了。批量发卡前先确认是否需要锁定,以及锁定范围是整张还是某个扇区。演示用标签建议保持可重写,正式部署再考虑锁卡。

UID异常或重复。NFC标签有一个全球唯一标识符UID(NTAG系列是7字节,类似身份证号),部分应用靠UID做身份识别。劣质标签可能出现UID重复或不符合ISO 14443规范(这是NFC的国际底层协议),导致读取失败或识别错误。采购前先抽测10张,用读写器读UID看是否正常。

手机和读写器写入兼容性差异。同样一条URL,手机写入后某些老款Android手机可能读不出来,读写器写入的兼容性更好。如果最终用户用手机读取,测试阶段就用多品牌手机验证一遍。

怎么决定用哪种方式

判断标准很直接:数量小于10张、临时调试、客户演示,用手机单张发卡;数量超过50张、正式部署、需要数据可追溯,用读写器批量发卡;10到50张之间可以混合,先用手机跑通流程验证数据格式,再用批量方案放大。

还有一个常被忽略的维度:数据变更频率。如果标签内容需要定期更新,比如会员卡到期时间、折扣码轮换,建议保持标签可重写并预留更新接口;如果内容永久不变,如产品溯源、生产信息,可以在批量发卡时直接锁卡防篡改。

NFC标签写入看似简单,但涉及硬件选型、数据格式、加密机制、批量流程多个环节。我们见过不少项目在演示阶段一切顺利,批量部署时才发现标签型号买错、数据格式不兼容、读写器驱动有问题,导致返工。建议正式批量前,先用5到10张标签跑通完整流程,包括写入、读取、加密、异常处理,把所有问题暴露在小批量阶段。