中北大學(xué)信息與通信工程學(xué)院 朱炳瑞 裴煥斗 劉春力
射頻識別即RFID(Radio Frequency Identification)技術(shù),是利用射頻方式在非接觸式射頻IC卡和讀寫器之間進(jìn)行無線雙向通信的一種新的自動識別技術(shù)。讀寫器通過無線電訊號識別特定目標(biāo)并讀寫相關(guān)數(shù)據(jù),實(shí)現(xiàn)無接觸信息傳遞,識別工作無須人工干預(yù)。與我們目前最常見的條形碼技術(shù)相比,RFID具有很大的優(yōu)勢,如非接觸識別、識別距離長、信息存儲量大、讀取信息快速方便、標(biāo)簽可重復(fù)使用以及標(biāo)簽?zāi)苓m應(yīng)復(fù)雜環(huán)境等。RFID技術(shù)廣泛應(yīng)用于圖書館、門禁系統(tǒng)、食品安全溯源、物流管理和城市一卡通等領(lǐng)域。
一套完整RFID系統(tǒng)由讀寫器和應(yīng)答器兩部分組成。應(yīng)答器是射頻識別系統(tǒng)的數(shù)據(jù)載體,即射頻IC卡(又稱電子標(biāo)簽、臨近卡等)。當(dāng)射頻IC卡進(jìn)入讀寫器的射頻磁場中時,會處于被激發(fā)狀態(tài)從而產(chǎn)生感應(yīng)電流驅(qū)動卡片電路,將它儲存的信息發(fā)射出去。讀寫器獲取到射頻IC卡發(fā)送的信息后通過解碼系統(tǒng)識別該信息,并可將識別信息進(jìn)一步傳遞到信息處理系統(tǒng)中進(jìn)行分析處理。
本文詳細(xì)論述了射頻識別卡Mifare1與其讀卡芯片MFRC522的特點(diǎn)與邏輯結(jié)構(gòu),基于模塊化的思想設(shè)計開發(fā)了基于單片機(jī)控制系統(tǒng)的射頻讀寫模塊并簡要分析了RFID讀寫模塊的程序控制和數(shù)據(jù)讀寫的設(shè)計與實(shí)現(xiàn)。
射頻IC卡選用MIFARE MF1標(biāo)準(zhǔn)卡片,MF1是符合ISO/IEC 1443A的非接觸智能卡,卡片上除了IC微型芯片及一個高效率天線外,無任何其他元件。MF1卡的核心是Philips公司的MF1 IC S50系列微晶片,內(nèi)建有高速的CMOS、EEPROM、MCU等。8K Bits的EEPROM存儲器空間被劃分為16個扇區(qū),每個扇區(qū)4塊,每塊16個字節(jié),以塊為存取單位,整張卡片可設(shè)計為城市一卡通形式。內(nèi)含加密控制邏輯和通訊邏輯電路,可設(shè)計為增/減值的專項數(shù)學(xué)運(yùn)算電路,非常適合公共交通行業(yè)的檢票/收費(fèi)系統(tǒng)。MF1卡的天線是只有幾組繞線的線圈,很適于封裝到IS0卡片中。微晶片連接到天線線圈上,并嵌入塑料中,形成了一個無源的非接觸卡片。工作時的能量由讀寫器天線發(fā)送頻率為13.56MHz無線電載波信號,以非接觸方式耦合到卡片上天線而產(chǎn)生電能,通??蛇_(dá)2V以上??ㄆ瑯?biāo)準(zhǔn)讀寫距離高達(dá)10cm,卡與讀寫器之間的通信速率高達(dá)106Kbit/s。
MF RC522是Philips公司推出的一款非接觸式低功耗讀寫基站芯片,利用先進(jìn)的調(diào)制和解調(diào)概念,完全集成了13.56MHz下所有類型的被動非接觸式通讀方式和協(xié)議。MFRC522支持ISO14443A所有的層,傳輸速度最高達(dá)424kbps。內(nèi)部發(fā)送器部分不需要增加有源電路就能直接驅(qū)動近操作距離的天線與ISO14443A/MIFARE卡和應(yīng)答機(jī)的通信。接收器部分提供一個功能強(qiáng)大的高效的解調(diào)和譯碼電路,用來處理兼容ISO14443A/MIFARE的卡和應(yīng)答機(jī)的信號。芯片具有充裕的64字節(jié)的發(fā)送接收緩沖區(qū),內(nèi)置CRC協(xié)處理器,帶低功耗功能的硬件復(fù)位電路和軟件掉電模式,還有內(nèi)部的自檢電路。MF RC522帶有靈活高速的串行接口IIC、SPI、Serial UART,方便連接到各種各樣的MCU上。
MF RC522芯片邏輯結(jié)構(gòu)框圖如圖1.1所示。
圖1.1 RC522邏輯結(jié)構(gòu)圖
圖2.1 讀寫系統(tǒng)結(jié)構(gòu)圖
圖3.1 RC522接口
圖3.2 天線電路
圖3.3 軟件流程圖
圖3.4 讀卡號結(jié)果
圖3.5 讀寫塊數(shù)據(jù)、修改塊密碼結(jié)果
RFID讀寫模塊主要由主控MCU、射頻讀寫芯片、天線及匹配電路三部分組成。主控MCU通過對射頻讀寫芯片內(nèi)寄存器的讀寫來控制芯片,芯片收到MCU發(fā)來的命令后,按照非接觸式射頻卡協(xié)議格式,通過天線及其匹配電路向附近發(fā)出一組固定頻率的調(diào)制信號(13.56MHz)進(jìn)行尋卡,若此范圍內(nèi)有卡片存在,卡片內(nèi)部的LC諧振電路在電磁波的激勵下產(chǎn)生共振,在卡片內(nèi)部電壓泵的作用下不斷為其另一端的電容充電,獲得能量,當(dāng)該電容電壓達(dá)到2V時,即可作為電源為卡片的其他電路提供工作電壓。
當(dāng)卡片上電路正常工作之后進(jìn)入通信流程,MCU向卡片發(fā)出尋卡命令,卡片將回復(fù)卡片類型,建立卡片與讀卡器的第一步聯(lián)系,若同時有多張卡片在天線的工作范圍內(nèi),讀卡器通過啟動防沖撞機(jī)制,根據(jù)卡片序列號來選定一張卡片,被選中的卡片再與讀卡器進(jìn)行密碼校驗,確保讀卡器對卡片有操作權(quán)限以及卡片的合法性,而未被選中的則仍然處在閑置狀態(tài),等待下一次尋卡命令。密碼驗證通過之后,就可以對卡片進(jìn)行讀寫等應(yīng)用操作。系統(tǒng)結(jié)構(gòu)如圖2.1所示。
MF RC522與MCU接口采用了四線制SPI,通信中的時鐘信號由MCU產(chǎn)生,RC522芯片接收來自MCU的數(shù)據(jù)以設(shè)置寄存器,并負(fù)責(zé)射頻接口通信中相關(guān)數(shù)據(jù)的收發(fā)。RC522的SPI總線接口有其自身的時序要求。它只能工作于從模式,最高傳輸速率為10Mbps,數(shù)據(jù)與時鐘相位關(guān)系滿足“空閑態(tài)時鐘為低電平,在時鐘上升沿同步接收和發(fā)送數(shù)據(jù),在下降沿數(shù)據(jù)轉(zhuǎn)換”的約束關(guān)系。數(shù)據(jù)的傳輸路徑為:MCU通過MOSI線將數(shù)據(jù)發(fā)到RC522,RC522通過MISO線發(fā)回至MCU,并且兩根線上的每一個字節(jié)都是先發(fā)高位。兩根數(shù)據(jù)線上的信號電平在時鐘信號必須保證上升沿穩(wěn)定,在下降沿才允許改變,可以連續(xù)讀寫N個字節(jié)。此外,MCU向RC522發(fā)送的第一個字節(jié)定義操作模式和所要操作的寄存器地址,最高位代表操作模式,1表示讀,0表示寫,中間六位(bit1~bit6)表示地址,最低位預(yù)留不用,默認(rèn)為0。
MFRC522芯片接口和天線部分電路如圖3.1和圖3.2所示。
MCU首先對RC522進(jìn)行初始化設(shè)置,寄存器配置,設(shè)置完成后RC522就可以與MF卡片通信了。RC522根據(jù)接收MCU的指令執(zhí)行相應(yīng)的操作,操作過程主要包括:尋卡,防沖突處理,選擇卡片,驗證卡片,讀寫操作。當(dāng)有MF卡進(jìn)入到射頻天線的有效范圍時,讀卡程序開始進(jìn)行上述一系列操作,操作流程如圖3.3所示。
RC522的驅(qū)動程序調(diào)試成功之后,下載到實(shí)驗板進(jìn)行檢驗。按照通信協(xié)議分別對讀卡、讀塊數(shù)據(jù)、寫塊數(shù)據(jù)、修改塊密碼等操作封裝,操作結(jié)果顯示在個性化的的人機(jī)交互界面。實(shí)驗過程分別對讀卡號操作以及選定卡片后對卡片的塊進(jìn)行讀寫數(shù)據(jù)和修改密碼等項進(jìn)行測試,測試結(jié)果如下圖3.4和圖3.5所示。
本文將高性能的讀卡芯片MFRC522和普通單片機(jī)結(jié)合在一起使用,沒有復(fù)雜的外圍電路,整個系統(tǒng)簡潔明了。MFRC522通過SPI方式與單片機(jī)通信,適應(yīng)市場上大部分的MCU,系統(tǒng)適應(yīng)性強(qiáng)。模塊化的設(shè)計了射頻讀寫系統(tǒng),方便用戶調(diào)用。以上介紹了基于RFID的單片機(jī)系統(tǒng)的設(shè)計方法和工作原理,實(shí)驗表明,此設(shè)計的電路運(yùn)行穩(wěn)定,讀寫數(shù)據(jù)準(zhǔn)確,操作時間較短。
[1]王愛英.智能卡技術(shù)(第三版)[M].北京:清華大學(xué)出版社,2009.
[2]陳保平,王月波,馬伯元.基于MF RC522的Mifare射頻卡讀寫模塊開發(fā).微計算機(jī)信息(嵌入式與SOC)[J].2007,23(11-2).
[3]嚴(yán)雄武.基于Mifare非接觸式IC卡的射頻識別系統(tǒng)研究與實(shí)現(xiàn)[D].武漢理工大學(xué),2005.
[4]嚴(yán)光文,張其善.射頻識別卡讀寫模塊的設(shè)計[J].北京航空航天大學(xué)學(xué)報,2003,29(2).