分享一個有關(guān)PN512在讀取身份證UID的源碼以及電路設計,這是是多年前用于某門禁方案中的模塊,為了確保和大家一起學習同時也為了公司保密要求,現(xiàn)在只分享該模塊的全部資料,如有不當之處還請大家見諒,如何冒犯之處請大家和我聯(lián)系,本人本著一起學習一起進步的目的,非用于商業(yè)目的,謝謝。
常用的RFID卡分布在高頻和超高頻。高頻卡目前的頻率主要是13.56MHz。有幾種標準;ISO-14443-A、ISO-14443-B、ISO-15693、ISO-18000-3;超高頻的有ISO-18000-6和EPC標準。ISO-14443-A和ISO-14443-B的主要區(qū)別在于編碼方式。ISO-14443-A是曼切斯特編碼,而NRZ是不歸零編碼。Mifare卡和Desfare卡都是ISO-14443-A卡。而身份證一般都是ISO-14443-B卡。Type A的卡速率一般在104kbps,TypeB的卡速率可以是104kbps,也可以是416kbps。ISO-15693與ISO-14443的區(qū)別在于傳輸距離。
15693的傳輸距離可以到1.5m,而ISO-14443的傳輸距離在4-10cm的范圍內(nèi)。它的卡速率比較低,一般在104kbps/4。UHF和高頻卡的不同原理:13.56M的高頻卡的原理是電磁感應技術(shù)。通過交變的電磁場,給無源的卡提供能量,實現(xiàn)卡與讀卡器的通信。而UHF的原理是電磁傳播技術(shù),與雷達探測類似,發(fā)出一段電磁波,再從反射回來的電磁波中讀取信息。UHF和高頻卡的不同特征:UHF:天線小、傳輸距離遠、成本高。高頻卡:天線大,傳輸距離近、成本低。
身份證UID讀取方法,在源碼ISO14443B中有介紹
ISO14443A主要用于讀取普通IC卡,也就是我們常說的大白卡,淘寶上才幾毛錢一張
ISO14443B主要讀取CPU卡的程序,這里我們用于讀取身份證的UID,有不明白之處可以先參考我上傳的身份證讀取方法。
上傳main函數(shù),本人盡量將程序?qū)懙姆浅:唵危菀兹胧?,希望大家可以看明白?/p>
用示波器讀取PN512信號波形,正弦波非常好看,波形幅值是可以調(diào)節(jié)的,大家可以通過調(diào)節(jié)電路中的C3 C4 C6 C7來調(diào)節(jié)波形,正常情況下波形可以達到2V就可以了,幅值越小讀取的距離越近,但是幅值太大的話容易讀取不穩(wěn)定,具體大家可以自己調(diào)節(jié)一下。
讀取身份證UID
讀取普通IC卡ID
如果大家沒有接觸過這種讀卡芯片,建議大家網(wǎng)上買一塊復旦微電子的FM1701模塊來入手,這個是國產(chǎn)的,也很便宜,資料很多,適合入手,但是就性能而言比PN512差很多。