![接觸式IC卡接口原理與不同實現(xiàn)方式對比_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/18/54b04be8-604e-409a-aac5-97fe94e15ca8/54b04be8-604e-409a-aac5-97fe94e15ca81.gif)
![接觸式IC卡接口原理與不同實現(xiàn)方式對比_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/18/54b04be8-604e-409a-aac5-97fe94e15ca8/54b04be8-604e-409a-aac5-97fe94e15ca82.gif)
![接觸式IC卡接口原理與不同實現(xiàn)方式對比_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/18/54b04be8-604e-409a-aac5-97fe94e15ca8/54b04be8-604e-409a-aac5-97fe94e15ca83.gif)
![接觸式IC卡接口原理與不同實現(xiàn)方式對比_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/18/54b04be8-604e-409a-aac5-97fe94e15ca8/54b04be8-604e-409a-aac5-97fe94e15ca84.gif)
![接觸式IC卡接口原理與不同實現(xiàn)方式對比_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/18/54b04be8-604e-409a-aac5-97fe94e15ca8/54b04be8-604e-409a-aac5-97fe94e15ca85.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、接觸式IC卡接口原理與不同實現(xiàn)方式對比技術(shù)分類:嵌入式系統(tǒng) 來源:單片機與嵌入式系統(tǒng)應(yīng)用 發(fā)表時間:2007-01-05 摘要:詳細介紹接觸式IC卡讀寫原理;結(jié)合一個基于不同讀寫芯片、可以同時操作6片接觸式IC卡的系統(tǒng),對包括并行通信、半雙工串行通信和I2C通信的幾種不同接口形式的IC卡讀寫芯片進行了詳細的對比分析。 關(guān)鍵詞:ISO/IEC7816 接口技術(shù) 接觸式IC卡 并行通信 半雙工串行通信 I2C總線通信 作者單位:李永清(北京交通大學)引 言 IC卡 (Integrated Circuit Card,集成電路卡)是繼磁卡之后出現(xiàn)的又一種新型信息工具。IC卡在有些國家和地區(qū)也稱智能卡(
2、smart card)、智慧卡(intelligent card)、微電路卡(microcircuit card)或微芯片卡等。它是將一個微電子芯片嵌入符合ISO 7816標準的卡基中,做成卡片形式;已經(jīng)十分廣泛地應(yīng)用于包括金融、交通、社保等很多領(lǐng)域。 IC卡讀寫器是IC卡與應(yīng)用系統(tǒng)間的橋梁,在ISO國際標準中稱之為接口設(shè)備IFD(Interface Device)。IFD內(nèi)的CPU通過一個接口電路與IC卡相連并進行通信。IC卡接口電路是IC卡讀寫器中至關(guān)重要的部分,根據(jù)實際應(yīng)用系統(tǒng)的不同,可選擇并行通信、半雙工串行通信和I2C通信等不同的IC卡讀寫芯片。 1 接觸式IC卡接口技術(shù)原理 IC卡
3、讀寫器要能讀寫符合ISO7816標準的IC卡。IC卡接口電路作為IC卡與IFD內(nèi)的CPU進行通信的唯一通道,為保證通信和數(shù)據(jù)交換的安全與可靠,其產(chǎn)生的電信號必須滿足下面的特定要求。 1.1 完成IC卡插入與退出的識別操作 IC卡接口電路對IC卡插入與退出的識別,即卡的激活和釋放,有很嚴格的時序要求。如果不能滿足相應(yīng)的要求,IC卡就不能正常進行操作;嚴重時將損壞IC卡或IC卡讀寫器。 (1)激活過程 為啟動對卡的操作,接口電路應(yīng)按圖1所示順序激活電路: RST處于L狀態(tài); 根據(jù)所選擇卡的類型,對VCC加電A類或B類,正常操作條件下VCC的電特性見表1; VPP上升為空閑狀態(tài); 接口電路的I/O應(yīng)
4、置于接收狀態(tài); 向IC卡的CLK提供時鐘信號(A類卡15MHz,B類卡14MHz)。 如圖1所示,在ta時間對IC卡的CLK加時鐘信號。I/O線路應(yīng)在時鐘信號加于CLK的200個時鐘周期(ta)內(nèi)被置于高阻狀態(tài)Z(ta 時間在ta之后)。時鐘加于CLK后,保持RST為狀態(tài)L至少400周期(tb)使卡復(fù)位(tb在ta之后)。在時間tb,RST被置于狀態(tài)H。I/O上的應(yīng)答應(yīng)在RST上信號上升沿之后的40040 000個時鐘周期(tc)內(nèi)開始(tc在tb之后)。 在RST處于狀態(tài)H的情況下,如果應(yīng)答信號在40 000個時鐘周期內(nèi)仍未開始,RST上的信號將返回到狀態(tài)L,且IC卡接口電路按
5、照圖2所示對IC卡產(chǎn)生釋放。 (2)釋放過程 當信息交換結(jié)束或失敗時(例如,無卡響應(yīng)或卡被移出),接口電路應(yīng)按圖2所示時序釋放電路: RST應(yīng)置為狀態(tài)L; CLK應(yīng)置為狀態(tài)L(除非時鐘已在狀態(tài)L上停止); VPP應(yīng)釋放(如果它已被激活); I/O應(yīng)置為狀態(tài)A(在td時間內(nèi)沒有具體定義); VCC應(yīng)釋放。 1.2 通過觸點向卡提供穩(wěn)定的電源 IC卡接口電路應(yīng)能在表1規(guī)定的電壓范圍內(nèi),向IC卡提供相應(yīng)穩(wěn)定的電流。 1.3 通過觸點向卡提供穩(wěn)定的時鐘 IC卡接口電路向卡提供時鐘信號。時鐘信號的實際頻率范圍在復(fù)位應(yīng)答期間,應(yīng)在以下范圍內(nèi):A類卡,時鐘應(yīng)在15MHz;B類卡,
6、時鐘應(yīng)在14MHz。 復(fù)位后,由收到的ATR(復(fù)位應(yīng)答)信號中的F(時鐘頻率變換因子)和D(比特率調(diào)整因子)來確定。 時鐘信號的工作周期應(yīng)為穩(wěn)定操作期間周期的40%60%。當頻率從一個值轉(zhuǎn)換到另一個值時,應(yīng)注意保證沒有比短周期的40%更短的脈沖。 2 幾種實現(xiàn)方式的對比與分析 IFD內(nèi)的IC卡讀寫芯片,按其與IFD內(nèi)的CPU的通信方式進行分類,有并行通信、半雙工串行通信和I2C通信的讀寫芯片。圖3是一個基于三種不同通信方式讀寫芯片的通用IC卡讀寫器的原理示意。這個系統(tǒng)可以同時對6片IC卡進行操作,其中每一個IC卡讀寫芯片都可以驅(qū)動2片IC卡。應(yīng)用系統(tǒng)可以根據(jù)實際情況合理選用其中的一
7、種或多種讀寫芯片。 2.1 IC卡讀寫芯片的硬件對比分析 (1)通信方式為并行通信的CTS56I01 CTS56I01支持兩個符合ISO/IEC7816-3標準的T0和T1傳輸協(xié)議的IC卡。它采用并行的方式與IFD內(nèi)的CPU通信;可以檢查到卡的插入與拔出,并自動產(chǎn)生激活與釋放時序。CTS56I01內(nèi)部每個通道都有發(fā)送緩沖空、ATR超時、釋放檢測完成、TS沒有收到等10個獨立的中斷源,當CTS56I01內(nèi)部的狀態(tài)發(fā)生變化時,可以產(chǎn)生中斷信號。系統(tǒng)通過P0口與CTS56I01的數(shù)據(jù)線相連,地址選擇用P22:0,兩個中斷信號經(jīng)過或門后接到89C51的INT0上。對IC卡的所有操作,只是對CTS56I
8、01內(nèi)部寄存器的讀寫操作,方便可靠。CTS56I01采用LQFP-32封裝,僅占很小的空間。 (2)通信方式為半雙工串行通信的WatchCore WatchCore是握奇公司為了方便各種嵌入式設(shè)備與IC卡的通信開發(fā)而推出的一款I(lǐng)C卡讀寫芯片,硬件平臺采用ST7261單片機,內(nèi)部掩膜有握奇公司對IC卡進行讀寫操作的全部程序;支持ISO/IEC 7816 T=0、T=1異步傳輸協(xié)議的各種智能卡,支持對Memory卡操作,支持雙卡頭操作,與接口CPU采用半雙工串行通信。系統(tǒng)用P1.1和P1.2模擬一個串口與WatchCore進行通信。WatchCore采用SO-20裝封,占PCB板很小的位置。 (3
9、)通信方式為I2C的TDA8020 TDA8020是Philips生產(chǎn)的支持兩個獨立IC卡的讀寫芯片,IFD內(nèi)的CPU采用I2C的方式向TDA8020發(fā)送命令和讀取狀態(tài),通過TDA8020的I/OuC端口向IC卡發(fā)送和接收數(shù)據(jù)。它支持符合ISO/IEC7816-3 T=0、T=1標準的IC卡,也支持符合EMV3.1.1(Europay,MasterCard,VISA)標準的卡。與它Pin-to-Pin兼容的芯片還有ST公司生產(chǎn)的ST8020等。TDA8020有2個地址選擇引腳。本系統(tǒng)的地址引腳接地,兩個IC卡對應(yīng)的地址分別為0x40和0x48。I2C的時鐘信號和數(shù)據(jù)信號分別由89C51的P1.
10、3和P1.4進行模擬,IC卡的數(shù)據(jù)通道I/OuC連89C51的P1.5和P1.6。TDA8020也采用LQFP-32裝封。 2.2 IC卡讀寫芯片的軟件設(shè)計 2.2.1 通信方式為并行通信的CTS56I01 CST56I01只有3根地址線,內(nèi)部卻有37個寄存器。其中有8個寄存器可以直接訪問,另外的29個寄存器要通過索引地址寄存器(IAR)來訪問。其訪問分為兩步:第一步是將要間接訪問的寄存器的地址寫到IAR寄存器中;第二步就是從數(shù)據(jù)寄存器(DR)中讀出數(shù)據(jù)或?qū)懭霐?shù)據(jù)到DR寄存器中,來完成對要間接訪問的寄存器的訪問。 下面的C51子程序是基于圖3的寫一個字節(jié)到要間接訪問的寄存器中的子程序。 #de
11、fine SN2_IAR XBYTE0x0000 #define SN2_DR XBYTE0x0100 void WriteByteIndexed(BYTE bIndex, BYTE bData) P1.0=0; SN2_IAR = bIndex; SN2_DR = bData; 2.2.2 WatchCore的軟件設(shè)計 WatchCore是不帶硬件的UART,其串行通信是用軟件實時仿真的。通信速度采用9600bps;通信字節(jié)格式為1位起始位,8位數(shù)據(jù)位,1位偶校驗位,2位停止位。TXD與RXD電氣信號是標準的CMOS電平,可直接與TTL的電路相連。以下是通信時的數(shù)據(jù)包格式。 (1)命令包 命
12、令包是IC卡讀寫器內(nèi)的CPU發(fā)往WatchCore的數(shù)據(jù),其包格式如下: NAD為卡頭選擇, NAD=0x00/0x12為主卡頭,NAD=0x13為從卡頭; PCB與通信無關(guān),CPU卡T=1時使用,PCB通常設(shè)置為0x00; LEN為數(shù)據(jù)的字節(jié)長度(僅DATA段的字節(jié)數(shù)); DATA為發(fā)送WactchCore或IC卡內(nèi)的命令(命令參考ISO7816-4的標準); BCC為異或校驗字節(jié)(BCC段前的4段所有字節(jié)的異或和)。 (2)數(shù)據(jù)包 數(shù)據(jù)包是WatchCore 收到命令包后返回的數(shù)據(jù),其包格式如下: NAD* 是WatchCore把命令包中
13、NAD字節(jié)的高低4位互換后的返回。例如,命令包發(fā)送NAD=0x12,WatchCore則返回NAD*=0x21; 其它各段與命令包相同。 通信舉例(以下數(shù)據(jù)都用十六進制表示) 對主卡進行復(fù)位 發(fā)送命令包如下: 12 00 05 00 12 00 00 00 05 若主卡頭中無卡,則WatchCore返回: 21 00 02 62 00 41 若主卡頭有一張T=0的CPU卡,則可能返回: 21 00 11 3B 7A 18 00 00 21 08 11 12 13 14 15 16 17 18 90 00 D8 2.2.3 TDA8020的軟件設(shè)計 TDA8020與IFD內(nèi)CPU的通信是用I2C
14、總線方式進行的。通過I2C接口,IFD內(nèi)的CPU可以向TDA8020發(fā)送命令或讀取TDA8020的狀態(tài)。TDA8020有兩個地址選擇引腳(SAD0和SAD1)。在圖3中,這兩個地址選擇引腳接地,對應(yīng)兩個IC卡的I2C總線地址分別是40H和48H。如果系統(tǒng)中有別的I2C總線器件,可以按表2的方式進行尋址。 (1)向TDA8020寫入命令的格式 圖4為向TDA8020寫入命令的格式。按圖3所示,對卡1的地址和寫的字節(jié)為40H。 其中控制字節(jié)各位的含義如表3所列。 (2)讀TDA8020內(nèi)部狀態(tài)的數(shù)據(jù)格
15、式 從TDA8020讀出狀態(tài)的格式如圖5所示。按圖3所示,對卡1的地址和讀的字節(jié)為41H。 其中狀態(tài)字節(jié)中各位的含義如表5所列。 3 總 結(jié) 以上比較詳細地介紹了三種不同接口的IC卡讀寫芯片。這三種方式最大的區(qū)別在于其與IFD內(nèi)的CPU的通信方式不一樣,并且也都符合ISO/IEC7816的標準。但是,這三個讀寫芯片有一些地方也存在一些差異。 TDA8020支持A類和B類卡,但是WatchCore和SNIPER II CST56I01只支持A類卡。(雖然SNIPER II CST56I01內(nèi)部寄存器中有一位是卡類選擇,但卻只支持A類卡。) TDA8020和SNIPER II CST56I01其ESD保護達6kV,但是WatchCore卻沒有ESD保護功能。 TDA8020對卡的電源可以直接支持,并有過流保護功能;但是WatchCore和SNIPER II CST56I01卻只有通過一個功放管來實現(xiàn),并且沒有過流保護功能,只有外接保護電路(如加可復(fù)位保險絲)。 就其接口方式來說,I2C總線的TDA8020和串口的WatchCore雖然與IC卡讀寫器內(nèi)的CPU的連接方便,但是一般CPU沒有多余的串口和I2C總線接口給這兩個芯片,一般要用通用I/O口來模擬串口和I2C總線接口才能進行通信。而SNIPER II CST56I01與IFD內(nèi)的CPU的并行通
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 加盟連鎖店合同范本
- 代銷經(jīng)營合同范本
- 上海咨詢合同范本
- 充電服務(wù)合作合同范本
- 中考體育項目承包合同范本
- 城市軌道交通與區(qū)域協(xié)調(diào)考核試卷
- 出售電纜合同范本
- 數(shù)碼產(chǎn)品電池壽命延長技術(shù)考核試卷
- 醫(yī)院裝飾改造合同范本
- 公寓有購房合同范例
- PPK計算模板完整版
- 居民自建房經(jīng)營業(yè)態(tài)不超過三種承諾書
- 河南省陜州區(qū)王家后鄉(xiāng)滹沱鋁土礦礦產(chǎn)資源開采與生態(tài)修復(fù)方案
- 2015-2022年大慶醫(yī)學高等專科學校高職單招語文/數(shù)學/英語筆試參考題庫含答案解析
- 兩篇古典英文版成語故事塞翁失馬
- 中國古代文學史 馬工程課件(中)13第五編 宋代文學 第一章 北宋初期文學
- 中國高血壓臨床實踐指南(2022版)解讀
- 最常用漢字5000個
- 《了凡四訓》課件
- 醫(yī)院住院病人健康教育表
- 不良資產(chǎn)與處置課件
評論
0/150
提交評論