• 廣東明創(chuàng)智慧科技有限公司是中國專業(yè)的身份證閱讀器供應商,
  • 專注身份證閱讀器、指紋采集儀、社保卡讀卡器、IC卡讀寫器的一家身份證應用服務平臺

明創(chuàng)智慧

當前位置: 首頁 > 服務支持專區(qū) > SDK開發(fā)包 > 正文

明創(chuàng)IDR-100U多功能身份證閱讀器Windows/Android/Linux開發(fā)包下載

來源:www.mingcreate.cn   標簽:IDR-100U HID 多功能 開發(fā)包 Windows Android Linux   最近更新:2022-2-19

3333.jpg

以下開發(fā)包支持明創(chuàng)IDR-100U HID整機、IDR-M10、IDR-M20、IDR-M30等多功能免驅系列身份證閱讀器、社保卡讀卡器整機和模組等產(chǎn)品,供開發(fā)人員適用。


Windows平臺開發(fā)包,包括BS,C/S,支持USB和串口:

點擊這里下載↓



Android平臺開發(fā)包,包括USB和串口:

點擊這里下載↓



Linux平臺開發(fā)包,包括USB和串口:

點擊這里下載↓



串口協(xié)議,支持單片機PLC等開發(fā):

點擊這里下載↓





本文檔描述了明創(chuàng)多功能身份證閱讀器SDK的函數(shù)定義、調用方法、參數(shù)以及返回值說明,供開發(fā)人員進行二次開發(fā)時使用。EU開頭的是接觸卡,PEU開頭的是非接卡。

三、函數(shù)說明

3.1、設備類

3.1.1、連接讀卡器

函數(shù)原型:long WINAPI EU_Reader_Open(char* dev_Name);

參數(shù):[IN] dev_Name:固定值 “USB1”.

返回值:連接成功時返回句柄值(大于0),該值需保存作為其他函數(shù)的入?yún)ⅰ?/span>

3.1.2、斷開連接

函數(shù)原型:long WINAPI EU_Reader_Close(long ReaderHandle);

參數(shù):ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

返回值:無

3.1.3、蜂鳴器

函數(shù)原型:long WINAPI EU_PosBeep(long ReaderHandle, unsigned char time);

參數(shù):

ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

Time:[IN] 蜂鳴時間,0~10

返回值:成功返回0。

 

 

3.1.4天線開關

long WINAPI PEU_Reader_RFControl(long ReaderHandle,short type);

//type=0 關閉天線 type=1 打開天線

 

3.2、接觸類

3.2.1、CPU卡&社保卡

3.2.1.1、CPU卡上電復位

函數(shù)原型:

long WINAPI EU_Reader_pre_PowerOn(long ReaderHandle,unsigned char EU_Slot_No,unsigned char* Response);

參數(shù):

ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

EU_Slot_No[IN]卡座號(如下)

0x01:大卡座

0x11~0x14:SAM1~SAM4卡座

Response[OUT]上電返回的ATR

 

返回值:成功返回ATR的長度,<= 0表示失敗。

 

3.2.1.2、CPU卡執(zhí)行APDU命令

函數(shù)原型:long WINAPI EU_Reader_Application(long ReaderHandle,unsigned char EU_Slot_No, long Lenth_of_Command_APDU,unsigned char* Command_APDU, unsigned char* Response_APDU);

參數(shù):

ReaderHandle:       [IN] EU_Reader_Open函數(shù)的返回值

EU_Slot_No:            [IN]卡座號,同上電復位

Lenth_of_Command_APDU: [IN]APDU命令長度

Command_APDU:          [IN]APDU命令

Response_APDU:         [OUT]響應數(shù)據(jù)

返回值:

    成功返回響應數(shù)據(jù)的長度,<= 0表示失敗

 

 

讀社保卡

函數(shù)原型:long WINAPI PEU_Reader_SICARD(long ReaderHandle, char* SBKH, char *XM, char *XB, char *MZ, char *CSRQ, char *SHBZHM, char *FKRQ, char *KYXQ,char* ErrMsg);

參數(shù):

ReaderHandle:[IN] Open函數(shù)的返回值

