<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è) > 嵌入式系統 > 設計應用 > 二代身份證智能采集器研究與開(kāi)發(fā)

二代身份證智能采集器研究與開(kāi)發(fā)

作者: 時(shí)間:2008-01-23 來(lái)源: 收藏

  引 言

本文引用地址:http://dyxdggzs.com/article/77962.htm

  隨著(zhù)二代的換發(fā)工作的推進(jìn),我國需要使用二代的領(lǐng)域越來(lái)越廣泛。由于二代件是射頻智能卡,可以通過(guò)二代身份證閱讀器來(lái)讀取身份信息,這為提高工作效率和錄入信息的準確度提供了條件,但是二代證閱讀器在銀行、電信、郵政等行業(yè)推廣使用仍有很大障礙。這是因為這些行業(yè)的業(yè)務(wù)終端一般都使用非windows操作系統的終端,但是二代證閱讀器生產(chǎn)廠(chǎng)家提供的只是windows系統下的SDK開(kāi)發(fā)包,使用戶(hù)無(wú)法在這些行業(yè)進(jìn)行二次開(kāi)發(fā)。即便是windows系統,有些行業(yè)也不希望因為使用二代證閱讀器而改動(dòng)自己軟件系統?;谶@樣情況,我們設計開(kāi)發(fā)了二代身份證,可以有效解決這個(gè)問(wèn)題。二代身份證是配合第二代居民身份證閱讀器在銀行、電信、郵政等領(lǐng)域應用的第二代居民身份證信息自動(dòng)錄入工具,二代身份證可以實(shí)現在不改變銀行、電信、郵政等行業(yè)應用設備、軟件的情況下,實(shí)現對第二代居民身份證信息的自動(dòng)錄入,消除手動(dòng)錄入錯誤,減少工作量,提高效率。

  1、設計方案分析

  1.1硬件設計

  智能采集器通過(guò)串口連接線(xiàn)與二代身份證閱讀器的串口相連,通過(guò)鍵盤(pán)PS/2接口連接線(xiàn)與PC機或終端的PS/2接口相連,使標準鍵盤(pán)與智能采集器有效隔離,用戶(hù)在使用智能采集器的同時(shí),也可使用標準鍵盤(pán),實(shí)現智能采集器與標準鍵盤(pán)的分時(shí)復用。二代身份證閱讀器是基于射頻卡技術(shù)的身份證信息讀取設備,能快速準確地讀取二代證中的身份密文信息。本智能采集器可以獨立完成與二代身份證閱讀器的驗證及通信,同時(shí)可以讀取并保存閱讀器發(fā)過(guò)來(lái)相應身份證的信息,然后通過(guò)內部高速MCU進(jìn)行運算和編碼,把接收到的信號轉換標準PS/2鍵盤(pán)信號,直接輸入計算機顯示相應的信息。

  智能采集器的系統邏輯框圖如圖1所示。

  

智能采集器的系統邏輯框圖

 

  圖1智能采集器的系統邏輯框圖

  硬件結構原理圖如圖2所示

  

智能采集器硬件結構原理圖

 

  圖2、智能采集器硬件結構原理圖

  智能采集器的主控MCU為STC89C516RD+[1],該單片機是宏晶科技公司推出的新一代超強抗干擾、高速、低功耗的MCU,其指令代碼完全兼容傳統8051單片機, 其晶振為11.0592MHz,串行接口電平轉換芯片為ADM202,模擬開(kāi)關(guān)CD4066實(shí)現了專(zhuān)用鍵盤(pán)與標準鍵盤(pán)的分時(shí)復用,電源直接從主機的PS/2口供電,蜂鳴器和指示燈由CPU控制。

  1.2軟件設計

  智能采集器的軟件工作流程如圖3所示:

  

程序工作原理圖

 

  圖3 程序工作原理圖

  系統通過(guò)RS-232通信接口發(fā)送命令請求到第二代身份證閱讀器,讀出證件信息;經(jīng)過(guò)驗證后,保存到智能采集器中;再等待系統定義的熱鍵按下,一旦有熱鍵按下,智能采集器將相應的信息取出;處理之后發(fā)送到PC機的PS/2鍵盤(pán)接口,在光標閃爍處顯示相應信息。

  本系統包括系統初始化(如各寄存器初始化、串口初始化、端口初始化等) 、數據采集、GBK編碼轉換、鍵盤(pán)事件處理、數據發(fā)送等模塊。采用軟件控制程序的循環(huán)執行,以達到實(shí)時(shí)檢測并發(fā)送信息的目的。

  在數據通信方面,使用了單片機自帶的USART通用同步異步接收傳輸器,采取異步工作模式,8位數據格式。因此需在程序啟動(dòng)時(shí)對相關(guān)寄存器進(jìn)行初始化。同時(shí)須與身份證閱讀器同步傳輸波特率。

  由于CPU使用11.0592MHz的晶振,采用高速通信模式,根據文獻2可得公式:

  要計算的波特率= 2SMOD.Fosc/64,設置波特率為9600,Fosc應等于FDH。

  MOVLW FDH

  MOVWF SPBRG ;設置波特率為9600

  通信亦采用輪詢(xún)方式[3],智能采集器通過(guò)連接端口,不斷向身份證閱讀器發(fā)送卡片輪詢(xún)命令(命令格式:AA AA AA 96 69 00 03 20 01 22),當收到應答信息為(AA AA AA 96 69 00 08 00 00 9F 00 00 00 00 97)時(shí),則表示閱讀器已經(jīng)檢測到有效的二帶身份證卡了,然后進(jìn)行相關(guān)數據采集處理。使用MOV INDEX, W語(yǔ)句取得接收身份證數據,使用MOV SDA,C 語(yǔ)句發(fā)送命令數據。

  出錯處理部分對主流程和按鍵輪詢(xún)部分分別進(jìn)行糾錯。為防止程序進(jìn)入死循環(huán),添加了斷電功能,用于對智能采集器的重啟糾錯。

  系統采用結構化程序設計方案,具有較好的模塊性、可移植性和可修改性;系統通過(guò)主控流程管理和調度其他模塊,其主程序流程如圖4:

  

