《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于FM1702SL的射頻讀寫(xiě)器
基于FM1702SL的射頻讀寫(xiě)器
摘要: 系統(tǒng)由MCU、鍵盤(pán)、EEPROM、FMl702SL、液晶屏、485通信模塊組成。MCu控制FMl702對(duì)Mifare卡進(jìn)行讀寫(xiě)操作,再根據(jù)得到的相應(yīng)數(shù)據(jù)對(duì)液晶屏、EEPROM進(jìn)行相應(yīng)的操作。MCU 與PC機(jī)通過(guò)485,總線通信,即使PC機(jī)與MCU之間通信發(fā)生異常,MCU也可以獨(dú)立工作,在與PC機(jī)通信恢復(fù)之后,MCU可以將備份在EEPROM中的信息再傳給PC機(jī)。
Abstract:
Key words :

  系統(tǒng)設(shè)計(jì)

  系統(tǒng)框圖如圖1所示,系統(tǒng)由MCU、鍵盤(pán)、EEPROM、FMl702SL、液晶屏、485通信模塊組成。MCu控制FMl702對(duì)Mifare卡進(jìn)行讀寫(xiě)操作,再根據(jù)得到的相應(yīng)數(shù)據(jù)對(duì)液晶屏、EEPROM進(jìn)行相應(yīng)的操作。MCU 與PC機(jī)通過(guò)485,總線通信,即使PC機(jī)與MCU之間通信發(fā)生異常,MCU也可以獨(dú)立工作,在與PC機(jī)通信恢復(fù)之后,MCU可以將備份在EEPROM中的信息再傳給PC機(jī)。

系統(tǒng)框圖

  P8912C931是一款單片封裝的微控制器。P89LPC931采用了高性能的處理器結(jié)構(gòu),指令執(zhí)行時(shí)間只需2~4個(gè)時(shí)鐘周期。 P89LPC931集成了許多系統(tǒng)級(jí)的功能,這樣可大大減少元件的數(shù)目和電路板面積,并降低系統(tǒng)的成本。EEPROM用的是FM24C64L,它是一款以 I2C為操作方式的存儲(chǔ)芯片。液晶驅(qū)動(dòng)芯片是PCF8576,也是以I2C為操作方式。整個(gè)系統(tǒng)用12V電源供電,再由穩(wěn)壓芯片2576穩(wěn)壓成3.6V。

  工作原理

  Mifare卡包含一片容量為8K位EEPROM,為16個(gè)扇區(qū),每個(gè)扇區(qū)為4塊,每塊16個(gè)字節(jié),以塊為存取單位,每個(gè)扇區(qū)有獨(dú)立的一組密碼及訪問(wèn)控制。每張卡有唯一序列號(hào),為32位。無(wú)電源,自帶高頻天線,內(nèi)含加密控制邏輯和通訊邏輯電路。

  信息存儲(chǔ)在Mifare卡里,讀寫(xiě)器與Mifare卡通過(guò)各自的天線建立起二者之間非接觸信息傳輸通道。當(dāng)Mifare卡進(jìn)人系統(tǒng)的工作區(qū)域時(shí),讀寫(xiě)器向Mifare卡發(fā)一組固定頻率的電磁波,Mifare卡內(nèi)有一個(gè)LC串聯(lián)諧振電路,其頻率與讀寫(xiě)器發(fā)射的頻率相同,在電磁波的激勵(lì)下,Lc諧振電路產(chǎn)生共振,從而使電容內(nèi)有了電荷,在這個(gè)電容的另一端,接有一個(gè)單向?qū)ǖ碾娮颖?,將電容?nèi)的電荷送到另一個(gè)電容內(nèi)儲(chǔ)存,當(dāng)所積累的電荷達(dá)到2V時(shí),此電容可做為電源為其它電路提供工作電壓,將卡內(nèi)數(shù)據(jù)發(fā)射出去或讀取讀寫(xiě)器的數(shù)據(jù)。通過(guò)調(diào)整天線驅(qū)動(dòng)電壓可以改變通信的最長(zhǎng)距離。

  FMl702SL與MCU的接口電路

FMl702SL與MCU的接口電路

  電路如圖2所示,MCU與FMl702SL是通過(guò)SPI總線通信的,采用中斷工作模式。需要注意的是在FMl702SL復(fù)位后,必須進(jìn)行一次初始化程序以便初始化SPI接口模式,而且可以同步MCU和FMl702SL的啟動(dòng)工作。 

  讀寫(xiě)器天線的設(shè)計(jì)

