基于MFRC522的RFID讀卡器模塊設計及實現
出處:黃俊祥1, 陶維青2 發(fā)布于:2011-06-21 22:11:09
RFID是射頻識別的英文縮寫。通俗地說,RFID讀卡器是一種能閱讀電子標簽數據的自動識別設備。RFID讀卡器RFID射頻識別是一種非接觸式的自動識別技術,它通過射頻信號自動識別目標對象并獲取相關數據,識別工作無須人工干預,可工作于各種惡劣環(huán)境。RFID技術可識別高速運動物體并可同時識別多個標簽,操作快捷方便。
目前國內的13.56MHzRFID讀卡器芯片市場上,荷蘭恩智浦公司的Mifare非接觸讀卡芯片系列中MFRC522系列具有低電壓、低功耗、小尺寸、低成本等優(yōu)點。采用3.3V統(tǒng)一供電,工作頻率為13.56MHz,兼容ISO/IEC14443A及MIFARE模式。MFRC522主要包括兩部分,其中數字部分由狀態(tài)機、編碼解碼邏輯等組成;模擬部分由調制器、天線驅動器、接收器和放大器組成。MFRC522的內部發(fā)送器無需外部有源電路即可驅動讀寫天線實現與符合ISO/IEC14443A或MIFARE標準的卡片的通訊。接收器模塊提供了一個強健而高效的解調和解碼電路,用于接收兼容ISO/IEC14443A和MIFARE的卡片信號。數字模塊控制全部ISO/IEC14443A幀和錯誤檢測(奇偶和CRC)功能。模擬接口負責處理模擬信號的調制和解調。非接觸式異步收發(fā)模塊配合主機處理通信協議所需要的協議。FIFO(先進先出)緩存使得主機與非接觸式串行收發(fā)模塊之間的數據傳輸變得更加快速方便。
1 系統(tǒng)組成
如圖1所示,讀卡器模塊包括MCU、讀卡器芯片、天線及其濾波匹配電路。MCU選用TI公司的超低功耗單片機MSP430F149,該單片機支持多種低功耗模式,并能夠快速喚醒,具有60KB+256B的Flash、2KB的RAM、兩個既可做異步UART又可以做SPI使用的串行通訊口、6組I/O口、一個內部DCO和2個外部時鐘,非常適合開發(fā)低功耗高性能的產品。在本模塊中MCU通過SPI方式與MFRC522連接,供電電壓均為3.3V,所以不再需要外圍的電壓轉換電路,外接一個天線及簡單的濾波匹配電路,即可實現與卡片的通信。

2 工作原理
MCU通過對讀卡器芯片內寄存器的讀寫來控制讀卡器芯片,讀卡器芯片收到MCU發(fā)來的命令后,按照非接觸式射頻卡協議格式,通過天線及其匹配電路向附近發(fā)出一組固定頻率的調制信號(13.56MHz)進行尋卡,若此范圍內有卡片存在,卡片內部的LC諧振電路(諧振頻率與讀卡器發(fā)送的電磁波頻率相同)在電磁波的激勵下,產生共振,在卡片內部電壓泵的作用下不斷為其另一端的電容充電,獲得能量,當該電容電壓達到2V時,即可作為電源為卡片的其他電路提供工作電壓。
當有卡片處在讀卡器的有效工作范圍內時,MCU向卡片發(fā)出尋卡命令,卡片將回復卡片類型,建立卡片與讀卡器的步聯系,若同時有多張卡片在天線的工作范圍內,讀卡器通過啟動防沖撞機制,根據卡片序列號來選定一張卡片,被選中的卡片再與讀卡器進行密碼校驗,確保讀卡器對卡片有操作權限以及卡片的合法性,而未被選中的則仍然處在閑置狀態(tài),等待下尋卡命令。密碼驗證通過之后,就可以對卡片進行讀寫等應用操作。
3 MFRC522與MCU接口實現
MFRC522提供了3種接口模式:高達10Mb/s的SPI、I2C總線模式(快速模式下能達400kb/s,而高速模式下能達3.4Mb/s)、達1228.8kb/s的UART模式。每次上電或硬件重啟之后MFRC522復位其接口,并通過檢測控制引腳上的電平信號來判別當前與主機的接口模式。與判別接口模式有關的兩個引腳為IIC和EA:當IIC引腳拉高時,表示當前模式為IIC方式,若IIC引腳為低電平時,再通過EA引腳電平來區(qū)分,EA為高表示SPI模式,為低則表示UART方式。
本設計中采用了四線制SPI,通信中的時鐘信號由MCU產生,MFRC522芯片設置為從機模式,接收來自MCU的數據以設置寄存器,并負責射頻接口通信中相關數據的收發(fā)。兩根數據線上的信號電平在時鐘信號必須保證上升沿穩(wěn)定,在下降沿才允許改變,可以連續(xù)讀寫N個字節(jié)。此外,MCU向MFRC522發(fā)送的個字節(jié)定義操作模式和所要操作的寄存器地址,位代表操作模式,1表示讀,0表示寫,中間六位(bit1~bit6)表示地址,位預留不用,默認為0.
因為MSP430F149的SPI接口個數有限,在此通過軟件模擬SPI方式,不僅增加了MSP430F149的SPI接口數量,更充分利用了MSP430F149本身豐富的I/O口。在此模式下,IIC引腳為低電平,EA引腳為高電平,相應的SDA和D7、D6、D5分別用作NSS、MISO、MOSI、SCK.接口原理如圖2.

讀操作(主機發(fā)送字節(jié)的位為1):首先將NSS拉低(使能通信),將要讀出數據的MFRC522地址字節(jié)按數據表規(guī)定的格式進行編碼;然后循環(huán)8次,按編碼后的字節(jié)逐位將MOSI線上數據置一或清零;地址發(fā)出去之后,MFRC522收到讀命令,會將對應地址值通過MISO發(fā)回主機,所以主機只需循環(huán)8次,把MISO上的數據逐位讀出,存入臨時變量中。將NSS拉高,一字節(jié)的讀操作完成。
寫操作(主機發(fā)送字節(jié)的位為0):同樣首先將NSS拉低,將目標地址字節(jié)按數據表中規(guī)定的格式進行編碼;然后循環(huán)8次將地址發(fā)送出去后,再進行8次循環(huán),將所需寫入的數據仍通過MOSI發(fā)送過去,MFRC522對應地址的字節(jié)數據即可實現更新。
當有多個數據要傳送時,數據是通過FIFO緩存來處理的(見圖1),即不斷向FIFO數據寄存器進行讀寫操作。MFRC522具有64B的FIFO緩存器,專門用來緩存主機與MFRC522內部狀態(tài)機之間的輸入和輸出數據流,FIFO緩存器數據輸入輸出總線是與FIFO數據寄存器相連的,每寫一個數據到這個寄存器都會存1B到FIFO緩存器,并使其寫指針加一;相反,從這個寄存器讀數據能得到讀指針所在處的數據,并且使讀指針減小,寫指針和讀指針之間的距離就是FIFO緩沖器中的數據字節(jié)數,反映在相應的寄存器中。此外,可以通過重設FIFO緩存器的指針來清空緩沖器。
4 MFRC522天線模塊設計
13.56MHz射頻天線及其匹配電路共有三塊:天線線圈、匹配電路(LC諧振電路)和EMC濾波電路。在天線的匹配設計中必須保證產生一個盡可能強的電磁場,以使卡片能夠獲得足夠的能量給自己供電,而且考慮到調諧電路的帶通特性,天線的輸出能量必須保證足夠的通帶范圍來傳送調制后的信號。
天線線圈就是一個特定諧振頻率的LC電路,其輸入阻抗是輸入端信號電壓與信號電流之比,輸入阻抗具有電感分量和電抗分量,電抗分量的存在會減少天線從饋線對信號功率的提取,因此在設計中應當盡可能使電抗分量為零,即讓天線表現出純電阻特性,這時電路實現諧振,諧振頻率計算公式為:

