基于MF RC522的Mifare射頻卡讀寫模塊開發(fā)
IC卡按卡與外界數(shù)據(jù)傳送的形式不同,分為接觸式 IC卡和非接觸式 IC卡。接觸式 IC卡通過觸點從讀寫模塊獲取能量和交換數(shù)據(jù);非接觸式 IC卡通過射頻感應(yīng)從讀寫模塊獲取能量和交換數(shù)據(jù),所以非接觸式 IC卡又叫射頻卡。與傳統(tǒng)的接觸式 IC卡、磁卡相比較,利用射頻識別技術(shù)(radio frequency identification)開發(fā)的非接觸式 IC識別器,在系統(tǒng)壽命、防監(jiān)聽、防解密等性能上具有很大的優(yōu)勢。目前我國引進的射頻 IC卡主要有 Philips公司的 Mifare卡和 ATMEL公司的 Temic卡。而PHILIPS公司的 Mifare卡現(xiàn)在是市場的主流產(chǎn)品,應(yīng)用越來越廣。本文介紹的是利用基于 ARM7 CPU 的 LPC2132、MF RC522、Mifare卡等構(gòu)建射頻識別模塊的設(shè)計,并在該讀寫模塊基礎(chǔ)上能很容易地開發(fā)出適用于各方面的自動識別系統(tǒng)。
1 MF RC522介紹
MF RC522是 Philips公司針對三表最新推出的一款非接觸式低功耗讀寫基站芯片,它是應(yīng)用于 13.56MHz非接觸式通信中高集成讀卡芯片系列中的一員。該讀卡芯片系列利用了先進的調(diào)制和解調(diào)概念,完全集成了 13.56MHz下所有類型的被動非接觸式通讀方式和協(xié)議。MF RC522支持 ISO14443A所有的層,傳輸速度最高達424kbps,內(nèi)部的發(fā)送器部分不需要增加有源電路就能夠直接驅(qū)動近距離天線,接收部分提供了一個堅固而有效的解調(diào)和解碼電路,用于接收 ISO14443A兼容的應(yīng)答信號。數(shù)字處理部分提供奇偶和 CRC檢測功能。RC522具有三種接口方式可方便地與任何 MCU通訊:SPI模式、UART模式、I2C模式。甚至可通過RS232或 RS485通訊方式直接與 PC機相聯(lián),給終端設(shè)計提供了前所未有的靈活性。
2 系統(tǒng)組成
如圖 1所示,系統(tǒng)主要由 MCU LPC2132、MF RC522、人機接口以及通信模塊組成。系統(tǒng)的工作方式主要是,先由 MCU控制MF RC522驅(qū)動天線對 Mifare卡也就是應(yīng)答器(PICC)進行讀寫操作。然后,根據(jù)所得的數(shù)據(jù)對其它接口器件,如人機接口部件、LPC2132內(nèi)部的存儲器、時鐘芯片等進行響應(yīng)操作。最后,與 PC機之間進行通信把數(shù)據(jù)傳給上位機。
這里MCU 選用基于ARM7的LPC2132大大簡化了系統(tǒng)硬件電路的設(shè)計。除了具有高性能、開發(fā)簡單等優(yōu)點外,LPC2132集成的看門狗功能可以保證系統(tǒng)在一定的時間內(nèi)如果工作不正常時將 MCU復(fù)位使其重新工作 [1]。另一方面LPC2132內(nèi)部的SPI 、I2C 和UART通訊接口可以方便地和 MF RC522實現(xiàn)多種通訊方式,滿足了各種情況的需要。再者,2132還擁有滿足系統(tǒng)存儲所需足夠大小的內(nèi)部Flash,而無需外接存儲設(shè)備。
通訊模塊負責(zé)上位機(PC端)與下位機(讀寫模塊)的通訊,本系統(tǒng)采用了兩種方式:一種是 RS232通訊,它應(yīng)用于 PC機對一臺閱讀器的操作;一種是 RS485通訊,它應(yīng)用于 PC機對多臺閱讀器的操作。兩種通訊方式都可將 PC機的命令傳達給讀寫模塊。
人機接口使系統(tǒng)具有良好的人機交互界面。本系統(tǒng)具有液晶顯示、鍵盤、語音輸出等部件。應(yīng)用者可通過液晶顯示或通過語音輸出判別卡片的號碼、基本個人信息、以及卡片中的余額是否正確。
3 系統(tǒng)工作原理
首先,MF RC522 射頻卡讀寫模塊(下面簡稱讀寫模塊)通過天線向射頻卡(非接觸卡)發(fā)送無線載波信號,這些信號經(jīng)過射頻卡的天線耦合接收后,先進行波形轉(zhuǎn)換,然后對其整流濾波,由電壓調(diào)節(jié)模塊對電壓進行進一步的處理,包括穩(wěn)壓等,最終輸出到射頻卡上的各級電路上。 此時,非接觸卡接收到載波信號后就通過本卡片上的調(diào)制/解調(diào)電路對載波信號進行調(diào)制/解調(diào),處理后的信號就送到卡片上的控制器以供控制及處理[2]。非接觸卡處理好數(shù)據(jù)后,也通過它本身的天線向 MF RC522返回載波信號,MF RC522也通過自身的調(diào)制/解調(diào)電路來對這些信號進行處理。這些返回的載波信號的頻率與 MF RC522發(fā)出的載波信號的頻率是一致的。通過這樣一個通訊回路,MF RC522就可以對非接觸卡的內(nèi)容進行讀寫操作。這里需要說明的是:非接觸型 IC卡本身是無源體, 當(dāng)讀寫器對卡進行讀寫操作時, 讀寫模塊發(fā)出的信號由兩部分疊加組成:一部分是電源信號,該信號由卡接收后, 與其本身的L/C產(chǎn)生諧振, 產(chǎn)生一個瞬間能量來供給芯片工作。另一部分則是結(jié)合數(shù)據(jù)信號,指揮芯片完成數(shù)據(jù)、修改、存儲等,并返回給讀寫模塊。
如上所述可以看出,讀寫模塊的性能與天線的參數(shù)有著直接的關(guān)系。天線的性能高低決定著讀卡的距離遠近。因此,下面將就影響天線性能的參數(shù)做一些探討。
4 讀寫模塊的天線設(shè)計
電感耦合射頻識別系統(tǒng)的讀寫模塊中的天線用于產(chǎn)生交變磁通量,而交變磁通量用于向 PICC提供電源并在讀寫模塊與 PICC之間傳送信息。因此,天線的構(gòu)造有以下幾個基本要求:
1)使天線線圈的電流最大,用于產(chǎn)生最大的磁通量峰值;
2)功率匹配,最大程度地利用產(chǎn)生交變磁通量的可用能量;
3)足夠的帶寬,無失真地傳送用數(shù)據(jù)調(diào)制的載波信號。
在天線設(shè)計中,品質(zhì)因數(shù) Q是一個非常重要的參數(shù)。對于電感耦合式射頻識別系統(tǒng)的天線,其特征值就是它的諧振頻率和品質(zhì)因數(shù)的值。較高的品質(zhì)因數(shù)的值會使天線線圈中的電流強度大些,由此改善對 PICC的功率傳送。與之相反,天線的傳輸帶寬剛好與品質(zhì)因數(shù)值成反比例變化,選擇的品質(zhì)因數(shù)過高會導(dǎo)致帶寬縮小從而明顯地減弱 PICC接收到的調(diào)制邊帶。計算品質(zhì)因數(shù)的公式如下:
式(1)中的 f是工作頻率,Lcoil是天線的尺寸,Rcoil是天線的半徑。通過品質(zhì)因數(shù)可以很容易計算出天線的帶寬 B:
B=f/Q (2)
從式(2)中可以看出,天線的傳輸帶寬與品質(zhì)因數(shù)成反比關(guān)系。因此,過高的品質(zhì)因數(shù)會導(dǎo)致帶寬縮小。從而減弱閱讀器的調(diào)制邊帶,會導(dǎo)致讀寫模塊無法與卡通信。一般系統(tǒng)的最佳品質(zhì)因數(shù)為 10~30,最大值不能超過 60。如果太高,卡將無法準(zhǔn)確地識別復(fù)位響應(yīng)。
5 MF RC522與 LPC2132的部分接口電路
MF RC522與 LPC2132的硬件電路連接如圖 2所示,在本系統(tǒng)中這兩者之間的通訊采用的是 SPI方式[3],當(dāng)然也可選擇 I2C、或 UART方式,可以根據(jù)不同情況進行選擇。在圖 2中省略了一些 LPC2132沒有用到的引腳和那些相對簡單的電源、外部晶振等電路。
6 對 Mifarel卡操作的軟件設(shè)計
LPC2132首先對 MF RC522進行初始化配置,寄存器設(shè)置好后 MF RC522就可以接收 MCU的命令執(zhí)行操作,實現(xiàn)與 Mifare 卡片通信了。Mifare卡可以根據(jù)接收到的指令進行相應(yīng)操作。但是 LPC2132并不是通過簡單的指令就可以讀寫 IC卡片,需要一系列的操作才能完成通信。主要包括:(1)請求喚醒;(2)防重疊(防止多張卡片重疊造成的數(shù)據(jù)錯誤);(3)選擇卡片;(4)密碼認證;(5)讀寫操作。 LPC2132對 Mifare卡片的這一系列操作流程必須按固定的順序進行。當(dāng)有 Mifare卡進入到射頻天線的有效范圍,讀卡程序?qū)㈤_始進行上述一系列的操作[4],程序流程如圖 3所示。
7 結(jié)束語
本文作者創(chuàng)新點是:將高性能的讀卡芯片 MF RC522和具有高軟、硬件集成度的 LPC2132 MCU結(jié)合在了一起使用。系統(tǒng)省去了外部存儲設(shè)備和看門狗等復(fù)雜外接電路。使得整個系統(tǒng)簡潔、明了。MF RC522可以通過 SPI、I2C、UART三種方式與 MCU進行通訊,而 LPC2132本身正好完全集成了這三種接口。且 LPC2132對這些內(nèi)部功能在軟件編程上也提供了開發(fā)包??傊琈 F RC522和 LPC2132在硬件和軟件上都實現(xiàn)了完美的結(jié)合。
以上介紹了基于 MF RC522模組的 Mifare射頻卡識別系統(tǒng)的組成、工作原理及其設(shè)計方法。實驗表明,由此方法設(shè)計的電路運行穩(wěn)定,讀寫數(shù)據(jù)準(zhǔn)確且具有非常短的交換時間。