资源描述
IC卡全扇区读卡器开发说明
UDP控件设定,端口设为39169,
如delphi中用IdUDPServer控件,,属性如下:
VB用Winsock控件,,属性如下:
一、 接收到读卡器的开机信息
如:241, 192, 168, 1, 218, 255, 255, 255, 0, 255, 255, 255, 255,2, 0, 186, 0, 220, 15, 0, 0, 0
以上数据以逗号分隔开每个字节的数据:
241为命令字,表示接收到的信息是读卡器开机信息;
192,168,1,218为读卡器的IP地址;
255, 255, 255, 0为子网掩码;
255, 255, 255, 255为读卡器发送信息时指向的电脑IP地址;
2, 0为读卡器的机号;
186, 0, 220, 15为读卡器设备序列号,每一个读卡器都不同,是唯一。
二、 刷卡后,在没设定读卡区号的情况下,读卡器发送到电脑的信息
如:193,192, 168, 1, 218, 0, 0,1,0,1,2,3,4,5
193为命令字,表示接收到的信息是读卡号信息;
192,168,1,218为读卡器的IP地址;
0, 0为读卡器的机号;
1,0为信息数据包序列号,下一包将递增1
1,2,3,4,5为卡号信息,为兼容ID卡的格式,一般以5个字节为准,实际上IC卡只有4个 字节,只用到2,3,4,5
为了保证不丢包,每次刷卡后,读卡器在电脑没有回应的情况下,将在一秒钟内发3次读卡信息。电脑回应读卡器的信息如:105, 192, 168, 1, 218, 0,2,1,0
105为回应的命令字;
192,168,1,218为读卡器的IP地址;
0,2为读卡器的机号;
1,0为信息数据包序列号
三、 刷卡后,在设定好读卡器区号的情况下,读卡器发送到电脑的信息,(设定读卡返回的区号操作见下一条)
如:195,192, 168, 1, 218, 0, 0,1,0,2,0,2,1,2,3,4,0~47,0~47
193为命令字,表示接收到的信息是读卡号信息;
192,168,1,218为读卡器的IP地址;
0, 0为读卡器的机号;
1,0为信息数据包序列号;
2为本次读卡的总区数
0为本包的区首地址(以区为单位)
2为本包所要下传的区数
0~47为对应的区数据
0~47为对应的区数据
四、 设定读卡返回的区号操作
例如电脑向读卡器发送:75,0,2,2,0,255,255,255,255,255,255, 1,255,255,255,255,255,255
75为命令字,表示设定读卡区号及密码;
0,2为读卡器机号;
2为设定读卡的区数;
0为卡的第0区;
255,255,255,255,255,255为卡密码;
1为卡的第1区;
255,255,255,255,255,255为卡密码
设定成功后读卡器会返回75, 192, 168, 1, 218,0,2,3,0
75为命令字;
192, 168, 1, 218为读卡器IP地址;
0,2为读卡器机号;
3,0为设定为读卡区的区标志
五、 写卡操作,必须在设定好读卡返回区号后写卡操作才有效
如一个数据包数据:60,2,0,2,0,2,1,2,3,4,0~47,0~47
60为命令字,表示写卡;
0,2为读卡器机号;
2为本次写卡的区数;
0为本次数据包起始区地址,仅相对于本次写卡的数据包区地址,并不对应卡的区号;
2为本次数据包的区数;
因为写卡操作的数据可能比较长,一个数可能传不完,必须在传完的情况下才开始写卡,
当 本次写卡的区数 >= 本次数据包起始区地址 + 本次数据包的区数 才开始写卡。
六、 驱动显示及声音
如:90,2,0,1,20,1~34
90为命令字,表示驱动显示及声音;
0,2为读卡器机号;
1为声音类型,为255表示不发声音,见下表
0
短滴一声
1
短滴两声
2
短滴三声
3
长鸣一声
4
长鸣两声
5
长鸣三声
6
一长一短
7
一长两短
8
一长三短
9
两长一短
255
不发声
20为显示保留时间,过了这个时间会显示待机状态,为255表示永久显示,直到电脑发出 有新的显示指令来刷新。
1~34为显示内容
展开阅读全文