www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導讀]摘要:詳細介紹接觸式IC卡讀寫原理;結合一個基于不同讀寫芯片、可以同時操作6片接觸式IC卡的系統(tǒng),對包括并行通信、半雙工串行通信和I2C通信的幾種不同接口形式的IC卡讀寫芯片進行了詳細的對比分析。引 言??IC卡

摘要:詳細介紹接觸式IC卡讀寫原理;結合一個基于不同讀寫芯片、可以同時操作6片接觸式IC卡的系統(tǒng),對包括并行通信、半雙工串行通信和I2C通信的幾種不同接口形式的IC卡讀寫芯片進行了詳細的對比分析。

引 言

??IC卡 (Integrated Circuit Card,集成電路卡)是繼磁卡之后出現的又一種新型信息工具。IC卡在有些國家和地區(qū)也稱智能卡(smart card)、智慧卡(intelligent card)、微電路卡(microcircuit card)或微芯片卡等。它是將一個微電子芯片嵌入符合ISO 7816標準的卡基中,做成卡片形式;已經十分廣泛地應用于包括金融、交通、社保等很多領域。

  IC卡讀寫器是IC卡與應用系統(tǒng)間的橋梁,在ISO國際標準中稱之為接口設備IFD(Interface Device)。IFD內的CPU通過一個接口電路與IC卡相連并進行通信。IC卡接口電路是IC卡讀寫器中至關重要的部分,根據實際應用系統(tǒng)的不同,可選擇并行通信、半雙工串行通信和I2C通信等不同的IC卡讀寫芯片。

1 接觸式IC卡接口技術原理

  IC卡讀寫器要能讀寫符合ISO7816標準的IC卡。IC卡接口電路作為IC卡與IFD內的CPU進行通信的唯一通道,為保證通信和數據交換的安全與可靠,其產生的電信號必須滿足下面的特定要求。

    1.1 完成IC卡插入與退出的識別操作    1.2 通過觸點向卡提供穩(wěn)定的電源    (3)通信方式為I2C的TDA8020

IC卡接口電路對IC卡插入與退出的識別,即卡的激活和釋放,有很嚴格的時序要求。如果不能滿足相應的要求,IC卡就不能正常進行操作;嚴重時將損壞IC卡或IC卡讀寫器。

(1)激活過程

為啟動對卡的操作,接口電路應按圖1所示順序激活電路:

◇RST處于L狀態(tài);

◇根據所選擇卡的類型,對VCC加電A類或B類,正常操作條件下VCC的電特性見表1;

表1 正常操作條件VCC的電特性

符  號 最小值 最大值

條    件

Vvcc/V 4.5
2.7
5.5
3.3
A類
B類
Icc/mA   60500.5 A類,在最大允許頻率
B類,在最大允許頻率時鐘停止

◇VPP上升為空閑狀態(tài);

◇接口電路的I/O應置于接收狀態(tài);

◇向IC卡的CLK提供時鐘信號(A類卡1~5MHz,B類卡1~4MHz)。

圖3

  如圖1所示,在t’a時間對IC卡的CLK加時鐘信號。I/O線路應在時鐘信號加于CLK的200個時鐘周期(ta)內被置于高阻狀態(tài)Z(ta 時間在t’a之后)。時鐘加于CLK后,保持RST為狀態(tài)L至少400周期(tb)使卡復位(tb在t’a之后)。在時間t’b,RST被置于狀態(tài)H。I/O上的應答應在RST上信號上升沿之后的400~40 000個時鐘周期(tc)內開始(tc在t’b之后)。

  在RST處于狀態(tài)H的情況下,如果應答信號在40 000個時鐘周期內仍未開始,RST上的信號將返回到狀態(tài)L,且IC卡接口電路按照圖2所示對IC卡產生釋放。

(2)釋放過程

當信息交換結束或失敗時(例如,無卡響應或卡被移出),接口電路應按圖2所示時序釋放電路:

◇RST應置為狀態(tài)L;

◇CLK應置為狀態(tài)L(除非時鐘已在狀態(tài)L上停止);

◇VPP應釋放(如果它已被激活);

◇I/O應置為狀態(tài)A(在td時間內沒有具體定義);

◇VCC應釋放。

圖4

 

  IC卡接口電路應能在表1規(guī)定的電壓范圍內,向IC卡提供相應穩(wěn)定的電流。

1.3 通過觸點向卡提供穩(wěn)定的時鐘

  IC卡接口電路向卡提供時鐘信號。時鐘信號的實際頻率范圍在復位應答期間,應在以下范圍內:A類卡,時鐘應在1~5MHz;B類卡,時鐘應在1~4MHz。

  復位后,由收到的ATR(復位應答)信號中的F(時鐘頻率變換因子)和D(比特率調整因子)來確定。

  時鐘信號的工作周期應為穩(wěn)定操作期間周期的40%~60%。當頻率從一個值轉換到另一個值時,應注意保證沒有比短周期的40%更短的脈沖。

