基于RFID技術(shù)的射頻卡及其解碼技術(shù)
文章出處:http:// 作者: 人氣: 發(fā)表時(shí)間:2012年03月20日
摘 要:在射頻卡的系統(tǒng)應(yīng)用中,關(guān)鍵是要解決對(duì)射頻芯片輸出的數(shù)據(jù)進(jìn)行解碼問題。在通常的設(shè)計(jì)中,都是采用單片機(jī)不斷檢測(cè)電平變化的方法進(jìn)行解碼。論文提出了另外一種在MCS-51 單片機(jī)平臺(tái)下對(duì)EM4905 芯片輸出的64 位曼徹斯特編碼格式的數(shù)據(jù)進(jìn)行解碼的方法。這種方法結(jié)合單片機(jī)的硬件和曼徹斯特編碼的特點(diǎn),利用計(jì)算曼徹斯特碼下降沿間隔的載波數(shù)的方法進(jìn)行解碼,大大提高了解碼的速度和準(zhǔn)確性,而且硬件設(shè)計(jì)簡(jiǎn)單,是一種非常實(shí)用的解碼技術(shù)。
關(guān)鍵詞:射頻卡;曼徹斯特碼;解碼
1. 引言
射頻識(shí)別(radio frequency identification,RFID)技術(shù)是從20 世紀(jì)90 年代開始興起的一項(xiàng)自動(dòng)識(shí)別技術(shù)。他利用無(wú)線射頻方式進(jìn)行非接觸雙向通信,以達(dá)到識(shí)別目的并交換數(shù)據(jù)。射頻卡內(nèi)集成了芯片,感應(yīng)天線及電容等元件。讀寫時(shí),將卡(我們以T5557 卡為例)靠近讀卡器,讀卡器天線發(fā)出的電磁波在射頻卡內(nèi)的天線上產(chǎn)生感應(yīng)電流,為卡內(nèi)集成芯片提供能量。而該芯片預(yù)先存儲(chǔ)有一個(gè)唯一身份辨識(shí)號(hào)碼,該號(hào)碼被編碼后調(diào)制天線上的電流信號(hào),再以電磁波的形式傳遞回讀卡器[1]。大多數(shù)射頻卡將卡內(nèi)的身份識(shí)別號(hào)碼編碼為曼徹斯特碼,然后以單片機(jī)進(jìn)行編碼。
然而,目前的很多單片機(jī)解碼程序采用定時(shí)查詢或是考察信號(hào)的邊沿狀態(tài)的方式解碼,這些解碼方法對(duì)天線上的載波頻率要求比較高,對(duì)定時(shí)的準(zhǔn)確度要求也比較高,當(dāng)載波稍微偏離規(guī)定的范圍內(nèi)時(shí)將不能正確讀卡。本文介紹了一種新的解碼技術(shù),載波頻率的偏移對(duì)解碼沒有任何影響,而且不用檢測(cè)信號(hào)的邊沿狀態(tài),從而更加可靠、快速的讀卡。
2. 射頻卡的讀卡原理
2.1 射頻卡的組成結(jié)構(gòu)
T5557 是美國(guó)Atmel 公司生產(chǎn)的多功能非接觸式R/W 辨識(shí)集成電路,適用于125KHZ頻率范圍。芯片需要連接一個(gè)天線線圈,該線圈被視為芯片電路的電力驅(qū)動(dòng)補(bǔ)給和雙向信息的溝通接口,天線和芯片構(gòu)成射頻卡。T5557 的典型應(yīng)用系統(tǒng)構(gòu)成圖如圖1 所示。
圖 1 T5557 應(yīng)用系統(tǒng)結(jié)構(gòu)圖
2.2 射頻卡與讀寫器之間的通信
如果一個(gè)應(yīng)用系統(tǒng)要從一個(gè)非接觸的數(shù)據(jù)載體中讀取數(shù)據(jù)或是寫入數(shù)據(jù)到一個(gè)非接觸的數(shù)據(jù)載體中去,則它需要一個(gè)非接觸的讀寫器作為接口。非接觸式IC 卡與讀卡器之間通過無(wú)線電波來完成讀寫操作[2]。非接觸式IC 卡本身是無(wú)源卡,當(dāng)讀寫器對(duì)卡進(jìn)行進(jìn)行讀寫操作時(shí),讀寫器發(fā)出的信號(hào)有兩部分疊加組成:一部分是電源信號(hào),該信號(hào)由卡接收后與本身的L/C 產(chǎn)生一個(gè)瞬間能量來供給芯片工作。另一部分則是指令和數(shù)據(jù)信號(hào),指揮芯片完成數(shù)據(jù)的讀取、修改、儲(chǔ)存等,并返回信號(hào)給讀寫器。由圖1 可知,讀寫器向T5557 卡傳送射頻能量和讀寫命令時(shí),同時(shí)接收T5557 芯片以負(fù)載調(diào)制方式送來的數(shù)據(jù)信號(hào)。電源上電后(POR 有效), T5557 將對(duì)存儲(chǔ)在EEPROM 塊0 中的數(shù)據(jù)進(jìn)行初始化[5]。此時(shí)若POR 位為0,則在約3ms 后按塊0 的調(diào)制參數(shù)設(shè)置進(jìn)行調(diào)制。若需置位POR,則其初始化時(shí)間約為67ms。T5557 卡的工作流程如下圖。
圖 2 T5557 卡的工作流程圖
從射頻卡返回給基站的數(shù)據(jù)采用編碼方式(可以選擇曼徹斯特碼)。在卡與讀寫器進(jìn)行通信時(shí),通常由卡將存貯在 EEPROM 中的數(shù)據(jù)以負(fù)載調(diào)制方式循環(huán)送至讀寫器。根據(jù)傳送數(shù)據(jù)循環(huán)組織方式的不同又可分為常規(guī)讀模式、塊讀模式和序列終止符模式。可以采用中斷射頻場(chǎng)的方法來對(duì)數(shù)據(jù)進(jìn)行發(fā)送[3]。通常信號(hào)傳輸?shù)拈g隙為50-150μ s,兩間隙之間的時(shí)間對(duì)應(yīng)RF 一個(gè)“0”,標(biāo)稱值為24 個(gè)場(chǎng)時(shí)鐘;或?qū)?yīng)RF 場(chǎng)的一個(gè)“1”,標(biāo)稱值為54 個(gè)場(chǎng)時(shí)鐘。
在間隙之后,當(dāng)少于64 個(gè)場(chǎng)時(shí)鐘的間隙存在時(shí),IC 將退出模式。若有效位的數(shù)目正確,則開始編程。如果有一個(gè)間隙失敗,即一個(gè)或多個(gè)間隙不是有效的“0”或“1”,則IC 不編程,進(jìn)入從1 塊開始的讀模式。
序列中的第一個(gè)間隙被稱為起始間隙,為了便于對(duì)卡的檢測(cè),一般情況下,起始間隙應(yīng)大于其后的間隙。如圖3 所示
圖 3 讀寫器與卡的通信圖
3. 曼徹斯特碼解碼
根據(jù)曼徹斯特碼(以下簡(jiǎn)稱M 碼)的特點(diǎn):在每一個(gè)數(shù)據(jù)位的“中間”發(fā)生由低到高的跳變代表“1”、發(fā)生由高到低的跳變代表“0”。由圖3 可知,由于信號(hào)耦合的原因,實(shí)際上由EM4905 芯片送給單片機(jī)的64 位M 碼的數(shù)據(jù)是反過來的,即:用數(shù)據(jù)位中間發(fā)生高到低的跳變代表“1”、發(fā)生由低到高的跳變代表“0”。另外,在本系統(tǒng)中,64 位數(shù)據(jù)中的每一位在天線上的持續(xù)時(shí)間,即位寬時(shí)間是載波周期的64 倍,當(dāng)載波頻率是125kHZ 時(shí),每一位的持續(xù)時(shí)間是(1/125K)×64=512μ s。
第1頁(yè)第2頁(yè) |