基于FM1702S L的射頻讀寫器
文章出處:http://m.dipdnbxp.cn 作者:蔣慧 人氣: 發(fā)表時間:2011年10月16日
FM1702SL是應用于13.56MHz~接觸式通信中的高集成讀卡Ic,該芯片采用0.6 mCMOSEEPROM工藝,支持13.56MHz頻率下TYPE A非接觸通信協議,支持多種加密算法,兼容飛利浦的MF RC530(SPI接口)讀卡芯片。內部的發(fā)射器不需要增加有源電路就可以驅動近距離的天線(可達10cm)。接收電路中的FM1702SL采用了正交解調電路來解調RX腳上ISO14443標準的負載波信號。
系統(tǒng)設計
系統(tǒng)框圖如圖l所示,系統(tǒng)由MCU、鍵盤、EEPROM、FM1702SL、液晶屏、485通信模塊組成。MCU控制FM1702對Mifare卡進行讀寫操作,再根據得到的相應數據對液晶屏、EEPROM進行相應的操作。MCU與PC機通過485總線通信,即使PC機與MCU之間通信發(fā)生異常,MCU也可以獨立工作,在與PC機通信恢復之后,MCU可以將備份在EEPROM中的信息再傳給PC機。
P89LPC93 1是一款單片封裝的微控制器。P89LPC93 1采用了高性能的處理器結構,指令執(zhí)行時間只需2~4個時鐘周期。P89LPC93 1集成了許多系統(tǒng)級的功能,這樣可大大減少元件的數目和電路板面積,并降低系統(tǒng)的成本。EEPROM用的是FM24C64L,它是一款以I2C為操作方式的存儲芯片。液晶驅動芯片是PCF8576,也是以FC為操作方式。整個系統(tǒng)用12V電源供電,再由穩(wěn)壓芯片2576穩(wěn)壓成3.6V。
工作原理
Mifare卡包含一片容量為8K位EEPROM,為16個扇區(qū),每個扇區(qū)為4塊,每塊16個字節(jié),以塊為存取單位,每個扇區(qū)有獨立的一組密碼及訪問控制。每張卡有唯一序列號,為32位。無電源,自帶高頻天線,內含加密控制邏輯和通訊邏輯電路。信息存儲在Mifare卡里,讀寫器與Mifare卡通過各自的天線建立起二者之間非接觸信息傳輸通道。當Mifare卡進入系統(tǒng)的工作區(qū)域時,讀寫器向Mifare卡發(fā)一組固定頻率的電磁波,Mifare卡內有一個LC串聯諧振電路,其頻率與讀寫器發(fā)射的頻率相同,在電磁波的激勵下,LC諧振電路產生共振,從而使電容內有了電荷,在這個電容的另一端,接有一個單向導通的電子泵,將電容內的電荷送到另一個電容內儲存,當所積累的電荷達到2V時,此電容可做為電源為其它電路提供工作電壓,將卡內數據發(fā)射出去或讀取讀寫器的數據。通過調整天線驅動電壓可以改變通信的最長距離。
FM17029L與MCU的接口電路
電路如圖2所示,MCU與FM1702SL是通過SPI總線通信的,采用中斷工作模式。需要注意的是在FM1702SL復位后,必須進行一次初始化程序以便初始化SPI接口模式,而且可以同步MCU和FM1702SL的啟動工作。
讀寫器天線的設計
根據互感原理可知,半徑越大、匝數越多,讀寫器上的天線和卡上的天線的互感系數就越大。根據國際標準的要求,卡和讀寫器的通信距離為10cm。天線可等效成R、L、C并聯回路,示意圖如圖3所示,圖3中,L為天線的自感,R為天線的等效電阻,C為天線的分布電容。圖4為天線的PCB圖。
設計天線時還要注意天線的品質因數。國際標準ISO14443規(guī)定無論TYPEA或TYPEB非接觸式Ic卡,讀寫器和卡之間的數據傳輸速度為106kbit/s,載波的頻率fo=13.56MHz,因此,每一位的數據維持的時間tO=106/10@ :9.44 S,TypeA類射頻卡智能卡讀寫器到射頻卡的信號編碼是修正米勒編碼,傳送每一位數具有t=3 s的載波中斷,因此,該信號的帶寬近似為B=I/T=I/3 s=333.333kHz,故天線的品質因數Q~o/B=13.56 MHz/333.333kHz=35,天線的傳輸帶寬與品質因數成反比關系。因此,過高的品質因數會導致帶寬縮小,從而減弱讀寫器的調制邊帶,會導致讀寫器無法與卡通信。
讀寫器對卡的操作流程
FM1702SL內部有8個寄存器頁,每頁有8個寄存器,每個寄存器有8位數據。這些寄存器是統(tǒng)一編址的,從0x00~Ox3F,MCU通過SPI接口與FM1702SL通信對這些寄存器進行設置。例如,MCU需要讓FM1702SL執(zhí)行某個命令(Transceive)時,把此命令的代碼(1E)寫入Command寄存器就可以了。
必須注意的是,MCU對卡片的操作不是簡單的一條指令所能完成的,其中必須有對FM1702SL硬件內部寄存器的設置。操作步驟如圖5所示。
(1)復位初始化FM1702SL:初始化FM1702SL的SPI接口,初始化FM 1702SL定時器,設置定時器控制寄存器,打開TX1、TX2。
(2)Request(請求):當一張Mifare卡片處在卡片讀寫器的天線的工作范圍之內時,程序員控制讀寫器向卡片發(fā)出REQUEST all(或REQUEST std)命令??ㄆ腁TR將啟動,將卡片BlockO中的卡片類~_(TagType)號共2個字節(jié)傳送給讀寫器,建立卡片與讀寫器的第一步通信聯絡。如果不進行復位請求操作,讀寫器對卡片的其它操作將不會進行。
(3)Anticollision Loop(防沖突機制):如果有多張Mifare卡片處在卡片讀寫器的天線的工作范圍之內時,讀寫器將首先與每一張卡片進行通信,取得每一張卡片的系列號。由于每一張Mifare卡片都具有其唯一的序列號,決不會相同,因此讀寫器根據卡片的序列號來保證一次只對一張卡操作。該操作讀寫器得到卡的返回值為卡的序列號。
(4)Seleet Tag(選擇卡片):完成了上述二個步驟之后,讀寫器必須對卡片進行選擇操作。執(zhí)行操作后,返回卡上的SIZE字節(jié)。
(5)Authentication(~次相互驗證):經過上述三個步驟,在確認已經選擇了一張卡片時,讀寫器在對卡進行讀寫操作之前,必須對卡片上已經設置的密碼進行認證。如果匹配,才允許進一步的讀寫操作。
(6)讀寫操作:對卡的最后操作是讀、寫、增值、減值、存儲和傳送等操作。
結束語
Ic卡以其高度的信息集成及安全I生已經融入當今信息技術的主流,本文介紹的讀寫器應用的讀卡芯片FM1702SL是一款優(yōu)秀的新型國產芯片,經實驗證明基于該芯片設計的Mifare卡讀寫器工作穩(wěn)定。在此讀寫器的基礎上,只要稍加改動就能開發(fā)成不同的射頻識別應用系統(tǒng),如考勤系統(tǒng)、門禁系統(tǒng)、公交車收費系統(tǒng)等。