MFRC522寫扇區(qū)

MFRC522寫扇區(qū)
本文基于Arduino?框架
首先加載庫文件+宏定義引腳
創(chuàng)建RC522實(shí)例,準(zhǔn)備密鑰
定義必要變量
程序初始化?setup()
主函數(shù) loop()
附加一個(gè)將字節(jié)數(shù)組作為十六進(jìn)制值打印函數(shù)
最后合成就是?
看一下運(yùn)行結(jié)果吧!
程序?qū)懭氲氖鞘M(jìn)制 1-16,最后讀取的是十六進(jìn)制1-16,寫入成功!
可以再在loop()函數(shù)最后面加上寫,寫回初始值(16個(gè)0),方便下次實(shí)驗(yàn)!
其中需要注意的點(diǎn)是
引腳需根據(jù)自己開發(fā)板作相應(yīng)修改(SPI片選引腳,RC522-RST引腳),如果開發(fā)板支持SPI引腳映射(ESP32),可自定義SPI引腳,用函數(shù)?SPI.begin(sck,miso, mosi,ss);即可
本次使用的卡為M1 1KB卡片,卡片數(shù)據(jù),扇區(qū)密鑰均為初始值(扇區(qū)數(shù)據(jù)塊全部為0,扇區(qū)密鑰A為6個(gè)0xFF,密鑰B為6個(gè)0x00,讀寫控制位為默認(rèn)值是FF 07 80 69,意思是此時(shí)A密鑰:不可被讀出,有全部權(quán)限。B密鑰:可被讀出,沒有任何權(quán)限),所以時(shí)使用密鑰A來讀寫數(shù)據(jù)的。
如果卡片內(nèi)數(shù)據(jù)非初始值,可能讀卡失敗!可依自己詳情修改代碼。

標(biāo)簽: