MFRC522数据比较

MFRC522数据比较
学完RC522读写扇区后


从RC522读取数据之后怎么与待对比数据进行比较呢!
卡号比较
首先是UID(卡号比较)loop()
看看结果
没问题!
上面只对比一个卡号,那如果我不止一张卡怎么办呢,那就对比多张嘛!loop()
看看结果
依然没问题!
其中需要注意的点是
以上对比方法仅限于卡号长度为4位,7位10位修改程序即可,但如果4,7,10位混合,那就需要另外的对比算法了。
数据比较
然后就是数据块比较了,有了UID比较的基础,数据块比较还不是手到擒来。loop()
看看结果:
这里使用了两张卡片,以验证UID多卡对比,结果没问题!
其中需要注意的点是
引脚需根据自己开发板作相应修改(SPI片选引脚,RC522-RST引脚),如果开发板支持SPI引脚映射(ESP32),可自定义SPI引脚,用函数 SPI.begin(sck,miso, mosi,ss);即可
本次使用的卡为M1 1KB卡片,卡片数据,扇区密钥均为初始值(扇区数据块全部为0,扇区密钥A为6个0xFF,密钥B为6个0x00,读写控制位为默认值是FF 07 80 69,意思是此时A密钥:不可被读出,有全部权限。B密钥:可被读出,没有任何权限),所以时使用密钥A来读取数据的。
如果卡片内数据非初始值,可能读卡失败!可依自己详情修改代码。