式中,L為天線等效電感,C為天線等效電容,在本設計中,天線工作頻率f為13.56MHz,如果天線的等效電感L太高,等效電容C的值就只能很小了,而一旦超出5μH,電容匹配的問題就變得更難了。但因為所用的芯片MFRC522上具有兩個TX引腳,可以在TX1和TX2上并聯兩個天線,從而使得感搞減半。環(huán)形天線電感經驗計算公式為:

其中:I1為環(huán)形天線一圈的長度:D1為導線的直徑,或PCB板上天線導線的寬度;K為天線環(huán)形因素(圓形天線取1.07,矩形天線取1.47);N1為天線的圈數;P為與天線圈結構相關的系數,印刷電路板線圈的取為1.8.
天線品質因數Q,計算公式如下:

天線的Q值用來評價回路輸出效率,Q值越高,其能量輸出效率越高,但當Q值過高時,其特性會導致通帶變窄,副載波頻率處的能量幅度太小甚至在天線的邊帶之外,從而影響調制信號的發(fā)送,得不償失。因此采用10︿30的低Q值設計,若經式(3)計算的Q值大于30,可在天線的兩邊分別串聯一個電阻Rq以降低Q值,相當于天線增加電阻,R變?yōu)镽a+2Rq,由式(3)可推出每邊電阻的計算公式為:

式中:ω=22πf;La為天線電感;Q為擬調整值(此處為30);Ra天線電阻。
如圖3所示,在發(fā)送部分,引腳TX1和TX2上發(fā)送的信號是由包絡信號調制的13.56MHz載波能量,經過L0和C0組成的EMC濾波電路以及C1、C2、Rq組成的匹配電路,就可直接用來驅動天線,TX1和TX2上的信號可通過寄存器TxSelReg來設置,系統(tǒng)默認為內部米勒脈沖編碼后的調制信號。調制系數可以通過調整驅動器的阻抗來設置,同樣采用默認值即可。在接收部分,使用R2和C4以保證Rx引腳的直流輸入電壓保持在VMID,R1和C3的作用是調整Rx引腳的交流輸入電壓。

5 軟件流程
系統(tǒng)初始化完成后,就進入讀卡器與卡片的應用操作準備階段,此期間要進行尋卡、防碰撞、選卡以及密碼校驗,密碼校驗通過后再根據應用操作代碼進行相應的操作:讀卡片塊數據、向卡片的某塊寫數據、充值扣款、數據備份、或是使卡進入停機狀態(tài)。流程圖如圖4所示。

參考文獻:
[1]. MFRC522 datasheet http://www.hbjingang.com/datasheet/MFRC522_2417831.html.
[2]. MSP430F149 datasheet http://www.hbjingang.com/datasheet/MSP430F149_874114.html.
[3]. EMC datasheet http://www.hbjingang.com/datasheet/EMC_2342312.html.
[4]. PCB datasheet http://www.hbjingang.com/datasheet/PCB_1201640.html.
版權與免責聲明
凡本網注明“出處:維庫電子市場網”的所有作品,版權均屬于維庫電子市場網,轉載請必須注明維庫電子市場網,http://www.hbjingang.com,違反者本網將追究相關法律責任。
本網轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品出處,并自負版權等法律責任。
如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網聯系,否則視為放棄相關權利。
- ARM技術架構與應用開發(fā)實踐指南2026/1/6 10:40:19
- 嵌入式實時操作系統(tǒng)(RTOS)選型與移植技術指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術選型與抗干擾設計實踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開啟異核通信新時代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎知識2025/7/14 16:59:04









