<tr id="e4x9y"><fieldset id="e4x9y"></fieldset></tr>
    
    

    <sub id="e4x9y"><p id="e4x9y"></p></sub>
      <blockquote id="e4x9y"><p id="e4x9y"><noscript id="e4x9y"></noscript></p></blockquote>

      <meter id="e4x9y"><td id="e4x9y"></td></meter>
      <cite id="e4x9y"><track id="e4x9y"></track></cite>
      3P免费视频,三上悠亚日韩精品二区,一亚洲一区二区中文字幕,综合色天天久久,中文字幕乱码无码人妻系列蜜桃 ,亚洲中文字幕有码,欧美顶级metart祼体全部自慰,午夜无码福利

      DONSEE東信智能 - 身份證社保卡讀卡智能終端應(yīng)用服務(wù)商

      eastcoms@qq.com
      400-6722-705
      首頁(yè) > 服務(wù)支持專區(qū) > 產(chǎn)品支持 > SDK二次開發(fā)包和軟件下載

      EST系列身份證閱讀器(讀卡器)Linux二次開發(fā)包SDK(含libwlt2bmp.so相片解碼)

      來(lái)源:www.m.yjcsbsb.cn   標(biāo)簽:Linux 身份證 閱讀器 讀卡器 相片解碼 開發(fā)包 SDK libwlt2bmp   發(fā)布時(shí)間: 2018-9-25 10:12:43

      身份證閱讀器模組模塊,支持身份證、社保卡、CPU卡、M1卡、IC卡、醫(yī)保卡、磁條卡、銀行卡等多種卡片識(shí)別讀取,提供完善的接口SDK二次開發(fā)技術(shù)支持,可提供Linux、單片機(jī)、ARM的通訊協(xié)議以及Android、Windows等系統(tǒng)二次開發(fā)包,可以適用于市場(chǎng)上的閘機(jī)、門禁、人臉識(shí)別考勤機(jī)、機(jī)器人終端、通道閘等產(chǎn)品使用。

      身份證閱讀器Linux系統(tǒng)開發(fā)包

      版本:V2018.09.25(USB版本)

      注意:此Linux版本是廣東東信智能科技有限公司最新的采用USB接口通訊的開發(fā)包,涵蓋了身份證、M1、CPU、IC等多種卡片的Linux系統(tǒng)應(yīng)用示例,包括了libwlt2bmp.so身份證相片解碼。

      應(yīng)用產(chǎn)品:門禁系統(tǒng)、道閘、考勤系統(tǒng)以及人臉識(shí)別系統(tǒng)、自助終端、機(jī)器人系統(tǒng)等。

      適合本Linux二次開發(fā)的身份證閱讀器系列產(chǎn)品

      ///////////////////////////////////////////各卡片操作順序//////////////////////////////

      【typeA CPU 卡操作順序】

      1 設(shè)置為TypeA卡片

      2 請(qǐng)求卡片

      3 防碰撞

      4 選擇卡片

      5 上電

      6 APDU 命令

      【typeB 卡操作順序】

      1 設(shè)置為TypeB卡片

      2 上電

      3 選卡

      4 APDU 命令

      【M1卡操作順序】

      1 請(qǐng)求卡片

      2 防碰撞

      3 選擇卡片

      4 認(rèn)證密鑰

      5 讀或?qū)?/p>

      【接觸CPU卡操作順序】

      1 上電復(fù)位

      2 APDU 命令

      【身份證操作順序】

      讀取證件

      獲取證件類型

      獲取信息

      Linux系統(tǒng)開發(fā)包核心代碼:

      #ifndef _EST100_BASE_H_

      #define _EST100_BASE_H_

      #include <stdio.h>

      #include <errno.h>

      #include <dlfcn.h>

      #include <errno.h>

      #include <unistd.h>

      #include <stdlib.h>    

      #include <stdarg.h>

      #include <unistd.h>     

      #include <sys/time.h>

      #include <ctype.h>

      #include <sys/ioctl.h>

      #include <fcntl.h>

      #include <string.h>

      #include <sys/types.h>

      #include <stddef.h>   

      #include <termios.h> 

      #include <strings.h>

      #include <stdbool.h>

      #include <locale.h>

      #include <iconv.h>

      #include <sys/io.h>//chmod

      #include <sys/stat.h>

      #include "./include/libusb-1.0/libusb.h" 

      #define IFD_OK0 //執(zhí)行成功

      #define IFD_ICC_TypeError-1 //卡片類型不對(duì)

      #define IFD_ICC_NoExist-2 //無(wú)卡

      #define IFD_ICC_NoPower-3 //有卡未上電

      #define IFD_ICC_NoResponse-4     //卡片無(wú)應(yīng)答

      #define IFD_ConnectError-11     //讀卡器連接錯(cuò)

      #define IFD_UnConnected-12         //未建立連接(沒(méi)有執(zhí)行打開設(shè)備函數(shù))

      #define IFD_BadCommand-13         //(動(dòng)態(tài)庫(kù))不支持該命令

      #define IFD_ParameterError-14     //(發(fā)給動(dòng)態(tài)庫(kù)的)命令參數(shù)錯(cuò)

      #define IFD_CheckSumError-15     //信息校驗(yàn)和出錯(cuò)

      #define IFD_OutTime   -20

      #ifdef __cplusplus

      extern "C" {

      #endif

      /******************************************************************************************************************************************\

      \   /

      /設(shè)備類   \

      \   /

      \******************************************************************************************************************************************/


      /*****************************************

      * 功能:連接讀卡器 

      * 參數(shù): 

      *dev_name:[IN] 端口號(hào),固定"USB1"  

      * 返回值: 

      *返回大于0的設(shè)備句柄 

      ******************************************/

      long ICC_Reader_Open(char * dev_name);

      /*****************************************

      * 功能:斷開讀卡器連接

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      * 返回值: 

      *成功返回0

      ***************************************************************/

      long ICC_Reader_Close(long ReaderHandle);

      /*****************************************

      * 功能: 蜂鳴 

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *timeout: [IN] 超時(shí)時(shí)間,固定為5

      * 返回值: 

      *成功返回0 

      ******************************************/

      long ICC_PosBeep(long ReaderHandle, unsigned char timeOut);

      /******************************************************************************************************************************************\

      \   /

      /接CPU   \

      \   /

      \******************************************************************************************************************************************/

      /*****************************************

      * 功能: 接觸CPU卡上電(冷復(fù)位)

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *ICC_Slot_No:[IN] 卡座號(hào) 0x01(大卡座),0x11~0x14(SAM1~SAM4)

      *Response:[OUT] ATR

      * 返回值: 

      *成功返回?cái)?shù)據(jù)長(zhǎng)度

      ***************************************************************/

      long ICC_Reader_pre_PowerOn(long ReaderHandle, unsigned char ICC_Slot_No, unsigned char* Response);

      /*****************************************

      * 功能: 接觸CPU卡下電

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *ICC_Slot_No:[IN] 卡座號(hào) 0x01(大卡座),0x11~0x14(SAM1~SAM4)

      * 返回值: 

      *成功返回0

      ***************************************************************/

      long ICC_Reader_PowerOff(long ReaderHandle,unsigned char ICC_Slot_No);

      /*****************************************

      * 功能: 接觸CPU卡執(zhí)行APDU命令

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *ICC_Slot_No:[IN] 卡座號(hào) 0x01(大卡座),0x11~0x14(SAM1~SAM4)

      *Lenth_of_Command_APDU: [IN] APDU命令的長(zhǎng)度

      *Command_APDU:[IN] APDU命令

      *Response_APDU: [OUT] 響應(yīng)信息

      * 返回值: 

      *成功返回響應(yīng)信息數(shù)據(jù)的長(zhǎng)度

      ***************************************************************/

      long ICC_Reader_Application(long ReaderHandle,unsigned char ICC_Slot_No, long Lenth_of_Command_APDU,unsigned char* Command_APDU,unsigned char* Response_APDU);  //執(zhí)行apdu命令  返回?cái)?shù)據(jù)長(zhǎng)

      /******************************************************************************************************************************************\

      \   /

      /非接類   \

      \   /

      \******************************************************************************************************************************************/

      /****************************************

      * 功能: 設(shè)置為操作TypeA卡

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      * 返回值: 

      *成功返回0

      ***************************************************************/

      long PICC_Reader_SetTypeA(long ReaderHandle);

      /*****************************************

      * 功能: 設(shè)置為操作TypeB卡

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      * 返回值: 

      *成功返回0

      ***************************************************************/

      long PICC_Reader_SetTypeB(long ReaderHandle);

      /*****************************************

      * 功能: 請(qǐng)求卡片

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      * 返回值: 

      *成功返回0

      ***************************************************************/

      long PICC_Reader_Request(long ReaderHandle);

      /*****************************************

      * 功能: 防碰撞

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *UID: [OUT] 4字節(jié)UID

      * 返回值: 

      *成功返回0

      ***************************************************************/

      long PICC_Reader_anticoll(long ReaderHandle,unsigned char *uid);

      /*****************************************

      * 功能: 選擇卡片

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *cardtype:[IN] 0x41表示TypeA & M1, 0x42表示TypeB

      * 返回值: 

      *成功返回0

      ***************************************************************/

      long PICC_Reader_Select(long ReaderHandle,unsigned char cardtype);

      /*****************************************

      * 功能: TypeA卡上電

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *Response: [OUT] 上電返回?cái)?shù)據(jù)

      * 返回值: 

      *成功返回?cái)?shù)據(jù)長(zhǎng)度

      ***************************************************************/

      long PICC_Reader_PowerOnTypeA(long ReaderHandle,unsigned char* Response);

      /*****************************************

      * 功能: TypeB卡上電

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *Response: [OUT] 上電返回?cái)?shù)據(jù)

      * 返回值: 

      *成功返回?cái)?shù)據(jù)長(zhǎng)度

      ***************************************************************/

      long PICC_Reader_PowerOnTypeB(long ReaderHandle,unsigned char* Response);

      /*****************************************

      * 功能: TypeA & B 卡執(zhí)行APDU命令

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *Lenth_of_Command_APDU: [IN] APDU命令的長(zhǎng)度

      *Command_APDU:[IN] APDU命令

      *Response_APDU: [OUT] 響應(yīng)信息

      * 返回值: 

      *成功返回響應(yīng)信息數(shù)據(jù)的長(zhǎng)度

      ***************************************************************/

      long PICC_Reader_Application(long ReaderHandle,long Lenth_of_Command_APDU,unsigned char* Command_APDU,unsigned char* Response_APDU);

      /*****************************************

      * 功能: M1卡認(rèn)證秘鑰

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *Mode: [IN] 0x60 表示認(rèn)證KeyA, 0x61表示認(rèn)證KeyB

      *SecNr:[IN] 扇區(qū)號(hào) S50系列卡 0~15, S70系列卡 0~63

      *Key: [IN] 6字節(jié)秘鑰

      * 返回值: 

      *成功返回0

      ***************************************************************/

      long PICC_Reader_Authentication_Pass(long ReaderHandle,unsigned char Mode, unsigned char SecNr,unsigned char *PassWord);

      /*****************************************

      * 功能: M1讀卡

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *Addr:[IN] 塊地址 S50系列卡 0~63, S70系列卡 0~255, 例如:1扇區(qū)1塊,這里Addr=5=1*4 + 1(扇區(qū)號(hào)*4 + 塊號(hào))

      *Data:[OUT] 16字節(jié)塊數(shù)據(jù)

      * 返回值: 

      *成功返回0

      *****************************************************************************************************************/

      long PICC_Reader_Read(long ReaderHandle,unsigned char Addr,unsigned char *Data);

      /*****************************************

      * 功能: M1寫卡

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *Addr:[IN] 塊地址 S50系列卡 0~63, S70系列卡 0~255, 例如:1扇區(qū)1塊,這里Addr=5=1*4 + 1(扇區(qū)號(hào)*4 + 塊號(hào))

      *Data: [IN] 16字節(jié)待寫入數(shù)據(jù)

      * 返回值: 

      *成功返回0

      ***************************************************************************************************************/

      long PICC_Reader_Write(long ReaderHandle,unsigned char Addr,unsigned char *Data);

      /******************************************************************************************************************************************\

      \   /

      /磁條卡   \

      \   /

      \******************************************************************************************************************************************/

      /*****************************************

      * 功能: 讀磁條卡

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      *ctime:[IN] 等待刷卡的超時(shí)時(shí)間,單位:秒

      *track:[IN] 磁道 1~3

      *rlen: [OUT] 返回的磁道數(shù)據(jù)長(zhǎng)度

      *Data: [OUT] 返回的磁道數(shù)據(jù)

      * 返回值: 

      *成功返回0

      ****************************************************************/

      long Rcard(long ReaderHandle,unsigned char ctime,int track,unsigned char *rlen,char *Data);

      long ICC_GetTimeOut(long ReaderHandle, unsigned char flag);//內(nèi)部調(diào)用

      /******************************************************************************************************************************************\

      \   /

      /身份證   \

      \   /

      \******************************************************************************************************************************************/

      /*****************************************

      * 功能: 讀取證件(居民身份證 + 外國(guó)人永久居留證 + 港澳臺(tái)居民居住證)

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      * 返回值: 

      *成功返回0,執(zhí)行成功后可調(diào)用下列g(shù)et函數(shù)獲取相應(yīng)的信息

      ***********************************************************************/

      long PICC_ReadIDCard(long ReaderHandle);

      /*****************************************

      * 功能: 讀取證件,包含指紋(居民身份證 + 外國(guó)人永久居留證 + 港澳臺(tái)居民居住證)

      * 參數(shù): 

      *ReaderHandle:[IN] 執(zhí)行ICC_Reader_Open 函數(shù)成功時(shí)的返回值

      * 返回值: 

      *成功返回0,執(zhí)行成功后可調(diào)用下列g(shù)et函數(shù)獲取相應(yīng)的信息

      ***********************************************************************/

      long PICC_ReadIDCardFP(long ReaderHandle);

      /*****************************************

      * 功能: 獲取證件類型

      * 參數(shù): 

      *無(wú)

      * 返回值: 

      *0:表示居民身份證

      *1:表示外國(guó)人永久居留證

      *2:表示港澳臺(tái)居民居住證

      *****************************************/

      int GetCardType();

      /*****************************************

      * 功能: 獲取姓名

      * 參數(shù): 

      *pName: [OUT] 姓名

      * 返回值: 

      *成功返回0

      * 包含證件類型:0、1、2

      *****************************************/

      int GetName(char* pName);

      /*****************************************

      * 功能: 獲取性別

      * 參數(shù): 

      *pSex: [OUT] 性別

      * 返回值: 

      *成功返回0

      * 包含證件類型:0、1、2

      *****************************************/

      int GetSex(char* pSex);

      /*****************************************

      * 功能: 獲取民族

      * 參數(shù): 

      *pNation: [OUT] 民族

      * 返回值: 

      *成功返回0

      * 包含證件類型:0

      *****************************************/

      int GetNation(char* pNation);

      /*****************************************

      * 功能: 獲取出生日期

      * 參數(shù): 

      *pBirth: [OUT] 出生日期

      * 返回值: 

      *成功返回0

      * 包含證件類型:0、1、2

      *****************************************/

      int GetBirth(char* pBirth);

      /*****************************************

      * 功能: 獲取住址

      * 參數(shù): 

      *pAddress: [OUT] 住址

      * 返回值: 

      *成功返回0

      * 包含證件類型:0、2

      *****************************************/

      int GetAddress(char* pAddress);

      /*****************************************

      * 功能: 獲取證件號(hào)碼

      * 參數(shù): 

      *pCertNo: [OUT] 證件號(hào)碼

      * 返回值: 

      *成功返回0

      * 包含證件類型:0、1、2

      *****************************************/

      int GetCertNo(char* pCertNo);

      /*****************************************

      * 功能: 獲取簽發(fā)機(jī)關(guān)

      * 參數(shù): 

      *pDepartemt: [OUT] 簽發(fā)機(jī)關(guān)

      * 返回值: 

      *成功返回0

      * 包含證件類型:0、2

      *****************************************/

      int GetDepartemt(char* pDepartemt);

      /*****************************************

      * 功能: 獲取有效起始日期

      * 參數(shù): 

      *pEffectDate: [OUT] 有效起始日期

      * 返回值: 

      *成功返回0

      * 包含證件類型:0、1、2

      *****************************************/

      int GetEffectDate(char* pEffectDate);

      /*****************************************

      * 功能: 獲取有效截止日期

      * 參數(shù): 

      *pExpireDate: [OUT] 有效截止日期

      * 返回值: 

      *成功返回0

      * 包含證件類型:0、1、2

      *****************************************/

      int GetExpireDate(char* pExpireDate);

      /*****************************************

      * 功能: 獲取通行證號(hào)碼

      * 參數(shù): 

      *pTXZHM: [OUT] 通行證號(hào)碼

      * 返回值: 

      *成功返回0

      * 包含證件類型:2

      *****************************************/

      int GetTXZHM(char* pTXZHM);

      /*****************************************

      * 功能: 獲取通行證簽發(fā)次數(shù)

      * 參數(shù): 

      *pTXZQFCS: [OUT] 通行證簽發(fā)次數(shù)

      * 返回值: 

      *成功返回0

      * 包含證件類型:2

      *****************************************/

      int GetTXZQFCS(char* pTXZQFCS);

      /*****************************************

      * 功能: 獲取英文名

      * 參數(shù): 

      *pEnName: [OUT] 外國(guó)人英文名

      * 返回值: 

      *成功返回0

      * 包含證件類型:1

      *****************************************/

      int GetEnName(char* pEnName);

      /*****************************************

      * 功能: 獲取國(guó)籍代碼

      * 參數(shù): 

      *pNationalityCode: [OUT] 外國(guó)人國(guó)籍代碼

      * 返回值: 

      *成功返回0

      * 包含證件類型:1

      *****************************************/

      int GetNationalityCode(char* pNationalityCode);

      /*****************************************

      * 功能: 獲取證件版本

      * 參數(shù): 

      *pCardVersion: [OUT] 外國(guó)人居留證證件版本

      * 返回值: 

      *成功返回0

      * 包含證件類型:1

      *****************************************/

      int GetCardVersion(char* pCardVersion);

      /*****************************************

      * 功能: 獲取照片

      * 參數(shù): 

      *dlpath: [IN] so路徑, 例如:"../lib/libwltdecode.so"

      *pBmpfilepath: [IN] 照片路徑, 例如:"../list/zp.bmp"

      * 返回值: 

      *成功返回0

      * 包含證件類型:0、1、2

      *****************************************/

      int GetBmpFile(const char* dlpath, char* pBmpfilepath);

      /*****************************************

      * 功能: 是否含指紋信息

      * 參數(shù): 

      *無(wú)

      * 返回值: 

      *成功返回指紋數(shù)據(jù)長(zhǎng)度,0表示沒(méi)有

      * 包含證件類型:0、1、2

      *****************************************/

      int IsFingerExist();

      /*****************************************

      * 功能: 獲取指紋信息

      * 參數(shù): 

      *fpInfo: [OUT] 指紋數(shù)據(jù)

      * 返回值: 

      *成功返回獲取到的指紋數(shù)據(jù)長(zhǎng)度,0表示沒(méi)有

      * 包含證件類型:0、1、2

      *****************************************/

      int GetFingerprint(unsigned char* fpInfo);

      #ifdef __cplusplus

      }

      #endif

      #endif


      產(chǎn)品咨詢熱線:13822216429

      技術(shù)咨詢熱線:13922210502

      廣東東信智能科技有限公司 www.m.yjcsbsb.cn

      廣東省廣州市科學(xué)城總部經(jīng)濟(jì)區(qū)觀虹路12號(hào)


       

       
      QQ在線咨詢
      主站蜘蛛池模板: 波多野结衣一区二区精品系列11| 老熟妇乱子交视频一区| 亚洲中文字幕无码av永久| 18禁黄污无遮挡无码网站| 宫西光有码视频中文字幕| 一区二区三区人妻av| 亚洲中文字幕国产av| 日韩日韩日韩日韩日韩| 国产网友愉拍精品视频手机| 亚洲?欧美?人妻| 精品水蜜桃久久久久久久| 亚洲中文字幕日产无码成人片| 精品人妻av中文字幕乱| 中文字幕亚洲在线| 伊人www| 久久久高清日本道免费观看| 日韩人妻无码中文字幕视频| 成人自拍短视频午夜福利| 国产精品视频白浆免费视频| 无国产精品视频免费| 无码人妻毛片丰满熟妇精品区| 亚洲欧洲中文日韩乱码av| 成人福利在线免费观看| 国产极品嫩模在线观看91| 国产精品人妻久久ai换脸| 欧美A片在线观看| 国产欧美日韩精品第二区| 啪啪无码人妻丰满熟妇| 免费看国产v不卡网站| 啪啪av一区二区三区| 國產尤物AV尤物在線觀看| 影音先锋在线视频| 亚洲色一区二区三区四区| 欧美性猛交XXXX乱大交| 国产人妻久久精品一区二区三区 | 成人中文在线| 亚洲国产av一区二区三区| 亚洲无码精品人妻| 亚洲视频第一区第二区| 亚洲自偷自拍熟女另类| 欧美 亚洲 日韩 在线综合|