DP系列接触式IC卡读写使用手册.docx

上传人:b****5 文档编号:5901911 上传时间:2023-01-02 格式:DOCX 页数:68 大小:66.18KB
下载 相关 举报
DP系列接触式IC卡读写使用手册.docx_第1页
第1页 / 共68页
DP系列接触式IC卡读写使用手册.docx_第2页
第2页 / 共68页
DP系列接触式IC卡读写使用手册.docx_第3页
第3页 / 共68页
DP系列接触式IC卡读写使用手册.docx_第4页
第4页 / 共68页
DP系列接触式IC卡读写使用手册.docx_第5页
第5页 / 共68页
点击查看更多>>
下载资源
资源描述

DP系列接触式IC卡读写使用手册.docx

《DP系列接触式IC卡读写使用手册.docx》由会员分享,可在线阅读,更多相关《DP系列接触式IC卡读写使用手册.docx(68页珍藏版)》请在冰豆网上搜索。

DP系列接触式IC卡读写使用手册.docx

DP系列接触式IC卡读写使用手册

目录

第一章DP系列接触式IC卡读写器简介.....................................3

1.1概述............................................................3

1.2读写器型号......................................................3

1.3装箱清单........................................................4

1.4读写器连接方式.................................................4

1.5指示灯..........................................................4

1.6程序安装........................................................4

1.7用户软件........................................................4

1.8技术指标........................................................5

第二章演示系统使用说明................................................6

第三章IC卡读写器驱动程序函数说明.....................................9

3.1安装程序主要目录和文件...........................................9

3.2函数使用规则.....................................................9

3.3各种库函数说明...................................................9

3.3.1C语言接口函数库.............................................9

●通用函数库...................................................10

●AT24C01A/24C02/24C04/24C08/24C16/24C64.......................13

●AT45D041.....................................................14

●AT88SC102/1604/1604B.........................................15

●AT93C46/93C46A...............................................22

●SLE4404......................................................23

●SLE4406......................................................26

●SLE4418/4428.................................................28

●SLE4432/4442.................................................30

●CPU卡.......................................................30

3.3.2FOXPROFORDOS函数库......................................33

3.3.3WINDOWS16位和32位动态库................................34

3.3.4FOXBASE函数库.............................................35

3.3.5UNIX函数库...............................................38

3.3.6LINUX函数库..............................................38

 

3.4VFP、VB、Delphi和PB调用动态库的方法............................38

3.4.1VFP调用16位动态库的方法..................................38

3.4.2VFP调用32位动态库的方法..................................39

3.4.3VB调用动态库的方法........................................40

3.4.4Delphi调用32位动态库的方法...............................41

3.4.5PB调用32位动态库的方法...................................42

3.4.6VC调用32位动态库的方法...................................42

3.5IC卡类型代码....................................................43

3.6函数错误类型代码.................................................43

3.7自动卡型测试函数原理说明........................................44

附录一几种常用IC卡的特性............................................45

 

[2000/05/10]

DP-R-XXX

 

第一章DP系列接触式IC卡读写器简介

1.1概述

深圳市明华澳汉科技有限公司是以生产IC卡及开发IC卡相关设备为主导产品的高新科技企业。

继1996年第一台接触式IC卡读写器问世以来,本公司经不断改进、提高,已相继推出数千台不同型号的读写器。

DP读写器是明华公司最新推出的读写设备,它功能齐全、性能稳定,在原有RD系列读写器的基础上增加了对SAM卡操作的功能。

可方便地应用于工商、邮电、税务、银行、保险、医疗及各种收费、储值、查询等管理系统中。

可读写的卡型

a.存贮器(Memory)卡

●美国ATMEL公司的AT24C01A/24C02/24C04/24C08/24C16/AT24C64,AT88SC102,

AT88SC1604/1604B,AT45D041,AT93C46/93C46A卡

●德国SIEMENS公司的SLE4432/4442,SLE4418/4428,SLE4404,SLE4406卡

●以及其他公司的兼容卡片(ISSI24C01A/16)

b.CPU卡(符合T=0/T=1通讯协议)、SAM卡

特点

●可读写多种Memory卡和支持T=0、T=1通讯协议的CPU卡;

●支持对SAM卡操作的功能;

●与PC机通讯采用RS232串口,波特率为1200115200BPS;

●对于使用SAM卡的用户,可以选择内置于读写器的小卡座,也可以选择通过卡槽操作的大卡座。

●提供诸多开发平台的接口函数和应用范例。

 

1.2读写器型号

DP系列

XX-XXXX

卡型选择

1:

Memory卡

2:

CPU卡

3:

混合(MEM/CPU)

SAM卡座选择

0:

1:

SIM

2:

SAM

其他:

保留

通讯接口

1:

RS-232

2:

PS/2

3:

USB

协议

P:

PC/SC标准

R:

MWRD兼容标准

系列

DP:

海豚

1.3装箱清单

读写器一台

串口线一条

安装盘一张

用户手册一本(根据需要提供)

产品保修卡一张

1.4读写器连接方式

DP读写器有两个PS/2接口和一个串口,PS/2接口中的一个与计算机的PS/2口连接,另一个与键盘/鼠标相连,串口直接接至计算机的串口上。

1.5指示灯

三色指示灯:

绿色用户卡已插入,闪烁时表示正在对用户卡操作

红色未插用户卡或SAM卡

橙色用户卡未插入,SAM卡已插入,闪烁时表示正在对SAM卡操作

1.6程序安装

步骤:

●将读写器连接在计算机通讯口上;

●将随机软盘插入驱动器A:

或B:

●在WINDOWS95/98环境下双击MWDP.EXE;

●按照安装程序的提示和要求进行安装;

注意:

安装程序在根目录下建立MWDP的目录(缺省),所有驱动软件均在此目录下。

安装完毕后请仔细阅读README.TXT文件。

1.7用户软件(V1.0)

用户软件包括三部分:

演示系统、驱动程序、应用范例和兼容库

a.演示系统

提供WINDOWS版演示程序DEMO.EXE。

b.驱动程序

●C语言接口函数库(BorlandC3.1)

●FOXPROFORDOS(2.5/2.6)接口函数库

●WINDOWS16位动态库

●WINDOWS32位动态库

●FOXBASE(2.0/2.1)接口函数库

●UNIX函数库(SCOUNIX5.0)

●LINUX函数库(Redhat6.0)

c.应用范例

随盘应提供VB5、VB3、PB5、DELPHI3、VFP3、FORPROFORDOS(2.5/2.6)、BC3.1、

FOXBASE(2.0/2.1)、UNIX(SCO5.0)、LINUX(Redhat6.0)等的应用范例。

1.8技术指标

●通讯接口:

RS232串口

●串口的波特率:

1200115200BPS

●电源:

由键盘取电,不外带电源

●最大功耗:

100mW

●环境温度:

商业级0°70°C

工业级-25°85°C

●相对湿度:

30%95%

●抗静电干扰:

15KV

●抗磁场干扰:

19奥斯特

●抗振动能力:

振幅0.35mm,频率10-55Hz,三个轴方向扫频振动

●绝缘电阻:

湿热情况下(40°,95%)绝缘电阻应不小于5MΩ。

●外型尺寸:

长宽高110mm85mm60mm

●重量:

约475克

 

第二章演示系统使用说明

该演示系统可对ATMEL、SIEMENS等Memory卡和符合T=0/T=1通讯协议的CPU卡读写操作。

图1演示系统主界面

1.演示系统主界面分五个功能区,分别说明如下:

●设备信息提示

可显示用户软件版本号、硬件版本号。

●卡片选择

卡片选择分手动选择卡型和自动检测卡型两种,卡片选择完成以后,按下卡片操作按钮,进入相应的Memory卡或CPU卡操作界面,实现各自的功能操作。

●建立连接

初次运行系统时,系统按自动测试方式建立连接,并将成功连接的参数保存在系统文件中。

下次运行时系统将自动按保存的参数建立连接。

也可以指定通讯口和波特率建立连接。

连接成功后,用户可以更换读写器端口和波特率值,指定连接方式后,执行更改连接。

自动测试将按照串口1~串口4的顺序自动测试并连接。

●提示信息

提示信息显示各项操作的结果或出错信息。

鼠标双点框内文字可清空该区域。

●帮助文件

按F1键或在卡片操作界面单击?

图标,则弹出DP读写器帮助系统。

该帮助系统功能

十分详尽,包括如何使用演示软件、明华读写设备介绍、支持卡型介绍、库函数介绍和读写器常见问题解答五大部分。

第三章IC卡读写器驱动函数说明

3.1安装程序主要目录和文件

README.TXT版本说明

MWRDP\MWRDP1.00A\DRVER\:

DP系列读写器驱动程序

\C.LIB\*.*C.DOS静态函数库

\FOXPRO.DOS\*.*FOXPROFORDOS接口函数库

\WINDOWS.DLL\*.*WINDOWS32位和16位动态库

\UNIX\*.*UNIX动态库

\LINUX\*.*LINUX动态库

\FOXBASE\*.*FOXBASE函数库

\DEMO.WIN\DEMO.EXEWINDOWS下操作演示软件

\EXAMPLES\*.*各种平台的应用范例

MWRDP\MWRD5.4\DRVER\:

RD系列读写器驱动程序

\C.LIB\*.*C.DOS静态函数库

\FOXPRO.DOS\*.*FOXPROFORDOS接口函数库

\WINDOWS.DLL\*.*WINDOWS32位和16位动态库

\DEMO.WIN\DEMO.EXEWINDOWS下操作演示软件

UNWISEEXE卸载安装程序

3.2函数使用规则

(1)首先调用通讯口初始化函数ic_init()或auto_init();

(2)在串口通讯方式下,调用WINDOWS16位/32位动态库或UNIX函数库时,程序退出之前要执行ic_exit()函数,关闭串口,释放句柄icdev;否则再次初始化串口将出错。

(3)函数调用错误类型,请参照函数错误类型代码。

所有函数的错误代码均以负数形式返回;FoxprForDos和Foxbase例外。

注意:

函数详细的使用方法,请参考EXAMPLES目录下提供的范例。

3.3各种库函数说明

3.3.1C语言接口函数库

包括:

a.通用函数库

b.AT24C01A/24C02/24C04/24C08/24C16/24C64函数库

c.AT45D041函数库

d.AT88SC102/1604/1604B函数库

e.AT93C46/93C46A函数库

f.SLE4404函数库

g.SLE4406函数库

h.SLE4418/4428函数库

i.SLE4432/4442函数库

j.CPU卡函数

k.SAM卡函数

a.通用函数库

(1)intic_init(intport,longbaud)

说明:

初始化通讯接口

调用:

Port:

通讯口号0、1、2、3分别代表串口1、2、3、4;

baud:

通讯口为串口时代表波特率,其值可为1200-115200

返回:

<0错误

>0通讯设备标识符

举例:

icdev=ic_init(0,9600);

初始化串口1,波特率为9600

icdev=ic_init(0x378,0);

初始化并口,半字节通讯方式

(2)intauto_init(intport,longbaud)

说明:

自动初始化通讯接口

调用:

同ic_init()

返回:

同ic_init()

注:

无论使用串口通讯还是并口通讯,读写器都可保持最近一次设置的波特率值。

上面的Ic_init()函数是用给定的串行波特率与读写器通讯,如果读写器保存的串行波特率与上位机的进行初始化的串行波特率不同,将会出现初始化失败;而auto_init()函数在出现不同的情况下,它可自动测试读写器当前的串行波特率值,然后重新设置成上位机要求的串行波特率并建立好连接。

(3)intic_exit(inticdev)

说明:

关闭通讯口

调用:

icdev:

通讯设备标识符

返回:

<0错误

=0正确

举例:

st=ic_exit(icdev);

注:

C库中本无此函数,在此仅作为其它函数库的参考

(4)intget_status(inticdev,int*state)

说明:

返回设备当前状态

调用:

icdev:

通讯设备标识符

state:

插卡状态

state=1读写器插有卡;state=0读写器无卡

返回:

<0错误

=0正确,

举例:

intstatus;

st=get_status(icdev,&status);

(5)intturn_on(inticdev)

说明:

对卡上电

调用:

icdev:

通讯设备标识符

返回:

<0错误

=0正确

举例:

st=turn_on(icdev);

(6)intturn_off(inticdev)

说明:

对卡下电

调用:

icdev:

通讯设备标识符

返回:

<0错误

=0正确

举例:

st=turn_off(icdev);

(7)intsrd_ver(inticdev,intlen,unsignedchar*databuff)

说明:

读取设备版本号

调用:

icdev:

通讯设备标识符

len:

版本号字符串长度,其值为18

databuff:

存放读取的版本号字符串

返回:

<0错误

=0正确

举例:

unsignedchardatabuff[18];

st=srd_ver(icdev,18,databuff);

(8)intset_baud(inticdev,longbaud)

说明:

设置串口方式下的波特率,设置完毕后,必须重新初始化通讯口。

调用:

icdev:

通讯设备标识符。

baud:

串口时代表波特率,其值可为1200-115200

返回:

<0错误

=0正确

举例:

st=set_baud(icdev,57600);

设置读写器串口波特率为57600。

(9)longchk_baud(intport)

说明:

自动检测通讯方式。

该函数要在初始化通讯口前使用

调用:

Port:

通讯口号0、1、2、3代表串口1、2、3、4;

返回:

<0错误

>=0正确。

返回串口的波特率

举例:

st=chk_baud(0x378);

举例:

unsignedchardatabuff[3]={’a’,’b’,’c’};

st=cmp_dvsc(icdev,3,databuff);

(10)intchk_card(inticdev)

说明:

测卡类型,仅适用明华公司生产的部分IC卡

调用:

icdev:

通讯设备标识符

返回:

<0错误

>=0正确;卡类型参照IC卡类型代码

举例:

st=chk_card(icdev);

(11)intic_encrypt(char*key,char*ptrsource,unsignedint

msglen,char*ptrdest)

说明:

DES算法加密函数

调用:

key:

加密的密码,长度为8

ptrsource:

原文

msglen:

原文长度必需为8的倍数

ptrdest:

密文

返回:

<0错误。

其绝对值为错误代码

=0成功

举例:

charpatrdest[16];

st=ic_encrypt(“12345678”,”abcdefghabcdefgh”,16,ptrdest)

将长度为16的”abcdefghabcdefgh”用密码“12345678”加密

(12)intic_decrypt(char*key,char*ptrdest,unsignedint

msglen,char*ptrsource)

说明:

DES算法解密函数,使用过程与ic_encrypt相反

调用:

key:

加密的密码;长度为8

ptrsource:

密文

msglen:

密文长度必需为8的倍数

ptrdest:

原文

返回:

<0错误。

其绝对值为错误代码

=0成功

举例:

charptrdest[16];

st=ic_decrypt(“12345678”,”abcdefghabcdefgh”,16,ptrdest)

将长度为16的”abcdefghabcdefgh”用密码“12345678”解密

(13)unsignedlongDES_Encrypt(unsignedchar*Key,intKeyLen,unsignedchar

*Source,unsignedlongSrcLen,unsignedchar*Result)

说明:

DES算法加密函数

调用:

key:

加密的密码

keyLen:

加密的密码长度

Source:

原文

Srclen:

原文长度

Result:

密文

返回:

加密后密文长度。

=0成功

举例:

charpatrdest[16];

st=ic_encrypt(“1234”,4,”abcdefghabcdef”,14,ptrdest)

将长度为14的”abcdefghabcdef”用密码“1234”加密

注意:

与ic_encrypt()函数相比,它取消了对密码和加密数据长度必须为8的限制,

它对于非8倍数的处理方式为在数据后自动补‘0’,凑足8的倍数。

(14)unsignedlongDES_Decrypt(unsignedchar*Key,intKeyLen,unsignedchar

*Source,unsignedlongSrcLen,unsignedchar*result)

说明:

DES算法解密函数,使用过程与des_encrypt相反

调用:

Key:

解密的密码

Keylen:

解密的密码长度

Source:

密文

SrcLen:

密文的长度。

Result:

原文

返回:

解密后原文的长度。

举例:

charptrdest[14];

st=ic_decrypt(“1234”,4,”abcdefghabcdef”,14,ptrdest)

将长度为14的”abcdefghabcdef”用密码“1234”解密

注意:

与ic_decrypt()函数相比,它取消了对密码和加密数据长度必须为8的限制,

它对于非8倍数的处理方式为在数据后自动补‘0’,凑足8的倍数。

(15)intasc_hex(unsigedchar*asc,unsignedchar*hex,

unsignedlonglength);

说明:

将ASCII码转换为十六进制数据

参数:

asc:

输入要转换的字符串

hex:

存放转换后的字符串

length:

为转换后的字符串长度

返回:

=0正确

〈0错误

举例:

unsignedchardatabuff[6];

st=asc_hex(“a1a2a3a4a5”,databuff,5);

(16)inthex_asc(unsignedchar*hex,unsignedchar*asc,

unsignedlonglength);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1