硬件设置:MCU:XMC4200(英飞凌)通过 SPI 连接到 ST25R3911B,标签符合 ISO15693
软件:使用 rfal 库和 en.STSW-ST25RFAL001 (V2.1.2) 中的 iso15693 API
我能够成功读取库存,写入单个块并从 RFID 标签内存中读取单个块。
在我的测试中,如果我写入单个块并在之后立即从同一块读取(以验证写入是否成功),我会在块读取事务中得到“安全统计:63”。如果我只是读取一个块(之前没有写入同一块,则安全状态为 0)
这个安全状态代码是什么意思?为什么不是0?
我附上了我的 read_single_block 和 write_single_block 函数实现的 C 代码片段。
这是我的调试 UART 的打印输出
****************************************************** *******************
运行库存命令
iso15693库存状态:0
找到标签!
找到 ISO15693/
NFC-V 卡
. UID:E0:08:01:55:AB:75:6C:D5
, DSFID: 0
, RES_FLAG: 0
, 校验码: a090
读取系统信息
UIDE0:08:01:55:AB:75:6C:D5 卡的系统信息:
标志:0
信息标志:f
dsfid: 0
阿菲:0
块数:250
块大小:8
ic参考:84
写入内容:0A、0C、41、47 5F、39、35、37
Iso15693/NFC-V 成功写入块数:1
读块数:1
读取块 1:
标志:0
错误代码:0
安全状态:63
实际尺寸:8
数据:0A:0C:41:47:5F:39:35:37
块号:1,读取数据长度:8
区块内容:0A, 0C, 41, 47 5F, 39, 35, 37
****************************************************** ************************