等效成R

  根據(jù)互感原理可知,半徑越大、匝數(shù)越多,讀寫(xiě)器上的天線和卡上的天線的互感系數(shù)就越大。根據(jù)國(guó)際標(biāo)準(zhǔn)的要求,卡和讀寫(xiě)器的通信距離為10cm。天線可等效成R、L、c并聯(lián)回路,示意圖如圖3所示,圖3中,L為天線的自感,R為天線的等效電阻,C為天線的分布電容。圖4為天線的PCB圖。

  設(shè)計(jì)天線時(shí)還要注意天線的品質(zhì)因數(shù)。國(guó)際標(biāo)準(zhǔn)ISOl4443規(guī)定無(wú)論TYPEA或TYPEB非接觸式IC卡,讀寫(xiě)器和卡之間的數(shù)據(jù)傳輸速度為 106kbit/s,載波的頻率f0=13.56MHz,因此,每一位的數(shù)據(jù)維持的時(shí)間tO=106/104k=9.44μs,TypeA類(lèi)射頻卡智能卡讀寫(xiě)器到射頻卡的信號(hào)編碼是修正米勒編碼,傳送每一位數(shù)具有t=3μs的載波中斷,因此,該信號(hào)的帶寬近似為 B="lT"=1/3μs=333.333kHz,故天線的品質(zhì)因數(shù)Q= fO/B=13.56 MHz33.333kHz=35,天線的傳輸帶寬與品質(zhì)因數(shù)成反比關(guān)系。因此,過(guò)高的品質(zhì)因數(shù)會(huì)導(dǎo)致帶寬縮小,從而減弱讀寫(xiě)器的調(diào)制邊帶,會(huì)導(dǎo)致讀寫(xiě)器無(wú)法與卡通信。

  讀寫(xiě)器對(duì)卡的操作流程

操作步驟

  FMl702SL內(nèi)部有8個(gè)寄存器頁(yè),每頁(yè)有8個(gè)寄存器,每個(gè)寄存器有8位數(shù)據(jù)。這些寄存器是統(tǒng)一編址的,從Ox00~0x3F,MCU通過(guò)SPI 接口與 FMl702SL通信對(duì)這些寄存器進(jìn)行設(shè)置。例如,MCU需要讓FMl702SL執(zhí)行某個(gè)命令(Transceive)時(shí),把此命令的代碼(1E)寫(xiě)入 Command寄存器就可以了。

   必須注意的是,MCU對(duì)卡片的操作不是簡(jiǎn)單的一條指令所能完成的,其中必須有對(duì)FMl702SL硬件內(nèi)部寄存器的設(shè)置。操作步驟如圖5所示。

  (1)復(fù)位初始化FMr702SL:初始化FMl702SL的SPI接口,初始化FMl702SL定時(shí)器,設(shè)置定時(shí)器控制寄存器,打開(kāi)Txl、TX2。

   (2)Request(請(qǐng)求):當(dāng)一張Mifare卡片處在卡片讀寫(xiě)器的天線的工作范圍之內(nèi)時(shí),程序員控制讀寫(xiě)器向卡片發(fā)出R:EQUEsT all(或REQUEsT std)命令。卡片的ATR將啟動(dòng),將卡片BLOCkO中的卡片類(lèi)型(TagType)號(hào)共2個(gè)字節(jié)傳送給讀寫(xiě)器,建立卡片與讀寫(xiě)器的第一步通信聯(lián)絡(luò)。如果不進(jìn)行復(fù)位請(qǐng)求操作,讀寫(xiě)器對(duì)卡片的其它操作將不會(huì)進(jìn)行。

  (3)Antieollision LOOp(防沖突機(jī)制):如果有多張Mifare卡片處在卡片讀寫(xiě)器的天線的工作范圍之內(nèi)時(shí),讀寫(xiě)器將首先與每一張卡片進(jìn)行通信,取得每一張卡片的系列號(hào)。由于每一張Mifare卡片都具有其唯一的序列號(hào),決不會(huì)相同,因此讀寫(xiě)器根據(jù)卡片的序列號(hào)來(lái)保證一次只對(duì)一張卡操作。該操作讀寫(xiě)器得到卡的返回值為卡的序列號(hào)。

 

  (4)Select Tag(選擇卡片):完成了上述二個(gè)步驟之后,讀寫(xiě)器必須對(duì)卡片進(jìn)行選擇操作。執(zhí)行操作后,返回卡上的SIZE字節(jié)。

  (5)Authentication(三次相互驗(yàn)證):經(jīng)過(guò)上述三個(gè)步驟,在確認(rèn)已經(jīng)選擇了一張卡片時(shí),讀寫(xiě)器在對(duì)卡進(jìn)行讀寫(xiě)操作之前,一必須對(duì)卡片上已經(jīng)設(shè)置的密碼進(jìn)行認(rèn)證。如果匹配,才允許進(jìn)一步的讀寫(xiě)操作。

  (6)讀寫(xiě)操作:對(duì)卡的最后操作是讀、寫(xiě)、增值、減值、存儲(chǔ)和傳送等操作。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。

相關(guān)內(nèi)容