SBKH:  [OUT]社保卡卡號

XM:    [OUT]姓名

XB:    [OUT]性別

MZ:    [OUT]民族

CSRQ:  [OUT]出生日期

SHBZHM:    [OUT]身份證號

FKRQ:  [OUT]發(fā)卡日期

FKRQ:  [OUT]卡有效期

ErrMsg:[OUT]錯誤信息

 

返回值:成功返回0

 

3.3、非接類

3.3.1、非接卡前置步驟(必須)

3.3.1.1、設置為TypeA/B

函數(shù)原型:     long WINAPI PEU_Reader_SetTypeA(long ReaderHandle);

long WINAPI PEU_Reader_SetTypeB(long ReaderHandle);

參數(shù):

ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

 

返回值:成功返回0

3.3.1.2、請求卡片

函數(shù)原型:long WINAPI PEU_Reader_Request(long ReaderHandle);

參數(shù):

ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

 

返回值:成功返回0

3.3.1.3、防碰撞

函數(shù)原型:long WINAPI PEU_Reader_anticoll(long ReaderHandle,unsigned char *uid);

參數(shù):

ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    Uid:[OUT] 卡片物理卡號,4字節(jié)

返回值:成功返回0

3.3.1.4、選擇卡片

函數(shù)原型:long WINAPI PEU_Reader_Select(long ReaderHandle,unsigned char cardtype);

參數(shù):

ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

Cardtype:[IN]0x41表示TypeA/M1,0x42表示TypeB

返回值:成功返回0

3.3.2、非接CPU卡(TypeA)

3.3.2.1、TypeA卡上電復位

函數(shù)原型:long WINAPI PEU_Reader_PowerOnTypeA(long ReaderHandle,unsigned char* Response);

參數(shù):

ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    Response:[OUT]上電返回數(shù)據(jù)(ATS)

返回值:成功返回ATS長度,<= 0表示失敗。

3.3.2.2、TypeA卡執(zhí)行APDU命令

函數(shù)原型:long WINAPI PEU_Reader_Application(long ReaderHandle, long Lenth_of_Command_APDU,unsigned char* Command_APDU, unsigned char* Response_APDU);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

Lenth_of_Command_APDU: [IN]APDU命令長度

Command_APDU:          [IN]APDU命令

Response_APDU:         [OUT]響應數(shù)據(jù)

返回值:

    成功返回響應數(shù)據(jù)的長度,<= 0表示失敗

 

3.3.3、Mifare One(M1卡) 系列

3.3.3.1、認證秘鑰

函數(shù)原型:long WINAPI PEU_Reader_Authentication_Pass(long ReaderHandle,unsigned char Mode, unsigned char SecNr,unsigned char *PassWord);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    Mode:  [IN]要認證的Key類型,0x60表示KeyA,0x61表示KeyB。

Secnr: [IN]扇區(qū)號,S50卡范圍:0~15、S70卡范圍0~63

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

返回值:返回0表示成功,其他值失敗。

 

//備用函數(shù)

long WINAPI PEU_Reader_Authentication_PassHEX(long ReaderHandle,unsigned char Mode, unsigned char SecNr,char *PassWord);//認證密鑰M1 帶密鑰參數(shù)

 

3.3.3.2、讀卡

函數(shù)原型:long WINAPI PEU_Reader_Read(long ReaderHandle,unsigned char Addr,unsigned char *Data);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    Addr:      [IN]塊地址S50卡:0~63、S70卡:0~255

    Response:  [OUT]讀出的卡數(shù)據(jù),16字節(jié)

返回值:成功返回0,其它值失敗。

3.3.3.3、寫卡

函數(shù)原型:long WINAPI PEU_Reader_Write(long ReaderHandle,unsigned char Addr,unsigned char *Data);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    Addr:  [IN]塊地址S50卡:0~63、S70卡:0~255

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

返回值:成功返回0,其它值失敗。

 

3.4、身份證

3.4.1、讀身份證信息(文字+照片)

函數(shù)原型:

long WINAPI PEU_Reader_ReadIDMsg(long ReaderHandle,

const char* pBmpFile,

char *pName,

char *pSex,

char *pNation,

char *pBirth,

char *pAddress,

char *pCertNo,

char *pDepartment ,

char *pEffectData,

char *pExpire,

char * pErrMsg);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    pBmpFile:  [IN]要生成照片的路徑,例:”D:\\zp.bmp”

    pName:     [OUT]姓名,50字節(jié)

    pSex:      [OUT]性別,10字節(jié)

    pNation:   [OU]民族,10字節(jié)

    pBirth:    [OUT]出生日期,30字節(jié)

    pAddress:  [OUT]家庭住址,100字節(jié)

    pIDNo:     [OUT]身份號,50字節(jié)

    pDepartment:   [OUT]簽發(fā)機關,50

pEffectDate:   [OUT]有效起始日期,30字節(jié)

pExpireDate:   [OUT]有效截止日期,30字節(jié)

pErrMsg:       [OUT]錯誤提示,50字節(jié)

 

返回值:讀卡成功返回0

3.4.2、讀身份證信息(文字+照片)

函數(shù)原型:

long WINAPI PEU_Reader_ReadIDCard(long ReaderHandle, char * pErrMsg);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

pErrMsg:       [OUT]錯誤提示,50字節(jié)

 

返回值:讀卡成功返回0,讀卡成功后可調用下文get函數(shù)獲取信息

 

PEU_Reader_ReadIDCardFp(文字+照片+指紋)

函數(shù)原型:

long WINAPI PEU_Reader_ReadIDCardFp(long ReaderHandle, char * pErrMsg);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

pErrMsg:       [OUT]錯誤提示,50字節(jié)

 

返回值:讀卡成功返回0,讀卡成功后可調用下文get函數(shù)獲取信息

 

3.4.3、讀身份證物理ID號

函數(shù)原型:long WINAPI PEU_Reader_ID_ReadUID(long ReaderHandle,unsigned char* UID);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    Response:[OUT]身份物理ID號,16字節(jié)字符串

返回值:成功返回0,其它值失敗。

 

3.4.4、查詢天線區(qū)域有無身份證

函數(shù)原型:long WINAPI PEU_Reader_ID_Request(long ReaderHandle);

 

參數(shù):

ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

 

返回值:成功返回0,其它值失敗。

3.4.5 get函數(shù)

函數(shù)

獲取信息功能

包含證件類型

int     WINAPI GetCardType();

獲取證件類型

0:居民身份證

1:外國人永久居留證

2:港澳臺居民居住證


int   WINAPI GetName(char* pName);

姓名(類型為1時表示:外國人中文姓名)

0、1、2

int   WINAPI GetSex(char* pSex);

性別

0、1、2

int   WINAPI GetNation(char* pNation);

民族

0

int   WINAPI GetBirth(char* pBirth);

出生日期

0、1、2

int   WINAPI GetAddress(char* pAddress);

住址

0、2

int   WINAPI GetCertNo(char* pCertNo);

公民身份證號碼(類型為1時表示:外國人居留證號碼)

0、1、2

int   WINAPI GetDepartemt(char* pDepartemt);

簽發(fā)機關

0、2

intWINAPI   GetEffectDate(char* pEffectDate);

有效起始日期

0、1、2

int   WINAPI GetExpireDate(char* pExpireDate);

有效截止日期

0、1、2

int   WINAPI GetBmpFileData(char* pBmpFileData);

bmp格式照片數(shù)據(jù)

0、1、2

int   WINAPIGetBmpFile(char* pBmpfilepath);

生成照片,入?yún)⒖嘉闹?.4.1

0、1、2

int     WINAPI IsFingerExist();

是否含存在指紋信息:

存在時返回512或者1024

不存在時返回0

0、2

int WINAPIGetFingerprint(unsigned char* fpInfo);

獲取指紋數(shù)據(jù):

成功時返回獲取到的字節(jié)長度

0、2

int   WINAPI GetEnName(char* pEnName);

外國人英文姓名

1

int   WINAPI GetNationalityCode(char* pNationalityCode);

外國人國籍代碼,符合GB/T2659-2000規(guī)定

1

int   WINAPI GetTXZHM(char* pTXZHM);

港澳臺通行證號碼