主程序流程圖

 

  圖4 主程序流程圖

  2關(guān)鍵技術(shù)分析

  2.1漢字編碼轉換

  為了進(jìn)行漢字信息處理,國家專(zhuān)門(mén)于1981年頒布了國標GB2312――《信息交換漢字編碼字符集》。其中共收集了漢字6763個(gè),并確定每個(gè)漢字采用兩字節編碼。區位碼和國際碼這兩種漢字編碼都由國標GB2312規定??紤]到GB2312支持的漢字太少,1995年的漢字擴展規范GBK1.0收錄了21886個(gè)符號,它分為漢字區和圖形符號區。漢字區包括21003個(gè)字符。2000年的GB18030是取代GBK1.0的正式國家標準。它是對GBK和GB2312編碼的進(jìn)一步擴充[4]。

  由于第二代身份證卡內存儲的漢字信息為GB13000編碼,考慮到本智能采集器除了應用于銀行、電信、郵政等終端設備相連外,還需要和其他PC機相連,對于連接PC機,經(jīng)測試目前windows98以上的操作系統都支持GB1300,可以將閱讀器中的漢字編碼直接顯示,而當前許多終端設備主要使用GB2312字庫、GBK字庫、GB18030字庫,這就需要根據終端支持的字庫不同,將閱讀器中的漢字編碼進(jìn)行適當的處理后顯示在不同類(lèi)型的終端設備上。鑒于此,我們在設計中考慮到漢字編碼的兼容性和用戶(hù)操作的方便性,選擇在智能采集器中采用GBK漢字庫,并建立GB1300和GBK對應的編碼字典,如果終端設備只支持GB2312字庫,則在讀取閱讀器中的漢字編碼后,通過(guò)查找字典,將GB1300編碼轉換為對應的區位碼,對于不能查找到的冷僻字,則自動(dòng)忽略;如果終端設備支持GBK或GB18030,則輸出GBK編碼直接顯示。實(shí)踐證明,該方案不僅可以兼容當前絕大部分終端設備,而且能無(wú)縫連接到PC機上的各類(lèi)應用。

  2.2專(zhuān)用鍵盤(pán)和標準鍵盤(pán)的分時(shí)復用

  由于本程序要實(shí)現采集器專(zhuān)用鍵盤(pán)與宿主機標準鍵盤(pán)的分時(shí)復用,所以按照使用手冊將相關(guān)插頭、插座對接。根據程序檢測相應針腳的電平高低來(lái)判斷允許那個(gè)數據信號輸出,從而通過(guò)選擇不同的輸入地址線(xiàn),選擇不同的輸入設備,達到分時(shí)復用的目的。

  2.3身份證數據幀格式解析

  公安部已經(jīng)嚴格規定了二代證的信息儲存格式如表1所示:

  表一: 二代身份證數據格式

  

二代身份證數據格式

 

  智能采集器通過(guò)輪詢(xún)發(fā)現二代證閱讀器中已經(jīng)存在身份信息時(shí),則向連接端口發(fā)送AA AA AA 96 69 00 03 30 01 32命令,可以按照上面給定的格式讀取相應的數據信息。其中:性別字段目前的代碼為1-男,2-女,9-其他;家庭住址字段中注意‘-’的識別;追加信息字段表示地址變更信息,若沒(méi)有變更,則該字段為空;對于照片信息,智能采集器只是負責將編碼信息按特定的字符流傳輸到終端或PC機上,然后使用公安部提供的SDK解密顯示圖像;目前只能在windows 平臺上實(shí)現圖像顯示。

  3、結束語(yǔ)

  本智能采集設備支持即插即用,采用專(zhuān)用鍵盤(pán)設計,不需要切換輸入法,在銀行、電信、郵政等行業(yè)應用時(shí),不需要對原有系統的軟硬件作任何改動(dòng),即可進(jìn)行第二代居民身份證信息的自動(dòng)錄入操作;使用方便快捷。通過(guò)實(shí)際應用于成都市建設銀行部分支行前臺營(yíng)業(yè)服務(wù)系統表明:本設計方案消除手動(dòng)錄入錯誤,減少工作量,提高了工作效率。

蜂鳴器相關(guān)文章:蜂鳴器原理


關(guān)鍵詞: 身份證 智能采集器 RS232

評論


相關(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>