国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MFRC522的RFID讀卡器模塊設(shè)計(jì)

2010-05-11 11:58:00黃俊祥陶維青
關(guān)鍵詞:讀卡器字節(jié)寄存器

黃俊祥,陶維青

(合肥工業(yè)大學(xué) 電氣與自動(dòng)化學(xué)院,安徽 合肥 230009)

目前國(guó)內(nèi)的13.56 MHz RFID讀卡器芯片市場(chǎng)上,荷蘭恩智浦公司的Mifare非接觸讀卡芯片系列中MFRC522系列具有低電壓、低功耗、小尺寸、低成本等優(yōu)點(diǎn)。采用3.3 V統(tǒng)一供電,工作頻率為 13.56 MHz,兼容ISO/IEC 14443A及MIFARE模式。MFRC522主要包括兩部分,其中數(shù)字部分由狀態(tài)機(jī)、編碼解碼邏輯等組成;模擬部分由調(diào)制器、天線驅(qū)動(dòng)器、接收器和放大器組成[2]。MFRC522的內(nèi)部發(fā)送器無(wú)需外部有源電路即可驅(qū)動(dòng)讀寫(xiě)天線實(shí)現(xiàn)與符合ISO/IEC 14443A或MIFARE標(biāo)準(zhǔn)的卡片的通訊。接收器模塊提供了一個(gè)強(qiáng)健而高效的解調(diào)和解碼電路,用于接收兼容ISO/IEC 14443A和MIFARE的卡片信號(hào)。數(shù)字模塊控制全部ISO/IEC 14443A幀和錯(cuò)誤檢測(cè)(奇偶和CRC)功能。模擬接口負(fù)責(zé)處理模擬信號(hào)的調(diào)制和解調(diào)。非接觸式異步收發(fā)模塊配合主機(jī)處理通信協(xié)議所需要的協(xié)議。FIFO(先進(jìn)先出)緩存使得主機(jī)與非接觸式串行收發(fā)模塊之間的數(shù)據(jù)傳輸變得更加快速方便。

1 系統(tǒng)組成

如圖1所示,讀卡器模塊包括MCU、讀卡器芯片、天線及其濾波匹配電路。MCU選用TI公司的超低功耗單片機(jī)MSP430F149,該單片機(jī)支持多種低功耗模式,并能夠快速喚醒,具有60 KB+256 B的Flash、2 KB的RAM、兩個(gè)既可做異步UART又可以做SPI使用的串行通訊口、6組I/O口、一個(gè)內(nèi)部DCO和2個(gè)外部時(shí)鐘,非常適合開(kāi)發(fā)低功耗高性能的產(chǎn)品[3]。在本模塊中MCU通過(guò)SPI方式與 MFRC522連接,供電電壓均為 3.3 V,所以不再需要外圍的電壓轉(zhuǎn)換電路,外接一個(gè)天線及簡(jiǎn)單的濾波匹配電路,即可實(shí)現(xiàn)與卡片的通信。

2 工作原理

MCU通過(guò)對(duì)讀卡器芯片內(nèi)寄存器的讀寫(xiě)來(lái)控制讀卡器芯片,讀卡器芯片收到MCU發(fā)來(lái)的命令后,按照非接觸式射頻卡協(xié)議格式,通過(guò)天線及其匹配電路向附近發(fā)出一組固定頻率的調(diào)制信號(hào)(13.56 MHz)進(jìn)行尋卡,若此范圍內(nèi)有卡片存在,卡片內(nèi)部的LC諧振電路(諧振頻率與讀卡器發(fā)送的電磁波頻率相同)在電磁波的激勵(lì)下,產(chǎn)生共振,在卡片內(nèi)部電壓泵的作用下不斷為其另一端的電容充電,獲得能量,當(dāng)該電容電壓達(dá)到2 V時(shí),即可作為電源為卡片的其他電路提供工作電壓。