2

int   WINAPI GetTXZQFCS(char* pTXZQFCS);

港澳臺通行證簽發(fā)次數(shù)

2

注:以上函數(shù)須在 “PEU_Reader_ReadIDCard” 函數(shù)執(zhí)行成功之后調用,否則獲取不到有效信息。

 

 

3.4.6 獲取SAMID

函數(shù)原型:long WINAPI EU_Reader_GetSAMID(long ReaderHandle,char *SAMID);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    SAMID: [OUT]返回的數(shù)據(jù)

返回值:0表示成功,其它表示失敗。

 

3.5、磁條

函數(shù)原型:long WINAPI Rcard(long ReaderHandle,unsigned char ctime,int track,unsigned char *rlen,unsigned char *getdata);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    ctime: [IN]超時時間,單位:秒

    track: [IN]磁道(1~3)磁道1~~磁道3,track=4時表示全軌一次性刷出,返回數(shù)據(jù)為TLV格式,例如:010101020201020303010203

    rlen:  [OUT]返回數(shù)據(jù)的長度

    data:  [OUT]返回的數(shù)據(jù)

返回值:0表示成功,其它表示失敗。

 

3.6、輔助函數(shù)

3.6.1、十六進制數(shù)組轉hexstr字符串,例如:0x11,0x22 à“1122”

函數(shù)原型:long WINAPI HexToStr(unsigned char *Src,int len,unsigned char *Des );

參數(shù):

    Src:   [IN]十六進制數(shù)組

    Len:   [IN]數(shù)據(jù)長度

    Des:   [OUT]轉換好的hexstr格式字符串。

返回值:返回0

3.6.1hexstr字符串轉十六進制數(shù)組,例如:“1122”à  0x11,0x22

函數(shù)原型:long WINAPI StrToHex(unsigned char *Src, int len,unsigned char *Des);

參數(shù):

    Src:   [IN]hexstr格式字符串

    Len:   [IN]字節(jié)長度

    Des:   [OUT]轉換好的數(shù)據(jù)

 

返回值:返回轉換好的十六進制數(shù)據(jù)。

 

3.7、卡片操作要點

3.7.1    typeACPU 卡操作順序

1 設置為TypeA卡片

2 請求卡片

3 防碰撞

4 選擇卡片

5 上電

6  APDU 命令

3.7.2    typeB 卡操作順序

1 設置為TypeB卡片

2 上電

3 選卡

4  APDU 命令

3.7.3    M1卡操作順序

1 請求卡片

2 防碰撞

3 選擇卡片

4 認證密鑰

讀或寫

3.7.4    接觸CPU卡操作順序

上電復位

2  APDU 命令

 

3.8 15693

3.8.115693尋卡

函數(shù)原型:long WINAPI PEU_Reader_Inventory (long ReaderHandle,unsigned char* Response);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    Response: [OUT] 尋卡得到8字節(jié)卡片數(shù)據(jù)

返回值:成功返回0。

 

3.8.215693獲取卡片詳細信息

函數(shù)原型:long WINAPI PEU_Reader_SystemInfor(long ReaderHandle,unsigned char* Response);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

    Response: [OUT] 得到14字節(jié)卡片數(shù)據(jù)

返回值:成功返回0。

 

3.8.315693讀卡

函數(shù)原型:long WINAPI PEU_Reader_15693_Read (long ReaderHandle, unsigned char blk_add, unsigned char* Response);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

blk_add:[IN] 塊地址

    Response: [OUT] 得到4字節(jié)卡片數(shù)據(jù)

返回值:成功返回0。

 

3.8.415693寫卡

函數(shù)原型:long WINAPI PEU_Reader_15693_Write(long ReaderHandle, unsigned char blk_add, unsigned char* Response);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

blk_add:[IN] 塊地址

    Response: [IN] 要寫入的4字節(jié)卡片數(shù)據(jù)

返回值:成功返回0。

 

3.8.515693_AFI操作

函數(shù)原型:long WINAPI PEU_Reader_AFI(long ReaderHandle, unsigned char* data, unsigned char* Response);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

