<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 測試測量 > 設計應用 > 智能卡的自動(dòng)化測試平臺設計

智能卡的自動(dòng)化測試平臺設計

作者: 時(shí)間:2012-02-29 來(lái)源:網(wǎng)絡(luò ) 收藏
  引 言

  隨著(zhù)在金融、電信、移動(dòng)通信、醫療保險、付費電視等領(lǐng)域應用的迅速增長(cháng),其可靠性要求越來(lái)越高,而針對模塊的已經(jīng)成為必不可少的質(zhì)量保證手段。不需要人工干預,能提高效率,受到更多重視和應用。在發(fā)展測試的過(guò)程中,一個(gè)高效的測試平臺是其基本保障。根據的應用現狀和市場(chǎng)需求,本設計用TCL語(yǔ)言和C語(yǔ)言聯(lián)合編程的方法,以 PC/SC為編程接口,實(shí)現了智能卡的測試平臺,能夠對智能卡進(jìn)行質(zhì)量和性能的測試。

  1 測試系統結構

  具有測試功能的系統結構如圖1所示。測試系統一般由測試平臺、讀/寫(xiě)器和智能卡三個(gè)部分組成。測試平臺運行測試腳本,并對從智能卡返回的結果進(jìn)行處理。智能卡內部有被測程序,響應測試平臺發(fā)來(lái)的命令,返回測試數據。讀/寫(xiě)器提供測試平臺和智能卡的接口。這里的研究重點(diǎn)是測試平臺。

具有測試功能的系統結構

  2 測試平臺的設計思路

  測試平臺軟件由兩個(gè)部分組成,即界面程序和通信軟件程序,如圖2所示。界面程序提供一個(gè)友好的圖形畫(huà)面,接受用戶(hù)指令,如腳本輸入,按鈕響應等。界面將用戶(hù)的任務(wù)轉換為內部指令,然后由通信軟件程序具體實(shí)施,而通信軟件程序負責與USB讀卡器通信。下面分別介紹界面程序和通信軟件程序的實(shí)現原理。

測試平臺的軟件結構

圖2是測試平臺的軟件結構

界面程序
圖3界面程序

  2.1 界面程序

  界面程序分為三層,頂層為腳本層,用于支持ATP語(yǔ)言。ATP并不是一種全新的語(yǔ)言,是從TCL語(yǔ)言口
擴展而來(lái),針對ATP開(kāi)辟的命令集,它包括 TCL基本命令和應用程序相關(guān)的擴展命令。TCL基本指令的使用方法可以參考文獻[1,2],擴展命令是TCL專(zhuān)門(mén)針對智能卡的測試而擴展的。

  中間層是根據應用需求而擴展的TCI 解釋器,它包含TCI標準庫和與底層接口程序有關(guān)的TCL擴展庫。ATP的基本部分由TCL語(yǔ)言解釋器調用TCL標準庫來(lái)執行;ATP的擴展部分由擴展的 TCL解釋器調用TCL擴展庫執行。

  頂層和中間層說(shuō)明了TCI 即是一種腳本語(yǔ)言也是一個(gè)解釋器。底層是接口程序,提供與通信軟件程序的接口,負責發(fā)送命令和返回狀態(tài)。

圖4顯示了TCI 與應用程序的調用關(guān)系

  TCL 的標準命令是TCL自帶的,而與應用程序相關(guān)的特殊命令需要用C代碼去擴展,下面詳細介紹如何擴展TCL命令。使用TCL之前,應用程序必須首先創(chuàng )建 TCL解釋器創(chuàng )建標準的命令解釋器,然后可以調用Tcl CreateCommand過(guò)程使用用戶(hù)自定義命令來(lái)擴展解釋器,它的原型是:Tcl—CreateCom mand (interp,cmdName,proc,cli—entData,deleteProc)其中:interp為創(chuàng )建的解釋器;cmdName為創(chuàng )建的命令名字;proc為與命令相對應的函數;clientData為一個(gè)字長(cháng)的值,通常指向一個(gè)專(zhuān)用數據結構;deleteProc為注銷(xiāo)命令的函數名,如果其為空,則在注銷(xiāo)命令前不調用任何函數。調用Tcl—CreateCommand時(shí),擴展命令name就會(huì )和name—tcl聯(lián)系起來(lái);執行name命令時(shí),會(huì )進(jìn)入name— tcl函數處理name命令。
創(chuàng )建完程序自定義命令后,應用程序進(jìn)入死循環(huán),等到命令后就傳遞給解釋器。調用Tcl— Eval(interp,script),通過(guò)script的內容知道命令的類(lèi)型后,選擇在相應的過(guò)程函數中進(jìn)行計算。

  通信軟件程序的執行就是在過(guò)程函數里面被調用,這樣就實(shí)現了界面程序與通信軟件程序的接口。

  2.2 通信軟件程序

  通信軟件程序遵循PC/SC規范。PC/SC規范是由PC/SC工作組提出的。PC/SC工作組是一個(gè)主要由智能卡廠(chǎng)商和計算機廠(chǎng)商組成的委員會(huì ),主要成員有微軟、蘋(píng)果、雅斯拓、金普斯、英飛凌、菲利普等。PC/SC規范是一個(gè)基于Windows平臺的標準用戶(hù)接口(API)。它獨立于硬件設備,使得應用程序的開(kāi)發(fā)人員不必考慮由于硬件改變而引起的應用程序變更,從而降低了軟件開(kāi)發(fā)成本。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 智能卡 自動(dòng)化 測試

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>