摘 要: 在掌上電腦中集成ITM100雙頻GPRS模塊和MF-500 RFIC讀寫模塊的設(shè)計方案。介紹了系統(tǒng)的硬件電路實(shí)現(xiàn),,掌上電腦與二個模塊之間的接口方式,,以及二個模塊的數(shù)據(jù)格式和軟件操作方法。
關(guān)鍵詞: 掌上電腦 通用無線分組業(yè)務(wù) 射頻IC TCP/IP協(xié)議 數(shù)據(jù)傳輸
隨著通信技術(shù)和微電子技術(shù)的快速發(fā)展以及人們對信息交流的迫切需求,,手持終端式應(yīng)用的發(fā)展進(jìn)入了一個全新的時期,。掌上電腦憑借其強(qiáng)大的功能和特有的優(yōu)勢,已經(jīng)被廣大商務(wù)工作者所青睞,。掌上電腦的功能和應(yīng)用領(lǐng)域也可以通過增加無線接入網(wǎng)絡(luò)的功能得到極大的擴(kuò)展,。目前無線技術(shù)經(jīng)歷兩代的發(fā)展,正向3G寬帶移動通信系統(tǒng)網(wǎng)絡(luò)演進(jìn),。寬帶接入方式的提出為掌上電腦在不久的將來通過無線方式進(jìn)行移動寬帶多媒體應(yīng)用提供了誘人的前景,。當(dāng)前作為GSM網(wǎng)絡(luò)向3G演進(jìn)過渡的GPRS(通用無線分組業(yè)務(wù))已經(jīng)能為用戶提供高達(dá)164Kbps的傳輸速率。
非接觸IC卡又稱射頻卡(RFIC卡),,是射頻識別技術(shù)和IC技術(shù)有機(jī)結(jié)合的產(chǎn)物,,目前已經(jīng)廣泛用于金融、醫(yī)療衛(wèi)生,、電信,、交通、智能建筑等許多領(lǐng)域,。它的出現(xiàn)和發(fā)展,,推動了人類生活中支付體系的革命性變革,也給掌上電腦帶來了新的應(yīng)用領(lǐng)域和新的市場,。
因此,,在掌上設(shè)備中加入無線接入設(shè)備和RFIC讀寫模塊是大勢所趨,也是掌上設(shè)備發(fā)展的新階段和里程碑,,它將會給人們的生活帶來很大的便利,。
1 GPRS業(yè)務(wù)的優(yōu)勢
GPRS是GSM Phase 2+階段引入的一種基于分組的數(shù)據(jù)業(yè)務(wù),是歐洲電信協(xié)會GSM系統(tǒng)中有關(guān)分組數(shù)據(jù)所規(guī)定的標(biāo)準(zhǔn)。GPRS采用與GSM相同的頻段,、頻帶寬度,、突發(fā)結(jié)構(gòu)、無線調(diào)制標(biāo)準(zhǔn),、跳頻規(guī)則以及相同的TDMA幀結(jié)構(gòu),,因此它的優(yōu)勢是可以充分利用現(xiàn)有的GSM網(wǎng)絡(luò)。GPRS是基于GSM系統(tǒng)的無線分組交換技術(shù),,提供端到端的,、廣域的無線IP連接。GPRS充分利用共享無線信道,,采用IP over PPP 實(shí)現(xiàn)數(shù)據(jù)終端的高速,、遠(yuǎn)程接入。GPRS業(yè)務(wù)具有接入迅速,、永遠(yuǎn)在線等特點(diǎn),,因此在遠(yuǎn)程突發(fā)性數(shù)據(jù)實(shí)時傳輸中有不可比擬的優(yōu)勢,特別適合于頻發(fā)小數(shù)據(jù)量的實(shí)時無線傳輸,。
2 系統(tǒng)總體設(shè)計
系統(tǒng)選用的掌上電腦是handspring公司的visor系列,,它內(nèi)置摩托羅拉“龍珠”處理器,支持USB接口,、紅外接口,、PCMCIA接口,帶有液晶顯示觸摸屏,,并有128MB程序/數(shù)據(jù)存儲器,,便于擴(kuò)展網(wǎng)絡(luò)應(yīng)用程序。使用的操作系統(tǒng)為PALM OS,。當(dāng)配以相應(yīng)的底層驅(qū)動時,,便可實(shí)現(xiàn)GPRS模塊和RFIC模塊的正常工作。硬件上,,掌上電腦要求小型化,、省電、高可靠性,,因此將GPRS模塊和RFIC模塊盡可能小地集成在一塊四層PCB板上,做成即插即用模塊,,通過PCMCIA接口與掌上電腦相連,。在設(shè)計過程中,要同時考慮電磁干擾的抑制和電磁兼容性的設(shè)計,。圖1為系統(tǒng)的整體框圖,。
當(dāng)讀RFIC卡時,要在掌上電腦的操作系統(tǒng)中選擇此功能,,由微處理器通過PCMCIA接口給RFIC卡讀寫模塊一個控制信號,,通知讀寫模塊準(zhǔn)備讀卡(平時處于待機(jī)模式,,可以省電)。同時GPRS模塊也會通過串行口發(fā)現(xiàn)這個信號,,但是由于命令的數(shù)據(jù)格式不同,,因此它不會接收,不會發(fā)生誤操作,。讀卡時完成的工作主要包括:卡進(jìn)入和退出讀寫范圍的識別與控制,,通過天線向非接觸IC卡提供穩(wěn)定的電源和時鐘,實(shí)現(xiàn)與卡的數(shù)據(jù)交換并提供相應(yīng)的控制信號等,??ǖ男畔⒆x出后存入程序/數(shù)據(jù)存儲器中,并使RFIC卡讀寫模塊繼續(xù)處于待機(jī)狀態(tài),。當(dāng)需要通過GPRS網(wǎng)絡(luò)發(fā)送時,,應(yīng)發(fā)送一個控制信號激活GPRS模塊。由于GPRS支持“永遠(yuǎn)在線”功能,,因此不需要每次首發(fā)時重新登錄建立網(wǎng)絡(luò)連接,,只需重新激活場景即可。這樣就可以通過串行口運(yùn)用AT命令把接收的IC卡信息通過GPRS發(fā)送出去,。
2.1 GPRS模塊設(shè)計
目前GSM手機(jī)廠商除了生產(chǎn)手機(jī)之外,,還提供GSM/GPRS通信模塊供其他產(chǎn)品配套使用。本系統(tǒng)選用SIMCOM公司的ITM100 GSM/GPRS三頻模塊,,為語音傳輸,、短消息和數(shù)據(jù)業(yè)務(wù)提供無線接口。ITM100 集成了完整的射頻電路和GSM 的基帶處理器,,支持GSM900/DCS1800/PCS1900三頻,。其默認(rèn)設(shè)置為GSM900/DCS1800模式,可以通過AT命令切換到GSM900/PCS1900模式,。ITM100有60針外部系統(tǒng)連接器,,方便與應(yīng)用系統(tǒng)對接,適合于開發(fā)一些GSM/GPRS的無線應(yīng)用產(chǎn)品,。
本系統(tǒng)中,,GPRS模塊的鍵盤接口和音頻接口都可以不用,而其他的接口包括電源接口,、SIM卡接口,、RF天線電路接口和UART接口為集成GPRS模塊和掌上電腦系統(tǒng)提供了豐富的控制接口資源。這些接口都是由60針外部系統(tǒng)連接器提供的,。本系統(tǒng)不需要用到音頻,,所以GPRS模塊的UART接口中只需要用TXD和RXD,而不需要用DCD、DTR,、RTS,、CTS和RI。由于PCMCIA接口是8位并行輸出,,因此用ST16C550串并轉(zhuǎn)換芯片負(fù)責(zé)與GPRS模塊實(shí)現(xiàn)數(shù)據(jù)交流,,圖2為系統(tǒng)接口電路。
掌上電腦的地址線通過PCMCIA接口連接到ST16C550串并轉(zhuǎn)換芯片的片選信號引腳CS0,、CS1,、/CS2和地址線上,這樣ST16C550就獲得了一段端口地址,,在底層驅(qū)動程序中翻譯成映射地址,。掌上電腦讀寫這個地址,并通過ST16C550串并轉(zhuǎn)換芯片傳遞給GPRS模塊或RFIC讀寫模塊,。這樣就完成了掌上電腦與GPRS模塊和RFIC讀寫模塊的通信(GPRS模塊和RFIC讀寫模塊共用一個PCMCIA接口),。GPRS模塊和RFIC讀寫模塊的數(shù)據(jù)格式不同,因此不會產(chǎn)生數(shù)據(jù)干擾和接收錯誤,。未用的輸入腳要接高電平,,不能懸空。SIM卡直接選擇符合GSM規(guī)范的3V SIM卡或1.8V SIM卡,,模塊自動監(jiān)測和適應(yīng)卡的類型,。為了確保模塊與外部的接口,模塊專門設(shè)置了3V接口電平,。因此要使模塊工作,,除了提供3.6V的主電源外,還需要提供3V接口電壓,。為此,,使3.6V鋰電池通過MAX8885EU30降壓變壓器提供接口電壓。同時,,采用高速防靜電管和去偶電容保護(hù)SIM卡和串口輸出等敏感部分免受射頻,、尖峰脈沖和電源波動干擾。
本系統(tǒng)需要利用TCP/IP協(xié)議完成GPRS業(yè)務(wù)數(shù)據(jù)的裝幀和拆幀,。數(shù)據(jù)的完整流程為:掌上電腦將信息數(shù)據(jù)按照TCP數(shù)據(jù)報的格式封裝為TCP數(shù)據(jù)報,,加上IP報頭和報尾封裝為IP數(shù)據(jù)報,之后將IP數(shù)據(jù)報按照PPP幀的幀格式封裝為PPP幀,,然后通過串口傳給GPRS模塊,。GPRS模塊將接收的數(shù)據(jù)幀通過無線鏈路傳送到SGSN(Service GPRS Support Node)。SGSN進(jìn)行相應(yīng)的協(xié)議轉(zhuǎn)換,,按照GPRS特有的GTP(GPRS Tunnel Protocol)將其封裝成GTP包,然后通過GPRS骨干網(wǎng)傳送到相應(yīng)的GGSN(Gateway GPRS Support Node)。GGSN也進(jìn)行相應(yīng)的協(xié)議轉(zhuǎn)換,,再根據(jù)外部數(shù)據(jù)網(wǎng)的協(xié)議格式進(jìn)行新的封裝,,并且根據(jù)其目的IP地址選擇路由進(jìn)行傳送,從而最終傳送到監(jiān)控中心,。監(jiān)控中心收到上傳的信息數(shù)據(jù)后,,根據(jù)移動終端的IP地址和端口號下發(fā)確認(rèn)信息給掌上電腦,完成數(shù)據(jù)的傳輸,。建立GPRS鏈接的數(shù)據(jù)鏈路如圖3所示,。
ITM100無線模塊的軟件部分對外提供了一個控制系統(tǒng)操作的AT命令集,通過接收來自串行口的AT命令,,解釋并執(zhí)行相應(yīng)的操作,,從而實(shí)現(xiàn)無線Modem的對應(yīng)功能。模塊的設(shè)置和上網(wǎng)傳輸數(shù)據(jù)用到的AT命令主要有:
(1)運(yùn)用命令A(yù)T+IPR=115200(默認(rèn))設(shè)置波特率,,用此命令可自由切換通信速率,。由于支持掉電保存,因此只需要設(shè)一次,,不需要每次開機(jī)重設(shè),。
(2)運(yùn)用命令A(yù)T+CGDCONT=1、“IP”,、“CMNET”設(shè)置GPRS接入網(wǎng)關(guān),。其中CMNET為移動夢網(wǎng)的接入網(wǎng)關(guān)。
(3)運(yùn)用命令A(yù)T+CGCLASS=“B”設(shè)置移動終端的類別為B類,,即同時監(jiān)控多種業(yè)務(wù),,但只能運(yùn)行一種業(yè)務(wù)。
(4)運(yùn)用命令A(yù)T+CGACT=1,,1激活GPRS功能,,如果返回OK,則GPRS連接成功,;如果返回ERROR,,則意味GPRS連接失敗。
(5)運(yùn)用命令A(yù)T+CIPSTART=“TCP”,、“客戶端IP”,、“端口號”來連接客戶端服務(wù)器。
(6)運(yùn)用命令A(yù)T+CIPSEND發(fā)送數(shù)據(jù),。
(7)發(fā)送完之后,,運(yùn)用AT+CIPCLOSE關(guān)閉連接。
(8)運(yùn)用命令A(yù)T+CIPSHUT關(guān)閉移動場景,。
掌上電腦通過向GPRS模塊發(fā)送這些AT指令,,就可以驅(qū)動模塊無線上網(wǎng)收發(fā)數(shù)據(jù)了,。
2.2 RFIC讀寫模塊的設(shè)計
非接觸IC卡的讀寫原理如下:讀寫器向非接觸IC卡發(fā)一組固定頻率的電磁波,卡片內(nèi)有一個LC串聯(lián)諧振電路,,其頻率與訊寫器發(fā)射的頻率相同,;在電磁波的激勵下,LC諧振電路產(chǎn)生共振,,從而使電容內(nèi)有了電荷,;在這個電容的另一端,接有一個單向?qū)ǖ碾娮颖?,將電容?nèi)的電荷送到另一個電容內(nèi)儲存,;當(dāng)所積累的電荷達(dá)到2V時,此電容可做為電源為其他電路提供工作電壓,,將卡內(nèi)數(shù)據(jù)發(fā)射出去或接取讀寫器的數(shù)據(jù),。本系統(tǒng)采用的是MF500射頻讀寫器,內(nèi)嵌ISO14443 Type A協(xié)議解釋器,,并具有射頻驅(qū)動及接收功能,,可以簡單實(shí)現(xiàn)對Mifare Light和Mifare One S50、S70等卡片的讀寫操作,,讀寫距離最大可達(dá)100mm(與卡片及天線設(shè)計有關(guān)),。
本系統(tǒng)屬于電感耦合識別系統(tǒng),天線的設(shè)計直接關(guān)系到能否正常通信,。由于MF500讀寫芯片是低功耗設(shè)計,,因此卡與天線的耦合系數(shù)必須滿足一定的值,不能低于0.3,。天線的直徑要求介于0.5~1.5mm之間,。天線的電感可以通過以下公式計算得出:
L=2×S×ln(1/D)×N1.8
式中:L為讀卡器天線電感(nH);S為1圈天線導(dǎo)體的長度(cm),;D為天線導(dǎo)體寬度,;N為天線導(dǎo)體圈數(shù)。
讀卡器與卡通信時,,需要經(jīng)過三次握手驗(yàn)證,。傳輸數(shù)據(jù)加密時,只有知道加解密規(guī)則的讀卡器才能讀出該卡,,并且卡中的每個扇區(qū)都有不同的密碼,,具有良好的保密性。三次確認(rèn)的過程如下:
(1)射頻卡向讀寫器發(fā)送一個隨機(jī)數(shù)Rc,;
(2)讀寫器返回一個數(shù)據(jù)Token R后,,射頻卡譯碼并校驗(yàn)R中所含的隨機(jī)數(shù)Rc是否與(1)中所發(fā)的一致;
(3)射頻卡發(fā)給讀卡器一個數(shù)據(jù)Token C,;
(4)讀寫器收到Token C之后,,譯碼并校驗(yàn)Rc的正確性,,同時還驗(yàn)證C中所含的隨機(jī)數(shù)是否與(2)中發(fā)出的一致。
GPRS模塊和RFIC模塊的程序都是在PALM OS的開發(fā)工具CODE WARRIOR下用C語言編寫的,。GPRS模塊是通過串行口用AT命令控制,,RFIC模塊也可以調(diào)用動態(tài)鏈接庫RC500_Mifare.dll,通過串行口發(fā)送相關(guān)指令,,即可實(shí)現(xiàn)對卡片的所有操作。指令結(jié)構(gòu)定義如下(發(fā)送,、接收均遵循此協(xié)議):
ACK+LEN+DATAS+CHK+ETX
其中:
ACK=0x60通信頭部,,指令啟始字節(jié),1B
LEN=Length(DATAS) 通信數(shù)據(jù)體長度字節(jié)數(shù),,1B
DATAS 通信數(shù)據(jù)體
CHK 異或校驗(yàn)和=ACK^LEN^DATAS,,1B
ETX=0x03 結(jié)束符,1B
DATAS中包含對卡操作所需要的參數(shù),,如認(rèn)證所需的密鑰,、地址、寫入卡片的數(shù)據(jù)等,。掌上電腦通過向串行口發(fā)送符合此命令格式的指令,,控制RFIC讀寫模塊對卡進(jìn)行操作。
整個系統(tǒng)的流程如圖4所示,。
3 結(jié)束語
本系統(tǒng)在掌上電腦上實(shí)現(xiàn)了GPRS業(yè)務(wù)的數(shù)據(jù)傳輸功能和讀寫非接觸IC卡的功能,。系統(tǒng)具有成本低、電路簡單的優(yōu)點(diǎn),,實(shí)現(xiàn)了掌上電腦功能的擴(kuò)展和向高端的升級,,在交通管理、第二代身份證管理等領(lǐng)域有很好的應(yīng)用前景,。
參考文獻(xiàn)
1 SIMCOM公司.ITM100 GPRS模塊USER′S GUIDER.上海:SIMCOM有限公司,,2003
2 SIMCOM公司.Application Note for ITM100TCP.上海:SIMCOM有限公司,2004
3 北京遠(yuǎn)興時代公司.MF-500M 射頻讀寫模塊通信協(xié)議.北京:北京遠(yuǎn)興時代科技有限公司,,2004
4 位元文化.精通Palm OS程序設(shè)計:CodeWarrior入門教程. 北京:清華大學(xué)出版社,,2001
5 白同云,呂曉德.電磁兼容設(shè)計.北京:北京郵電大學(xué)出版社,,2001
6 莫德舉,,劉麗麗.RFIC卡讀寫器研發(fā).儀器儀表學(xué)報,2003,;24(4)
7 胡科,,蔡方凱,胡蓉.基于GPRS的數(shù)據(jù)傳輸智能終端的實(shí)現(xiàn).電訊技術(shù),,2003,;(4)