當(dāng)有卡片處在讀卡器的有效工作范圍內(nèi)時(shí),MCU向卡片發(fā)出尋卡命令,卡片將回復(fù)卡片類(lèi)型,建立卡片與讀卡器的第一步聯(lián)系,若同時(shí)有多張卡片在天線的工作范圍內(nèi),讀卡器通過(guò)啟動(dòng)防沖撞機(jī)制,根據(jù)卡片序列號(hào)來(lái)選定一張卡片,被選中的卡片再與讀卡器進(jìn)行密碼校驗(yàn),確保讀卡器對(duì)卡片有操作權(quán)限以及卡片的合法性,而未被選中的則仍然處在閑置狀態(tài),等待下一次尋卡命令。密碼驗(yàn)證通過(guò)之后,就可以對(duì)卡片進(jìn)行讀寫(xiě)等應(yīng)用操作。

3 MFRC522與MCU接口實(shí)現(xiàn)

MFRC522提供了3種接口模式:高達(dá)10 Mb/s的SPI、I2C總線模式 (快速模式下能達(dá) 400 kb/s,而高速模式下能達(dá)3.4 Mb/s)、最高達(dá)1228.8 kb/s的UART模式。每次上電或硬件重啟之后MFRC522復(fù)位其接口,并通過(guò)檢測(cè)控制引腳上的電平信號(hào)來(lái)判別當(dāng)前與主機(jī)的接口模式,這樣給讀寫(xiě)設(shè)備的開(kāi)發(fā)帶來(lái)了極大的可選擇性。與判別接口模式有關(guān)的兩個(gè)引腳為IIC和EA:當(dāng)IIC引腳拉高時(shí),表示當(dāng)前模式為IIC方式,若IIC引腳為低電平時(shí),再通過(guò)EA引腳電平來(lái)區(qū)分,EA為高表示SPI模式,為低則表示UART方式。

本設(shè)計(jì)中采用了四線制SPI,通信中的時(shí)鐘信號(hào)由MCU產(chǎn)生,MFRC522芯片設(shè)置為從機(jī)模式,接收來(lái)自MCU的數(shù)據(jù)以設(shè)置寄存器,并負(fù)責(zé)射頻接口通信中相關(guān)數(shù)據(jù)的收發(fā)。數(shù)據(jù)的傳輸路徑為:MCU通過(guò)MOSI線將數(shù)據(jù)發(fā)到 MFRC522,MFRC522通過(guò) MISO線發(fā)回至MCU,并且兩根線上的每一個(gè)字節(jié)都是先發(fā)高位。兩根數(shù)據(jù)線上的信號(hào)電平在時(shí)鐘信號(hào)必須保證上升沿穩(wěn)定,在下降沿才允許改變,可以連續(xù)讀寫(xiě)N個(gè)字節(jié)。此外,MCU向MFRC522發(fā)送的第一個(gè)字節(jié)定義操作模式和所要操作的寄存器地址,最高位代表操作模式,1表示讀,0表示寫(xiě),中間六位(bit1~bit6)表示地址,最低位預(yù)留不用,默認(rèn)為 0。

因?yàn)镸SP430F149的SPI接口個(gè)數(shù)有限,在此通過(guò)軟件模擬SPI方式,不僅增加了 MSP430F149的SPI接口數(shù)量,更充分利用了MSP430F149本身豐富的I/O口。在此模式下,IIC引腳為低電平,EA引腳為高電平,相應(yīng)的SDA 和 D7、D6、D5 分別用作 NSS、MISO、MOSI、SCK。 接口原理如圖2。

讀操作(主機(jī)最先發(fā)送字節(jié)的最高位為1):首先將NSS拉低 (使能通信),將要讀出數(shù)據(jù)的MFRC522地址字節(jié)按數(shù)據(jù)表規(guī)定的格式進(jìn)行編碼;然后循環(huán)8次,按編碼后的字節(jié)逐位將MOSI線上數(shù)據(jù)置一或清零;地址發(fā)出去之后,MFRC522收到讀命令,會(huì)將對(duì)應(yīng)地址值通過(guò)MISO發(fā)回主機(jī),所以主機(jī)只需循環(huán)8次,把MISO上的數(shù)據(jù)逐位讀出,存入臨時(shí)變量中。最后將NSS拉高,一字節(jié)的讀操作完成。

