[摘要] 本文提出了一種基于SL RC400的射頻卡讀寫器的設(shè)計方案,該方案采用AT89C52單片機(jī)控制基站芯片SL RC400作為讀寫器的核心部分。本方案具有硬件實現(xiàn)簡單、抗干擾能力強(qiáng)、易于二次開發(fā)等優(yōu)點。
[關(guān)鍵詞] 射頻卡 讀寫器 SL RC400
一、引言
RFID(Radio Frequency ldentification)是智能識別技術(shù)的一種,以此種射頻技術(shù)制備的商品標(biāo)簽比條形碼技術(shù)的標(biāo)簽又進(jìn)了一大步。
RFID射頻標(biāo)簽是承印物與電子技術(shù)的一個典型組合應(yīng)用。其在承印物上就包含了存有產(chǎn)品信息的IC芯片與天線組成的射頻電路,通過天線接收來自專用閱讀器所發(fā)射的射頻信號,并應(yīng)答出標(biāo)簽芯片中所包含的數(shù)據(jù)信息,也可送入主計算機(jī)進(jìn)行處理,從而實現(xiàn)產(chǎn)品非接觸式的識別、查找與管理,打破了傳統(tǒng)條形碼識別的局限性。因為RFID有移動數(shù)據(jù)庫的特性,所以有人說,RFID有可能發(fā)展成為今后全球商品或物流中最廣為采用的技術(shù)之一。
目前,射頻卡讀寫器設(shè)計中,使用較廣泛的基站芯片有PHILIPS公司生產(chǎn)的SL RC400、MF RC500、MF RC632以及復(fù)旦微電子公司生產(chǎn)的FM1702。其中MFRC500、FM1702等芯片支持ISO14443的各層協(xié)議,而SL RC400則支持ISO15693的各層協(xié)議。
本文提出了一種基于SL RC400基站芯片的射頻卡讀寫器設(shè)計方案,該方案采用AT89C52單片機(jī)控制基站芯片SL RC400,具有硬件實現(xiàn)簡單、易于軟件的二次開發(fā)等優(yōu)點。
二、系統(tǒng)總體結(jié)構(gòu)及方案設(shè)計
本文采用AT89C52單片機(jī)、SL RC400芯片及外圍電路實現(xiàn)讀寫器的基本組成。系統(tǒng)總體結(jié)構(gòu)如圖1所示:
系統(tǒng)的工作方式是:單片機(jī)對SL RC400進(jìn)行控制和通信,SL RC400驅(qū)動外圍電路對IC卡進(jìn)行讀寫操作。具體來說,單片機(jī)(即AT89C52)通過RS232串口接收PC機(jī)的指令,完成對卡的操作和整個讀寫器的管理;SL R400負(fù)責(zé)信號的編碼、解碼、調(diào)制和解調(diào);外圍電路則建立讀寫器同射頻卡之間的聯(lián)系。射頻卡是系統(tǒng)的應(yīng)用終端,接收讀寫器的指令并返回執(zhí)行結(jié)果。
三、系統(tǒng)的硬件設(shè)計
系統(tǒng)的硬件部分主要包括AT89C52單片機(jī)、SL RC400、時鐘電路、匹配電路及接口電路等外圍電路。
1.單片機(jī)AT89C52
SL RC400基站芯片可與任何一種8位的單片機(jī)直接進(jìn)行并口連接。系統(tǒng)選用了ATMEL公司生產(chǎn)的低電壓、高性能CMOS 8位單片機(jī)—AT89C52。AT89C52片內(nèi)含有8k bytes的可反復(fù)擦寫的只讀程序存儲器和256bytes的隨機(jī)數(shù)據(jù)存儲器,與標(biāo)準(zhǔn)的MCS-51指令系統(tǒng)及8052產(chǎn)品引腳兼容。
2.基站部分
系統(tǒng)的基站單元采用PHILIPS公司生產(chǎn)的芯片。SL RC400是應(yīng)用于13.56MHZ非接觸高集成度IC卡讀寫模塊的一員。該模塊利用了先進(jìn)的調(diào)制和解調(diào)概念,完全集成了在13.56MHZ下所有類型的被動非接觸式通信方式和協(xié)議。其內(nèi)部的發(fā)送器部分不需要增加有源電路就能夠直接驅(qū)動近距離操作的天線(可達(dá)100mm),而接收器部分提供了一個穩(wěn)定而有效的解調(diào)和解碼電路直接用于ISO15693兼容的應(yīng)答器信號。數(shù)字部分處理ISO15693幀和錯誤檢測(奇偶CRC)。此外,SL RC400方便的并行接口可直接連接到任何8位微處理器,對讀卡器和終端的設(shè)計提供了極大的靈活性。
3.時鐘電路
由于提供給SL RC400的時鐘要作為同步系統(tǒng)的編碼器和解碼器的時間基準(zhǔn),因而時鐘頻率的穩(wěn)定性是正確執(zhí)行的一個重要因素,為了獲得最佳性能,要求時鐘抖動應(yīng)盡可能小。系統(tǒng)時鐘電路部分的設(shè)計如圖2所示。
4.匹配電路
匹配電路包括EMC低通濾波器、天線匹配電路、接收電路和天線。匹配電路與基站芯片SL RC400的電路連接如圖3所示。其中L0和C0構(gòu)成
低通濾波器,用于濾除高頻噪聲。C1、C2a以及C2b組成天線匹配電路,以便和C1、C2組成的低通濾波器的阻抗匹配。接收電路則由R1、、R1’、R2和C2組成,使用內(nèi)部產(chǎn)生的VMID電勢作為RX的輸入電勢,為了提供一個穩(wěn)定的參考電壓,必須在VMID與地之間接一個對地電容。
在天線的設(shè)計中,最重要的是計算出天線線圈的電感量。天線的電感量一般采用經(jīng)驗公式進(jìn)行估算。假設(shè)天線設(shè)計為環(huán)形或者矩形,則有:
式中,l1為導(dǎo)體環(huán)一圈的長度;D1為導(dǎo)線直徑或者PCB板上導(dǎo)體的寬度;K為天線形狀因素(環(huán)形天線K=1.07,矩形天線K=1.47);N1為圈數(shù)。
5.SL RC400與AT89C52的接口電路
SL RC400支持與不同微處理器的直接接口。每次上電或硬件復(fù)位后,SL RC400也復(fù)位其并行微處理器接口模式并自動檢測當(dāng)前微處理器接口的類型。SL RC400與AT89C52的接口如圖4所示:
四、系統(tǒng)的軟件設(shè)計
MCU軟件的設(shè)計主要包括以下幾部分:AT89C52和SL RC400的初始化、控制SL RC400、與上位計算機(jī)的通信等。采用中斷模式對SL RC400提供的中斷信息進(jìn)行處理。程序流程如圖5所示:
1.初始化操作
初始化包括MCU的初始化以及SL RC400的初始化。當(dāng)SL RC400的DVDD管腳或AVDD管腳上電復(fù)位,或者PSTPD管腳發(fā)生負(fù)跳變時,SL RC400自動執(zhí)行復(fù)位和初始化操作,并將存儲在E2PROM中的值加載到相應(yīng)的寄存器中。
2.對卡的操作
整個系統(tǒng)的工作由對射頻卡操作和系統(tǒng)后臺處理兩大部分組成。本文只對射頻卡的操作流程進(jìn)行簡單介紹,其操作流程如下:
復(fù)位請求:當(dāng)一張射頻卡片處在卡片讀寫器天線的工作范圍之內(nèi)時,程序員控制讀寫器向卡片發(fā)出REQUEST all(或REQUEST std)命令,卡片的ATR將啟動,將卡片Block 0中的卡片類型(TagType)號共2個字節(jié)傳送給讀寫器,建立卡片與讀寫器的第一步通信聯(lián)絡(luò)。如果不進(jìn)行復(fù)位請求操作,讀寫器對卡片的其他操作將不會進(jìn)行。
反碰撞操作:如果有多張射頻卡片處在卡片讀寫器天線的工作范圍之內(nèi),閱讀器天線將與每一張卡片進(jìn)行通信,取得每一張卡片的系列號。由于每一張射頻卡片都具有惟一的序列號(決不會相同),因此閱讀器的天線將根據(jù)卡片的序列號來保證一次只對一張卡操作。該操作使閱讀器天線得到應(yīng)答器的返回值作為卡的序列號。
卡選擇操作:完成上述二個步驟之后,閱讀器天線必須對卡片進(jìn)行選擇操作。執(zhí)行操作后,返回卡上的SIZE字節(jié)。
認(rèn)證操作:經(jīng)過上述三個步驟,確認(rèn)已經(jīng)選擇了一張卡片,閱讀器天線在對卡進(jìn)行讀寫操作之前,還必須對卡片上已經(jīng)設(shè)置的密碼進(jìn)行認(rèn)證。如果匹配,才允許進(jìn)行讀寫操作。
讀寫操作:該寫操作是對卡的最后操作,包括讀、寫、增值、減值、存儲和傳送等操作。
程序代碼全部采用KEIL C編寫,限于篇幅,這里不再贅述。
五、結(jié)論
該讀寫器最突出的特點是高性能、高穩(wěn)定性和強(qiáng)兼容性,典型的讀寫距離為50厘米,在有效讀寫區(qū)域內(nèi)無死區(qū),讀寫操作可靠。可廣泛應(yīng)用在商業(yè)物流領(lǐng)域。
參考文獻(xiàn):
[1][德]Klaus Finkenzeller.無線射頻識別技術(shù)(RFID)理論與應(yīng)用.北京:電子工業(yè)出版社, 2001
[2]歐全梅:基于89C51的IC卡讀寫器[J].微計算機(jī)信息,2005, 2: 119~121
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。