国产探花在线精品一区二区,中文字幕亚洲视频,亚洲国产天堂久久综合网站,亚洲精品亚洲人成在线麻豆

歡迎您訪問鄭州興邦電子股份有限公司官方網(wǎng)站!
阿里巴巴誠信通企業(yè)
全國咨詢熱線:40000-63966
興邦電子,中國水控機第一品牌

聯(lián)系興邦電子

全國咨詢熱線:40000-63966

售后:0371-55132951/55132952

工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產(chǎn)業(yè)園

IC卡讀寫接口的可靠性設(shè)計

文章出處:http://5052h112.com 作者:不詳   人氣: 發(fā)表時間:2011年11月04日

[文章內(nèi)容簡介]:IC卡讀寫接口的可靠性設(shè)計

摘 要:從幾個與可靠性緊密相關(guān)的問題入手,較為系統(tǒng)地闡述了 IC 卡讀寫接口的可靠性設(shè)計問題。
  中圖分類號:TP216 文獻標(biāo)識碼:B

1 概 述
  IC 卡與磁卡等存儲介質(zhì)相比,在安全性等諸多方面具有不可比擬的優(yōu)越性,它在國民經(jīng)濟各個領(lǐng)域的應(yīng)用,是一種必然趨勢。
  由于 IC 卡使用中均牽涉到貨幣的問題,因此,它的可靠性顯得至關(guān)重要。如何最大限度地提高 IC 卡讀寫器(或接口)的可靠性,就成了 IC 卡全面推廣應(yīng)用的關(guān)鍵所在。
  IC 卡讀寫接口的可靠性,包括 3 個方面:
  (1)IC 卡讀寫過程能可靠地進行;
  (2)任意插拔 IC 卡不會引起 IC 卡損傷;
  ( 3 )在IC卡讀寫中出現(xiàn)問題引起異常時,能及時告警并恢復(fù)到正常狀態(tài)。
  2 IC 卡讀寫接口的可靠性設(shè)計
  IC 卡讀寫接口的電原理,一般如圖 1 示:


   2.1 微處理控制器(CPU)的選型
  在 IC 卡讀寫裝置中,大多采用目前流行的單片機,例如 ATMEL 的 89C2051,或 MICROCHIP 的 PICI6 系列中的 PICI6X84 等。這些主流單片機的性 / 價比較高,而且真正能單片工作,既可減少 PCB 板面積,又可提高系統(tǒng)工作可靠性;特別是 PICI6F84單片機,除了具有非常適合新品試投運的現(xiàn)場可編程的 Flash Memory 外,內(nèi)部還有 64 字節(jié)的 EEPROM ,尤其適用于存放 IC 卡數(shù)據(jù)動靜態(tài)加(解)密因子,對于進一步提高 IC 卡數(shù)據(jù)的可靠性、安全性十分有利,應(yīng)為 IC 卡儀表(水表等)首選的 CPU 單元。但由于 IC 單片機一般沒有串行接口,因此對于 IC 卡讀寫器,則宜采用 89 系列單片機。
  2.2 IC卡電源的上下電控制
  IC卡的上電一般是可知的,即對 IC 卡讀寫時需要給 IC
  卡上電(送電源)。因此,IC 卡的上電控制比較簡單。由于 IC
  卡讀寫電流很小,一般為幾個 mA ,因此其實現(xiàn)可按照圖 1 所
  示。由單片機來的 IC_PWR 信號通過小功率三極管 9012 控制系統(tǒng)的 +5V 電源切入 IC 卡座與否。當(dāng) IC 卡上電后,發(fā)光二極管 L1 被點亮,起讀寫指示作用。每次對 IC 卡讀寫完成后,即及時下電,以減少插拔時帶電的可能性。
  要保證 IC 卡能任意插拔(有可能處于帶電狀態(tài)),不致引起 IC 卡損壞,必須要使得 IC 卡拔卡過程處于 IC 卡斷電的狀態(tài)。要做到這點,必須要保證 IC 卡的下電迅速及時。為此,可將IC 卡的拔卡處理由最高級中斷程序來實現(xiàn)(注意:采用邊沿觸發(fā)方式)。如何及時檢測拔卡動作是問題的關(guān)鍵。利用 IC 卡座的 IC 卡檢測開關(guān)(常閉)可以解決此問題。
  但是,由于機械觸點開關(guān)在動合過程中不可避免存在抖動,因此怎么避免因抖動引起中斷重入進而引起系統(tǒng)死機的問題成為最終癥結(jié)所在。如果采用硬件“去抖”(如施密特電路),不僅增加成本,而且實踐發(fā)現(xiàn)也不是十分可靠;采用軟件延時“去抖”,只要延時常數(shù)合適,不僅保證 IC 卡下電的迅速及時,而且十分有效地解決了抖動問題。 IC 卡下電中斷程序框圖,如圖 2 示。

   2.3 IC卡與 CPU間串行信號的限流
  為了保證 IC 卡帶電插拔的安全可靠,需對 IC 卡與 CPU 間串行通訊的數(shù)據(jù)信號與時鐘信號進行限流(圖 1 虛線框內(nèi)兩電阻即為限流電阻),限流電阻阻值一般可取 200Ω左右。具體如圖1示。此限流電阻同時可以防止往 IC 卡座中插入導(dǎo)電的異物而引起系統(tǒng)損壞。
  2.4 IC卡的可靠讀寫
  IC 卡的可靠讀寫主要包括以下兩方面:
  ( 1 )讀寫過程準(zhǔn)確可靠;
  ( 2 )避免無卡時進行讀寫操作。
  為保證 IC 卡讀寫過程準(zhǔn)確可靠,只要保證讀寫函數(shù)嚴(yán)格按照 IC 卡的讀寫時序外,采用“重讀”和“回讀”措施。即:讀 IC 卡時,采用讀兩次的方式,如兩次相符,則數(shù)據(jù)有效,否則再進行第三次讀;寫 IC 卡時,先將數(shù)據(jù)寫入,再回讀比較,相符則繼續(xù),否則重寫一次,以免由于偶然的寫失敗導(dǎo)致得出 IC 卡失效的錯誤結(jié)論。
  為避免 IC 卡讀寫接口死機以及上位機死機,流程如圖 3示。

  上位機收到無卡標(biāo)志字節(jié)后,可以避免進行無卡狀態(tài)下的誤操作,進而避免死機現(xiàn)象。
  

   2.5 與上位機通訊的RS-232C通訊接口及可靠通訊的實現(xiàn)TTL 與 RS-232C 電平轉(zhuǎn)換由諸如 Max202E 接口芯片實現(xiàn),采用簡單的軟握手三線制通訊方式。為了確保串行通訊的可靠性,應(yīng)著重從上下位機通訊軟件的以下幾個方面入手:
  ( 1 )通訊電纜盡可能采用屏蔽三芯電纜;
  ( 2 )合理選擇通訊波特率;
  由于上下位機通訊的數(shù)據(jù)量很小(最多為 IC 卡的容量),因此通訊波特率可選低一些,如 2400 。但要高度重視下位機(即 IC 卡讀寫裝置)的波特率參數(shù)整定問題,對于 51 系列 CPU 尤其要注意電源管理寄存器中 SMOD 位的設(shè)置。以 2400 波特率為例,當(dāng) SMOD = 0 時,波特率參數(shù)為 0F9H ,實際波特率為 2232 ,此時波特率相對誤差是 7%;而當(dāng) SMOD = 0時,波特率參數(shù)為 0F3H ,實際波特率為 2404 ,此時相對誤差是 0.16%,滿足正常通訊所規(guī)定的波特率相對誤差小于 5%的要求。
  ( 3 )上位機管理系統(tǒng)的開發(fā)平臺目前較多采用基于Windows95環(huán)境的諸如 VFP3.0 、DELPHI 4.0等 RAD 開發(fā)平臺,其中的串行通訊接口程序既可直接使用串行通訊控件 MSCOMM ,也可采 用基于直接對串口操作的動態(tài)鏈接庫(DLL)方式。前者編程簡單,后者則具有較強的硬件駕馭能力,但動態(tài)鏈接庫一般要借助嵌入?yún)R編實現(xiàn)。
  如果上位機的管理軟件是基于 DOS 環(huán)境的,那么必須注意看通 訊接口程序采用調(diào)用BIOS,函數(shù),例如 TC 2.0 的 BIOSCOM()函數(shù)時,要注意 BIOS 串行通訊函數(shù)對握手信號的奇特要求;否則,一般的三線制通訊程序無法正常運行。
  2.6 工作狀態(tài)的有效提示
  大多 IC 卡讀寫裝置一般有聲光指示(報警)接口,提到的發(fā)光二極管即為 IC 卡讀寫工作狀態(tài)指示;聲音提示可采用效率高、體積小的有源或無源蜂鳴器來實現(xiàn)。
  2.7 死機后的恢復(fù)
  如何避免上下位機均不死機或能簡單恢復(fù)正常工作呢?
  對于作為下位機的 IC 卡讀寫接口,我們利用 IC 卡能隨意插拔,再結(jié)合 IC 卡的拔卡處理是一個高級中斷的特點,將 IC 卡的拔卡中斷程序設(shè)計成兩個分支:
  (1)非 IC 卡讀寫且非與上位機通訊狀態(tài);
  (2)在與上位機通訊、或正在對 IC 卡讀寫狀態(tài)。
  第一種情況下,中斷子程序是簡單的拔卡 Beep 告警后,直接中斷返回;對于第二種情況,則會引起系統(tǒng)工作失常甚至死機,在恢復(fù)中斷環(huán)境后,用強制跳轉(zhuǎn)指令強制從主程序開始執(zhí)行,達到復(fù)位的效果。程序框圖,如圖 2 示。
  對于上位機,為了避免由于基于查詢方式的串行通訊失常引起死機現(xiàn)象,可采取限時通訊的辦法。
  5 應(yīng)用舉例
  將可靠性設(shè)計思想成功地應(yīng)用于本地的 IC 卡自來水預(yù)收費管理系統(tǒng)中。其中 IC 卡讀寫器采用 ATMEL 89C2051 單片機為內(nèi)核,采用交叉技術(shù)的三線制串行通訊方式與上位機的基于 DELPHI 4.0 的預(yù)收費管理系統(tǒng)軟件進行通訊 IC 卡水表則采用 PIC16F84 單片機。經(jīng)過近兩個月的實際運行,可靠性是令人滿意的

本文關(guān)鍵詞:IC卡讀寫接口的可靠性設(shè)計
回到頂部
    1. <menu id="r98jr"><dl id="r98jr"></dl></menu>
        <ul id="r98jr"></ul>

        1. 主站蜘蛛池模板: 南和县| 成安县| 贵南县| 长子县| 收藏| 抚远县| 登封市| 张北县| 潞城市| 大洼县| 安义县| 兴隆县| 南郑县| 博白县| 和顺县| 镇巴县| 方正县| 丁青县| 文水县| 鹤山市| 田林县| 淳化县| 平泉县| 牡丹江市| 通山县| 达孜县| 黄平县| 阳原县| 和田县| 长宁县| 响水县| 合作市| 仙桃市| 南安市| 安岳县| 北宁市| 榆树市| 建平县| 漳浦县| 金堂县| 隆尧县|