RD接触式IC卡读写器使用手册Word版.docx
《RD接触式IC卡读写器使用手册Word版.docx》由会员分享,可在线阅读,更多相关《RD接触式IC卡读写器使用手册Word版.docx(68页珍藏版)》请在冰豆网上搜索。
RD接触式IC卡读写器使用手册Word版
第一章RD系列接触式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
3.8版本兼容性.......................................................45
附录一几种常用IC卡的特性............................................45
[1999/10/10]
RDMIXMANDOC-6.10A
第一章RD系列接触式IC卡读写器简介
1.1概述
深圳市明华澳汉科技有限公司是以生产IC卡及开发IC卡相关设备为主导产品的高新科技企业。
继1996年第一台接触式IC卡读写器问世以来,本公司经不断改进、提高,已相继推出数千台不同型号的读写器。
XXXX读写器是明华公司最新推出的读写设备,它功能齐全、性能稳定,在原有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通讯协议)
特点
●可读写多种Memory卡和支持T=0、T=1通讯协议的CPU卡;
●支持对SAM卡操作的功能;
●与PC机通讯采用RS232串口,波特率为1200115200BPS;
●对于使用SAM卡的用户,可以选择内置于读写器的小卡座,也可以选择通过卡槽操作的大卡座。
●提供诸多开发平台的接口函数和应用范例。
1.2读写器型号
(S)RD-XX-X
例如:
RD-EB-MX为外置推拨式可读写Memory卡和CPU卡的混合型读写器
1.3装箱清单
读写器一台
串口线一条
安装盘一张
用户手册一本(根据需要提供)
产品保修卡一张
1.4读写器连接方式
XXXX读写器有两个PS/2接口和一个串口,PS/2接口中的一个与计算机的键盘口连接,另一个与键盘相连,串口直接接至计算机的串口上。
1.5指示灯
三色指示灯:
绿色用户卡已插入,闪烁时表示正在对用户卡操作
红色未插用户卡或SAM卡
橙色用户卡未插入,SAM卡已插入,闪烁时表示正在对SAM卡操作
1.6程序安装
步骤:
●将内置读写器安装在计算机内;或将外置读写器连接在计算机通讯口上;
●接通读写器电源;
●将随机软盘插入驱动器A:
或B:
中
●在WINDOWS95/98环境下双击MWRD.EXE;
●按照安装程序的提示和要求进行安装;
注意:
安装程序在根目录下建立MWRD的目录(缺省),所有驱动软件均在此目录下。
安装完毕后请仔细阅读README.TXT文件。
1.7用户软件(V6.5)
用户软件包括三部分:
演示系统、驱动程序、应用范例和兼容库
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)等的应用范例。
d.兼容库V5.4
为了兼容NRD系列及RDZ、RDB、RDT型读写器及其驱动程序Ver5.X,在RD系列读写器Ver6.4以上的驱动程序中增加了兼容库。
使用旧读写器的客户,只要购置RD系列读写器及其兼容库,可不必更改源程序即可完成平稳过渡。
1.8技术指标
●通讯接口:
RS232串口
●串口的波特率:
1200115200BPS
●电源:
由键盘取电,不外带电源
●最大功耗:
100mW
●环境温度:
商业级0°70°C
工业级-25°85°C
●相对湿度:
30%95%
●抗静电干扰:
15KV
●抗磁场干扰:
19奥斯特
●抗振动能力:
振幅0.35mm,频率10-55Hz,三个轴方向扫频振动
●绝缘电阻:
湿热情况下(40°,95%)绝缘电阻应不小于5MΩ。
●外型尺寸:
内置式长宽高138mm120mm25mm
外置式长宽高150mm118mm100mm
●重量:
内置式约200克;外置式约500克
第二章演示系统使用说明
该演示系统可对ATMEL、SIEMENS等Memory卡和符合T=0/T=1通讯协议的CPU卡读写操作。
图1演示系统主界面
1.演示系统主界面分五个功能区,分别说明如下:
●设备信息提示
可显示用户软件版本号、硬件版本号、产品序列号
●设备操作
--密码操作
可设置密码、更改密码、读出密码和比较密码
--设备计数
读写器发卡时可做计数之用。
--设备蜂鸣
可按设置时间要求执行鸣叫。
--EEPROM读写
可向EEPROM中写入有关设备的一些备注信息
--自动弹卡
自弹式读写器可执行弹卡操作。
●卡片选择
卡片选择分手动选择卡型和自动检测卡型两种,卡片选择完成以后,按下卡片操作按钮,进入相应的Memory卡或CPU卡操作界面,实现各自的功能操作。
●建立连接
初次运行系统时,系统按自动测试方式建立连接,并将成功连接的参数保存在系统文件中。
下次运行时系统将自动按保存的参数建立连接。
也可以指定通讯口和波特率(或并口方式)建立连接。
连接成功后,用户可以更换读写器端口和波特率值(或并口方式),指定连接方式后,执行更改连接。
自动测试将按照并口0x378、并口0x278、串口1~串口4的顺序自动测试并连接。
●提示信息
提示信息显示各项操作的结果或出错信息。
鼠标双点框内文字可清空该区域。
●帮助文件
按F1键或在卡片操作界面单击?
图标,则弹出RD读写器帮助系统。
该帮助系统功能
十分详尽,包括如何使用演示软件、明华读写设备介绍、支持卡型介绍、库函数介绍和读写器常见问题解答五大部分。
第三章IC卡读写器驱动函数说明
3.1安装程序主要目录和文件
README.TXT版本说明
MWRD6.5\DRVER\:
RD系列读写器驱动程序
\C.LIB\*.*C.DOS静态函数库
\FOXPRO.DOS\*.*FOXPROFORDOS接口函数库
\WINDOWS.DLL\*.*WINDOWS32位和16位动态库
\UNIX\*.*UNIX动态库
\FOXBASE\*.*FOXBASE函数库
\DEMO.WIN\DEMO.EXEWINDOWS下操作演示软件
\EXAMPLES\*.*各种平台的应用范例
MWRD5.4\:
RD读写器兼容库
\C.LIBC.DOS静态函数库
\FOXPRO.DOSFOXPROFORDOS接口函数库
\WINDOWS.DLLWINDOWS32位和16位动态库
\Ref5X.TXT使用说明
SRDUSER.DOCSRD-E*P-45D041读写器用户使用手册
UNWISEEXE卸载安装程序
3.2函数使用规则
(1)首先调用通讯口初始化函数ic_init()或auto_init();
(2)如果设备密码已设置有效,则通讯口初始化后必须先核对设备密码,然后再按照对卡操作的顺序调用相应的函数。
出厂时缺省的设备密码为0xffffff,在密码设置有效之前或在密码正确核对的有效期间,均可以读出设备密码。
密码核对的有效期指的是在正确核对设备密码以后,到读写器关闭电源为止的时间。
在此期间即使您的程序已经退出,原先核对的密码仍然有效。
(3)在串口通讯方式下,调用WINDOWS16位/32位动态库或UNIX函数库时,程序退出之前要执行ic_exit()函数,关闭串口,释放句柄icdev;否则再次初始化串口将出错。
(4)函数调用错误类型,请参照函数错误类型代码。
所有函数的错误代码均以负数形式返回;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卡函数
a.通用函数库
(1)intic_init(intport,longbaud)
说明:
初始化通讯接口
调用:
Port:
通讯口号0、1、2、3分别代表串口1、2、3、4;
并口为其I/O地址(如0x378)
baud:
通讯口为串口时代表波特率,其值可为1200-115200
通讯口为并口时代表半字节或全字节通讯方式,其值为0或1
返回:
<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)intdv_beep(inticdev,inttime)
说明:
读写器蜂鸣
调用:
icdev:
通讯设备标识符
time:
蜂鸣时间,值范围0-255(单位10ms)
返回:
<0错误
=0.正确
举例:
st=ic_beep(icdev,100);
(6)intauto_pull(inticdev)
说明:
自动弹卡
调用:
icdev:
通讯设备标识符
返回:
<0错误
=0正确
举例:
st=auto_pull(icdev);
(7)intturn_on(inticdev)
说明:
对卡上电
调用:
icdev:
通讯设备标识符
返回:
<0错误
=0正确
举例:
st=turn_on(icdev);
(8)intturn_off(inticdev)
说明:
对卡下电
调用:
icdev:
通讯设备标识符
返回:
<0错误
=0正确
举例:
st=turn_off(icdev);
(9)intsrd_ver(inticdev,intlen,unsignedchar*databuff)
说明:
读取设备版本号
调用:
icdev:
通讯设备标识符
len:
版本号字符串长度,其值为18
databuff:
存放读取的版本号字符串
返回:
<0错误
=0正确
举例:
unsignedchardatabuff[18];
st=srd_ver(icdev,18,databuff);
(10)intset_baud(inticdev,longbaud)
说明:
设置串口方式下的波特率或并口的通讯方式,设置完
毕后,必须重新初始化通讯口。
调用:
icdev:
通讯设备标识符。
baud:
串口时代表波特率,其值可为1200-115200
并口时代表半字节或全字节方式,其值分别为0或1
返回:
<0错误
=0正确
举例:
st=set_baud(icdev,57600);
设置读写器串口波特率为57600。
(11)longchk_baud(intport)
说明:
自动检测通讯方式。
该函数要在初始化通讯口前使用
调用:
Port:
通讯口号0、1、2、3代表串口1、2、3、4;
并口则使用其I/O地址(如0x378)。
返回:
<0错误
>=0正确。
返回串口的波特率或并口的通讯方式(0或1)
举例:
st=chk_baud(0x378);
(12)intsrd_dvsc(inticdev,intlen,unsignedchar*databuff)
说明:
读出设备密码
调用:
icdev:
通讯设备标识符
len:
密码字符串长度,其值为3
databuff:
存放读取的密码字符串
返回:
<0错误
=0正确
举例:
unsignedchardatabuff[3];
st=srd_dvsc(icdev,3,databuff);
(13)intswr_dvsc(inticdev,intlen,unsignedchar*databuff)
说明:
改写设备密码
调用:
icdev:
通讯设备标识符
len:
密码字符串长度,其值为3
databuff:
存放要写入的密码字符串
返回:
<0错误
=0正确
举例:
unsignedchardatabuff[3]={’a’,’b’,’c’};
st=swr_dvsc(icdev,3,databuff);
(14)intcmp_dvsc(inticdev,intlen,unsignedchar*databuff)
说明:
比较设备密码
调用:
icdev:
通讯设备标识符
len:
密码字符串长度,其值为3
databuff:
存放要比较的密码字符串
返回:
<0错误
=0正确
举例:
unsignedchardatabuff[3]={’a’,’b’,’c’};
st=cmp_dvsc(icdev,3,databuff);
(15)intsetsc_md(inticdev,intmode)
说明:
设置设备密码模式
mode=0时设置设备密码有效,在设备加电时必须先核对
设备密码才能对设备操作;mode=1时设置设备密码无效。
调用:
icdev:
通讯设备标识符
mode:
密码模式
返回:
<0错误
=0正确
举例:
st=setsc_md(icdev,0);
设置设备密码有效
(16)intsrd_snr(inticdev,intlen,unsignedchar*databuff)
说明:
读出设备标识号
调用:
icdev:
通讯设备标识符
len:
字符串长度,其值为16
databuff:
存放要读出的标识号字符串
返回:
<0错误
=0正确
举例:
unsignedchardatabuff[16];
st=srd_snr(icdev,16,databuff);
(17)intchk_card(inticdev)
说明:
测卡类型,仅适用明华公司生产的部分IC卡
调用:
icdev:
通讯设备标识符
返回:
<0错误
>=0正确;卡类型参照IC卡类型代码
举例:
st=chk_card(icdev);
(