2 幾種實現方式的對比與分析

  IFD內的IC卡讀寫芯片,按其與IFD內的CPU的通信方式進行分類,有并行通信、半雙工串行通信和I2C通信的讀寫芯片。圖3是一個基于三種不同通信方式讀寫芯片的通用IC卡讀寫器的原理示意。這個系統(tǒng)可以同時對6片IC卡進行操作,其中每一個IC卡讀寫芯片都可以驅動2片IC卡。應用系統(tǒng)可以根據實際情況合理選用其中的一種或多種讀寫芯片。

2.1 IC卡讀寫芯片的硬件對比分析

(1)通信方式為并行通信的CTS56I01

  CTS56I01支持兩個符合ISO/IEC7816-3標準的T0和T1傳輸協(xié)議的IC卡。它采用并行的方式與IFD內的CPU通信;可以檢查到卡的插入與拔出,并自動產生激活與釋放時序。CTS56I01內部每個通道都有發(fā)送緩沖空、ATR超時、釋放檢測完成、TS沒有收到等10個獨立的中斷源,當CTS56I01內部的狀態(tài)發(fā)生變化時,可以產生中斷信號。系統(tǒng)通過P0口與CTS56I01的數據線相連,地址選擇用P2[2:0],兩個中斷信號經過或門后接到89C51的INT0上。對IC卡的所有操作,只是對CTS56I01內部寄存器的讀寫操作,方便可靠。CTS56I01采用LQFP-32封裝,僅占很小的空間。

(2)通信方式為半雙工串行通信的WatchCore

  WatchCore是握奇公司為了方便各種嵌入式設備與IC卡的通信開發(fā)而推出的一款IC卡讀寫芯片,硬件平臺采用ST7261單片機,內部掩膜有握奇公司對IC卡進行讀寫操作的全部程序;支持ISO/IEC 7816 T=0、T=1異步傳輸協(xié)議的各種智能卡,支持對Memory卡操作,支持雙卡頭操作,與接口CPU采用半雙工串行通信。系統(tǒng)用P1.1和P1.2模擬一個串口與WatchCore進行通信。WatchCore采用SO-20裝封,占PCB板很小的位置。

圖5

 

  TDA8020是Philips生產的支持兩個獨立IC卡的讀寫芯片,IFD內的CPU采用I2C的方式向TDA8020發(fā)送命令和讀取狀態(tài),通過TDA8020的I/OuC端口向IC卡發(fā)送和接收數據。它支持符合ISO/IEC7816-3 T=0、T=1標準的IC卡,也支持符合EMV3.1.1(Europay,MasterCard,VISA)標準的卡。與它Pin-to-Pin兼容的芯片還有ST公司生產的ST8020等。TDA8020有2個地址選擇引腳。本系統(tǒng)的地址引腳接地,兩個IC卡對應的地址分別為0x40和0x48。I2C的時鐘信號和數據信號分別由89C51的P1.3和P1.4進行模擬,IC卡的數據通道I/OuC連89C51的P1.5和P1.6。TDA8020也采用LQFP-32裝封。

2.2 IC卡讀寫芯片的軟件設計

2.2.1 通信方式為并行通信的CTS56I01

  CST56I01只有3根地址線,內部卻有37個寄存器。其中有8個寄存器可以直接訪問,另外的29個寄存器要通過索引地址寄存器(IAR)來訪問。其訪問分為兩步:第一步是將要間接訪問的寄存器的地址寫到IAR寄存器中;第二步就是從數據寄存器(DR)中讀出數據或寫入數據到DR寄存器中,來完成對要間接訪問的寄存器的訪問。

下面的C51子程序是基于圖3的寫一個字節(jié)到要間接訪問的寄存器中的子程序。

#define SN2_IAR XBYTE[0x0000]

#define SN2_DR XBYTE[0x0100]

void WriteByteIndexed(BYTE bIndex, BYTE bData) {

P1.0=0;

SN2_IAR = bIndex;

SN2_DR = bData;

}

2.2.2 WatchCore的軟件設計

  WatchCore是不帶硬件的UART,其串行通信是用軟件實時仿真的。通信速度采用9600bps;通信字節(jié)格式為1位起始位,8位數據位,1位偶校驗位,2位停止位。TXD與RXD電氣信號是標準的CMOS電平,可直接與TTL的電路相連。以下是通信時的數據包格式。

(1)命令包

命令包是IC卡讀寫器內的CPU發(fā)往WatchCore的數據,其包格式如下:

NAD

PCB

LEN

DATA

BCC

NAD為卡頭選擇, NAD=0x00/0x12為主卡頭,NAD=0x13為從卡頭;

PCB與通信無關,CPU卡T=1時使用,PCB通常設置為0x00;

LEN為數據的字節(jié)長度(僅DATA段的字節(jié)數);

DATA為發(fā)送WactchCore或IC卡內的命令(命令參考ISO7816-4的標準);

BCC為異或校驗字節(jié)(BCC段前的4段所有字節(jié)的異或和)。