data:[IN] data[0] 為0表示寫AFI,為1則表示鎖AFI,

            data[0]為0時 data[1]為有效AFI值。

    Response: [OUT] NULL.

返回值:成功返回0。

 

3.8.615693_DSFID操作

函數(shù)原型:long WINAPI PEU_Reader_DSFID(long ReaderHandle, unsigned char* data, unsigned char* Response);

參數(shù):

    ReaderHandle:[IN] EU_Reader_Open函數(shù)的返回值

data:[IN] data[0] 為0表示寫DSFID,為1則表示鎖AFI,

            data[0]為0時 data[1]為有效DSFID值。

    Response: [OUT] NULL.

返回值:成功返回0。










(*由于產(chǎn)品升級或其他原因,明創(chuàng)IDR-100U多功能身份證閱讀器Windows/Android/Linux開發(fā)包下載產(chǎn)品實際參數(shù)有可能變更,以實際產(chǎn)品為準。本文中的所有陳述、信息和建議也不構成任何明示或暗示的擔保)

主站蜘蛛池模板: 国产中文a | 91高清不卡 | 青青河边草观看完整版高清 | 天天干,天天草 | 日本不卡视频 | 久久久久久久久久久久久9999 | 91九色自拍 | 日韩精品久久中文字幕 | 日日干精品| 亚洲国产大片 | 久久草草热国产精品直播 | 最新在线你懂的 | 九月婷婷综合网 | 天堂av在线网 | 亚洲精品黄色在线观看 | 精品久久亚洲 | 欧美在线视频免费 | 日韩乱色精品一区二区 | 美女免费视频黄 | 亚洲一区二区三区毛片 | 国产九色在线播放九色 | 欧美日韩一级久久久久久免费看 | 色网站在线免费 | 亚洲精品国产综合99久久夜夜嗨 | 欧美国产在线看 | 欧美三级高清 | 午夜精品成人一区二区三区 | 狠狠色丁香九九婷婷综合五月 | 久久线视频 | 一区二区在线影院 | 网站在线观看日韩 | 麻豆视频免费入口 | 五月天久久久久久 | 福利一区二区在线 | 欧美色图亚洲图片 | 中文字幕色综合网 | 中文字幕一区二区三区在线观看 | 国产999精品久久久影片官网 | 午夜美女wwww | 久久久久久美女 | 亚洲伊人婷婷 | 一区在线播放 | 国产黄色大片 | 日韩在线视频一区二区三区 | 精品女同一区二区三区在线观看 | 在线国产视频 | 婷婷在线色 | 亚洲伦理电影在线 | 手机av在线不卡 | 成人a在线观看高清电影 | 国产黄色片一级 | 久艹视频在线免费观看 | 久久久www成人免费精品张筱雨 | 国产精品剧情在线亚洲 | 久久8精品 | 美女福利视频在线 | 国产高清无av久久 | 久插视频 | 国产va饥渴难耐女保洁员在线观看 | 国产69久久精品成人看 | 国产精品视频999 | 亚洲精品麻豆视频 | 97国产精品亚洲精品 | 中国一级片在线 | 中文一区二区三区在线观看 | 婷婷 中文字幕 | 国产一级一级国产 | 人人干免费 | av大片免费在线观看 | 日本99精品 | 一区免费在线 | 国产麻豆精品免费视频 | 中文字幕一区二区三区在线播放 | 久久人人爽人人片 | 国产在线精品一区二区不卡了 | 成人一级片免费看 | 在线观看精品 | av在线免费不卡 | 国产小视频国产精品 | 欧美日韩xx | 国产精品在线看 | 一级特黄aaa大片在线观看 | 欧美日韩精 | 久久精品视频3 | 综合激情伊人 | 九九免费观看全部免费视频 | 国产视频二区三区 | 在线免费国产视频 | 91久久国产露脸精品国产闺蜜 | 在线免费观看黄色小说 | 在线观看国产中文字幕 | 国内久久视频 | 高潮毛片无遮挡高清免费 | 99c视频高清免费观看 | 亚洲激情视频在线 | 狠狠的干狠狠的操 | 波多野结衣视频一区二区 | 成人观看视频 | 免费网站黄 |