寫(xiě)操作(主機(jī)最先發(fā)送字節(jié)的最高位為 0):同樣首先將NSS拉低,將目標(biāo)地址字節(jié)按數(shù)據(jù)表中規(guī)定的格式進(jìn)行編碼;然后循環(huán)8次將地址發(fā)送出去后,再進(jìn)行8次循環(huán),將所需寫(xiě)入的數(shù)據(jù)仍通過(guò)MOSI發(fā)送過(guò)去,MFRC522對(duì)應(yīng)地址的字節(jié)數(shù)據(jù)即可實(shí)現(xiàn)更新。

當(dāng)有多個(gè)數(shù)據(jù)要傳送時(shí),數(shù)據(jù)是通過(guò)FIFO緩存來(lái)處理的(見(jiàn)圖1),即不斷向FIFO數(shù)據(jù)寄存器進(jìn)行讀寫(xiě)操作。MFRC522具有64 B的FIFO緩存器,專(zhuān)門(mén)用來(lái)緩存主機(jī)與MFRC522內(nèi)部狀態(tài)機(jī)之間的輸入和輸出數(shù)據(jù)流,F(xiàn)IFO緩存器數(shù)據(jù)輸入輸出總線是與FIFO數(shù)據(jù)寄存器相連的,每寫(xiě)一個(gè)數(shù)據(jù)到這個(gè)寄存器都會(huì)存1 B到FIFO緩存器,并使其寫(xiě)指針加一;相反,從這個(gè)寄存器讀數(shù)據(jù)能得到讀指針?biāo)谔幍臄?shù)據(jù),并且使讀指針減小,寫(xiě)指針和讀指針之間的距離就是FIFO緩沖器中的數(shù)據(jù)字節(jié)數(shù),反映在相應(yīng)的寄存器中。此外,可以通過(guò)重設(shè)FIFO緩存器的指針來(lái)清空緩沖器。

4 MFRC522天線模塊設(shè)計(jì)

13.56 MHz射頻天線及其匹配電路共有三塊:天線線圈、匹配電路(LC諧振電路)和EMC濾波電路[2]。在天線的匹配設(shè)計(jì)中必須保證產(chǎn)生一個(gè)盡可能強(qiáng)的電磁場(chǎng),以使卡片能夠獲得足夠的能量給自己供電,而且考慮到調(diào)諧電路的帶通特性,天線的輸出能量必須保證足夠的通帶范圍來(lái)傳送調(diào)制后的信號(hào)。

天線線圈就是一個(gè)特定諧振頻率的LC電路,其輸入阻抗是輸入端信號(hào)電壓與信號(hào)電流之比,輸入阻抗具有電感分量和電抗分量,電抗分量的存在會(huì)減少天線從饋線對(duì)信號(hào)功率的提取,因此在設(shè)計(jì)中應(yīng)當(dāng)盡可能使電抗分量為零,即讓天線表現(xiàn)出純電阻特性,這時(shí)電路實(shí)現(xiàn)諧振[4],諧振頻率計(jì)算公式為:

式中,L為天線等效電感,C為天線等效電容,在本設(shè)計(jì)中,天線工作頻率 f為 13.56 MHz,如果天線的等效電感L太高,等效電容C的值就只能很小了,而一旦超出5 μH,電容匹配的問(wèn)題就變得更難了。但因?yàn)樗玫男酒琈FRC522上具有兩個(gè)TX引腳,可以在TX1和TX2上并聯(lián)兩個(gè)天線,從而使得感抗減半。環(huán)形天線電感經(jīng)驗(yàn)計(jì)算公式[5]為:

其中:I1為環(huán)形天線一圈的長(zhǎng)度;D1為導(dǎo)線的直徑,或PCB板上天線導(dǎo)線的寬度;K為天線形狀因素 (圓形天線取1.07,矩形天線取1.47);N1為天線的圈數(shù);p為與線圈結(jié)構(gòu)相關(guān)的系數(shù),印刷電路板線圈的取為1.8。

天線品質(zhì)因數(shù)Q,計(jì)算公式如下:

天線的Q值用來(lái)評(píng)價(jià)回路輸出效率,Q值越高,其能量輸出效率越高,但當(dāng)Q值過(guò)高時(shí),其特性會(huì)導(dǎo)致通帶變窄,副載波頻率處的能量幅度太小甚至在天線的邊帶之外,從而影響調(diào)制信號(hào)的發(fā)送,得不償失。因此采用10~30的低Q值設(shè)計(jì)[5],若經(jīng)式(3)計(jì)算的Q值大于 30,可在天線的兩邊分別串聯(lián)一個(gè)電阻Rq以降低Q值,相當(dāng)于天線增加電阻,R變成 Ra+2Rq,由式(3)可推出每邊電阻的計(jì)算公式為:

式中:ω=22πf;La為天線電感;Q 為擬調(diào)整值 (此處為30);Ra天線電阻。

如圖3所示,在發(fā)送部分,引腳 TX1和 TX2上發(fā)送的信號(hào)是由包絡(luò)信號(hào)調(diào)制的13.56 MHz載波能量,經(jīng)過(guò)L0和 C0組成的 EMC濾波電路以及 C1、C2、Rq(其中 Rq只在Q值太高的情況下需要)組成的匹配電路,就可直接用來(lái)驅(qū)動(dòng)天線,TX1和TX2上的信號(hào)可通過(guò)寄存器TxSelReg來(lái)設(shè)置,系統(tǒng)默認(rèn)為內(nèi)部米勒脈沖編碼后的調(diào)制信號(hào)。調(diào)制系數(shù)可以通過(guò)調(diào)整驅(qū)動(dòng)器的阻抗(通過(guò)設(shè)置寄存器 CWGsPReg、ModGsPReg、GsNReg來(lái)實(shí)現(xiàn))來(lái)設(shè)置,同樣采用默認(rèn)值即可。在接收部分,使用R2和C4以保證Rx引腳的直流輸入電壓保持在 VMID,R1和C3的作用是調(diào)整Rx引腳的交流輸入電壓。

5 軟件流程

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

[1]紀(jì)震.電子標(biāo)簽原理與應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2006.

[2]NXP Inc.MFRC522 Contactless Reader IC product data sheet(Rev.3.2)[EB/OL].2007.http://www.nxp.com.

[3]Texas Instruments Inc.MSP430x14x Mixed Signal Microcontroller[EB/OL].2004.http://www.ti.com.

[4]NUMMELA J,UKKONEN L,SYDANHEIMO L,et al.13.56 MHz RFID antenna for cell phone integrated reader[J].Antennas and Propagation International Symposium 2007 IEEE,2007(6):1088-1091.

[5]NXP Inc.Directly Matched Antenna Design(Rev.2.05)[EB/OL].2006.http://www.nxp.com.

[6]NXP Inc.Mifare ISO/IEC 14443 PICC Selection(Rev.1.0)[EB/OL].2006.http://www.nxp.com.

猜你喜歡
讀卡器字節(jié)寄存器
No.8 字節(jié)跳動(dòng)將推出獨(dú)立出口電商APP
與淘汰命運(yùn)抗?fàn)帯】炊P記本的讀卡器
Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
No.10 “字節(jié)跳動(dòng)手機(jī)”要來(lái)了?
簡(jiǎn)談MC7字節(jié)碼
分簇結(jié)構(gòu)向量寄存器分配策略研究*
基于EMV非接通信規(guī)范的非接觸讀卡器設(shè)計(jì)
為二維碼識(shí)別的獻(xiàn)禮之作——評(píng)測(cè)平治二維碼門(mén)禁讀卡器
MATLAB實(shí)現(xiàn)組態(tài)王中TCP/IP讀卡器監(jiān)控方法
高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
阳新县| 陇川县| 汪清县| 天峨县| 城步| 莒南县| 萍乡市| 天全县| 来凤县| 特克斯县| 西乌珠穆沁旗| 文化| 融水| 灌阳县| 建宁县| 拜城县| 木里| 藁城市| 呼和浩特市| 衡东县| 隆安县| 远安县| 水城县| 永平县| 汝阳县| 抚松县| 鄂伦春自治旗| 大宁县| 新丰县| 杭锦旗| 开阳县| 右玉县| 马山县| 旬阳县| 油尖旺区| 麻城市| 马公市| 德惠市| 卓资县| 宜兴市| 灯塔市|