(2)數據包

數據包是WatchCore 收到命令包后返回的數據,其包格式如下:

NAD* 是WatchCore把命令包中NAD字節(jié)的高低4位互換后的返回。例如,命令包發(fā)送NAD=0x12,WatchCore則返回NAD*=0x21;

其它各段與命令包相同。

通信舉例(以下數據都用十六進制表示)

對主卡進行復位

發(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的軟件設計

  TDA8020與IFD內CPU的通信是用I2C總線方式進行的。通過I2C接口,IFD內的CPU可以向TDA8020發(fā)送命令或讀取TDA8020的狀態(tài)。TDA8020有兩個地址選擇引腳(SAD0和SAD1)。在圖3中,這兩個地址選擇引腳接地,對應兩個IC卡的I2C總線地址分別是40H和48H。如果系統(tǒng)中有別的I2C總線器件,可以按表2的方式進行尋址。

表2 TDA8020的I2C地址選擇表

SAD1 SAD0 CARD1 CARD2
0 0 40H 48H
0 1 42H 4AH
1 0 46H 4CH
1 1 48H 4EH

(1)向TDA8020寫入命令的格式

圖4為向TDA8020寫入命令的格式。按圖3所示,對卡1的地址和寫的字節(jié)為40H。

其中控制字節(jié)各位的含義如表3所列。

表3 命令控制字節(jié)各位的含義

名   稱 說     明
START和/STOP 0 為1,產生一個冷復位的激活時序:為0,產生一個釋放時序
WARM 1 為1,產生一個熱復位時序
3/5V 2 為1,設定卡的操作電壓為3V;為0,設定卡的操作電壓為5V
PDOWN 3 為1,設定卡為下電模式;為0,設定卡為正常工作模式
CLKPD 4 為1,設定下電模式下CLK停在高電平;為0,設定下電模式下CLK停在低電平
CLKSEL1 5  兩位設定卡在正常工作模式時的工作時鐘頻率見表4
CLKSEL2 6
I/OEN 7 I/O使能位。為1時,I/O與I/Ouc相連;為0時,I/Ouc是高阻狀態(tài)

(2)讀TDA8020內部狀態(tài)的數據格式

從TDA8020讀出狀態(tài)的格式如圖5所示。按圖3所示,對卡1的地址和讀的字節(jié)為41H。

其中狀態(tài)字節(jié)中各位的含義如表5所列。

表4 工作時鐘頻率選擇方式

CLKSEL2 CLKSEL1 CLOCK OU
0 0 CLKIN/8
0 0 CLKIN/4
1 0 CLKIN/2
1 1 CLKIN

表5 狀態(tài)字節(jié)各位的含義

名  稱

說       明

PRES 0 卡的狀態(tài)指示。為1時,檢測到卡:為0時,沒有檢測到卡
PRESL 1 為1時,卡的狀態(tài)還沒有讀;當為0時,卡的狀態(tài)已讀出
I/O 2 I/O為高時,這位為1;當I/O為低時,這位為0
SUPL 3 為1時,表示電源監(jiān)控器已輸出,上電后就為1,直到讀出后為0
PROT 4 為1時,表示過熱或過載狀態(tài)
MUTE 5 為1時表示卡在規(guī)定的時間內沒有發(fā)出ATR信號
EARLY 6 為1時表示卡在規(guī)定的時間前就已經發(fā)出ATR信號
ACTIVE 7 為1時,卡處于激活狀態(tài);為0時,卡處于釋放狀態(tài)

3 總 結

  以上比較詳細地介紹了三種不同接口的IC卡讀寫芯片。這三種方式最大的區(qū)別在于其與IFD內的CPU的通信方式不一樣,并且也都符合ISO/IEC7816的標準。但是,這三個讀寫芯片有一些地方也存在一些差異。

  TDA8020支持A類和B類卡,但是WatchCore和SNIPER II CST56I01只支持A類卡。(雖然SNIPER II CST56I01內部寄存器中有一位是卡類選擇,但卻只支持A類卡。)

  TDA8020和SNIPER II CST56I01其ESD保護達6kV,但是WatchCore卻沒有ESD保護功能。

  TDA8020對卡的電源可以直接支持,并有過流保護功能;但是WatchCore和SNIPER II CST56I01卻只有通過一個功放管來實現,并且沒有過流保護功能,只有外接保護電路(如加可復位保險絲)。

  就其接口方式來說,I2C總線的TDA8020和串口的WatchCore雖然與IC卡讀寫器內的CPU的連接方便,但是一般CPU沒有多余的串口和I2C總線接口給這兩個芯片,一般要用通用I/O口來模擬串口和I2C總線接口才能進行通信。而SNIPER II CST56I01與IFD內的CPU的并行通信雖然連接線較多,但其相應的軟件就方便多了。

  綜上所述,這三個IC卡讀寫芯片各有不同,在實現應用的過程中,只有根據不同的資源情況來選用不同的讀寫芯片。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