您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > MF09读写器(CPU卡)操作说明书
MF09非接触卡通用读写器CPU卡操作说明书本说明书将详细MF09非接触卡通用读写器针对SAM卡及TYPEA&TYPEB非接触CPU卡的操作函数。MF09读写器本身包括二个SAM卡座,即可同时插接二张SAM卡,可对SAM卡进行完整的操作。MF09读写器可以对TYPEA和TYPEB系列的非接触式CPU卡进行操作。本说明书包括如下部份:1:CPU卡及SIM卡说明2:MF09读写器针对CPU卡的操作函数说明3:MF09读写器嵌入式应用时的命令码说明如有任何问题,请及时与我们联系,我们将及时为你解答.TEL:(010)62965305,13910724049第一章CPU卡说明随着IC卡的应用越来越广泛,IC卡的类型也根据自身的结构,分为存储器卡、逻辑加密卡和CPU卡等。由于CPU卡本身带有片上操作系统(COS),其应用具有高保密性、存贮分区灵活等特点。目前CPU卡已经逐渐在应用中占据主导地位。近年来,IC智能卡中的非接触式射频CPU卡的安全保密、使用简便等特点使其在各领域的应用中异军突起,特别在民用系统(自动电表抄表系统、公交/地铁自动售票系统、企业“一卡通”、巡更保安系统等)中得到广泛的应用。非接触式CPU卡按照其与读写器的通信方式分为TYPEA和TYPEB两种类型。各个不同的厂商生产的非接触式CPU卡具有不同的通信类型及存贮容量。所以用户在选用CPU卡时,需要按照自己的要求及厂商供货情况进行不同的选择。SAM卡是一种简化的接触式CPU卡,它主要用于进行用户身份的密码认证以及应用数据的加密及解密。MF09读写器可以对非接触式CPU卡(包括TYPEA和TYPEB)进行完整的操作,其本身带有二个SAM卡座,可以同时接2个SAM卡,可完成对这二个SAM卡的操作。以实现对用户身份的认证及数据的加密、解密。CPU卡本身带有操作系统,它上电复位后,是处于其片上操作系统的管理中。读写器对CPU卡进行操作是通过向CPU卡发出相应的命令,CPU卡按照命令执行后,将结果返回给读写器。每个厂商的CPU卡都有自身的操作系统(COS),所有定义的命令格式都是符合相关的国际或国家标准。但也会可能有一些自定义的命令,故用户在使用某CPU卡时,一定要按照其命令定义来对CPU卡进行操作。在对CPU卡的操作过程中,读写器实际上是起到一个用户应用系统与CPU卡之间的通信传输装置。即接收从用户应用系统中发出的对CPU卡的操作命令序列,将该命令序列按CPU卡命令标准格式发送给CPU卡,CPU卡在接收到命令后,执行该命令。然后将命令执行的结果返回给读写器。读写器再将该操作结果传输给用户系统。第二章读写器针对Mifare卡的操作函数说明MF09读写器针对SAM卡操作有如下函数:.SAM卡上电.SAM卡复位.SAM卡操作.SAM卡断电MF09读写器针对非接触CPU卡操作有如下函数:.CPU卡卡类型选择.CPU卡选择.CPU卡激活.CPU卡操作.CPU卡休眠一、函数申明MF09.DLL针对CPU及SAM卡提供了如下函数调用:1、通用函数集longpascalLinkCom(longid,longPort,longbaudrate);longpascalUnLinkCom(void);longpascalLink_Reader(longid);longpascalALARM(longid,longDevice,longOneTime,longBetweenTime,longTimes);longpascalResetDevice(longid);longpascalRestoreDevice(longid);这部份的函数定义与MF09对MIFARE卡操作说明书中的定义相同,请参考该部份的说明。2、针对SAM卡的操作函数集longpascalSAM_PowerOn(longid,longSamNum,unsignedchar*Reset_Info);longpascalSAM_Reset(longid,longSamNum,unsignedchar*Reset_Info);longpascalSAM_TCL(longid,longSamNum,unsignedchar*yData_buff);longpascalSAM_PowerDown(longid,longSamNum);3、针对非接触CPU卡的操作函数集longpascalISO14443_Set_CardType(longid,longCardType);longpascalISO14443_TypeA_Select(longid,longcallmode,unsignedchar*CardSnr);longpascalISO14443_TypeA_Active(longid,longcid,unsignedchar*CardSnr,unsignedchar*Reset_Info);longpascalISO14443_TypeA_Exchange(longid,longcid,longytime,longoutput_len,unsignedchar*databuff);longpascalISO14443_TypeA_Halt(longid,longcid);longpascalISO14443_TypeB_Select(longid,longAFI,longSLOT,unsignedchar*ATQB);longpascalISO14443_TypeB_Active(longid,longcid,unsignedchar*CardSnr);longpascalISO14443_TypeB_Exchange(longid,longcid,longytime,longoutput_len,unsignedchar*databuff);longpascalISO14443_TypeB_Halt(longid,longcid);参数的统一说明1)Id:读写器id号:由于在一条通信总线上可以挂接多个读写器,我们可以先设定好读写器的ID号来区分总线上不同的读卡器。这样在实际操作时,可以针对某一个读写器进行操作。读写器在数据总线上接收到命令后,只有与本读卡器ID号相同的命令才能被执行。2)对于返回的操作结果,如果函数调用返回值为0,则表明操作正确。否则为操作失败,返回的值为操作失败码。3)返回的卡片序列号的定义是:第一个字节为卡片序列号的长度,其后的字节为卡片序列号。由于卡片序列号可能为4个字节或7个字节,故采用此方法,这点与我们过去的读写器不同,需要特别作出说明。4)在每个函数的说明中,都有一个命令码的参数,请参数是针对嵌入式应用中直接对读写器发命令串的方式来操作所说明的,在用PC机上层调用动态库时,该参数不需要提供给函数。第三章函数功能及参数说明3.1针对SAM卡的操作函数集3.1.1SAM_PowerOn:SAM卡上电(SAM卡冷复位)功能说明:此命令对某个SAM卡上电。SAM卡座在不工作时是没有电的,只有在上电后,才能对SAM卡进行操作。用法:longpascalSAM_PowerOn(longid,longSamNum,unsignedchar*Reset_Info);参数:命令码:0x60SamNum:SAM卡座号,共有二个,分别是0,1Reset_Info:上电复位后,SAM卡返回的复位信息。返回值:返回值为0,表示操作正确,为其它值时表示出错。3.1.2SAM_Reset:SAM卡复位(热复位)功能说明:此命令对某个SAM卡进行热复位。用法:longpascalSAM_Reset(longid,longSamNum,unsignedchar*Reset_Info);参数:命令码:0x61SamNum:SAM卡座号,共有二个,分别是0,1Reset_Info:复位后,SAM卡返回的复位信息。返回值:MI_OK,MI_ERR;3.1.3SAM_TCL:SAM卡操作命令功能说明:该函数用于将SAM卡操作命令传给SAM卡,SAM卡操作完成后,将数据返回给用户系统。用法:longpascalSAM_TCL(longid,longSamNum,unsignedchar*yData_buff);参数:命令码:0x62SamNum:SAM卡座编号,为0,1yData_buff:待传送的命令数据,其中第1个字节为命令数据的长度。返回时的命令数据,其中第1个字节为命令数据长度。返回值:MI_OK,MI_ERR;3.1.4SAM_PowerDown:SAM卡下电功能说明:此命令将某个SAM卡下电。用法:longpascalSAM_PowerDown(longid,longSamNum);参数:命令码:0x63SamNum:SAM卡座编号,为0,1返回:MI_OK,MI_ERR;3.2针对非接触式CPU卡的操作函数集3.2.1ISO14443_Set_CardType:选择待操作的CPU卡类型功能说明:由于非接触卡的TYPEA和TYPEB是两种不同的操作模式,故我们在对CPU卡进行操作前,需将读写器置于相应的操作环境上。用法:longpascalISO14443_Set_CardType(longid,longCardType);参数:命令码:0x30CardType:CPU卡类型,=0,为TYPEA的CPU卡=1,为TYPEB的CPU卡返回值:MI_OK,MI_ERR;3.2.2ISO14443_TypeA_Select:TYPEACPU的卡片呼叫功能说明:此命令用于对TYPEA类CPU卡作卡片呼叫操作。用法:longpascalISO14443_TypeA_Select(longid,longcallmode,unsignedchar*CardSnr);参数:命令码:0x31callmode:卡片呼叫方式=1,ALL=0,IDELCardSnr:返回的卡片序列号,其一第1个字节为卡片序列号的长度。返回值:MI_OK,MI_ERR;3.2.3ISO14443_TypeA_Active:TYPEACPU卡激活功能说明:此命令用于激活TYPEACPU卡。用法:longpascalISO14443_TypeA_Active(longid,longcid,unsignedchar*CardSnr,unsignedchar*Reset_Info);参数:命令码:0x32cid:读写器与卡片之间通信传输通道号。因读写器可以同时对多张卡片进行操作。在对某张卡片进行操作前,需定义某一个通道号。CardSnr:卡片序列号,其中第1个字节为卡片序列号的长度。Reset_Info:卡片被激活后,返回的复位信息。其中第1个字节为返回的复位信息的长度。返回值:MI_OK,MI_ERR;3.2.4ISO14443_TypeA_Exchange:TYPEACPU卡的操作命令传输功能说明:此命令用于进行对CPU卡的操作。用法:longpascalISO14443_TypeA_Exchange(longid,longcid,longytime,longoutput_len,unsignedchar*databuff);参数:命令码:0x33cid:读写器与卡片之间通信传输通道号。与激活命令中定义的通道号相一致。Ytime:预计该命令的执行时间,如超过该时间,读写器将强行返回,本次命令执行出错。Output_len:输出/返回命令的数据长度。Databuff:输出/返回的命令数据。返回值:MI_OK,MI_ERR;3.2.5ISO14443_TypeA_Halt:TYPEACPU卡休眠功能说明:此命令用于休眠CPU卡。用法:longpascalISO14443_TypeA_Halt(longid,longcid);参数:命令码:0x34cid:读写器与卡片之间通信传输通道号。与激活命令中定义的通道号相一致。返回值:MI_OK,MI_ERR;3.2.6ISO14443_TypeB_Select:TYPEBCPU卡片呼叫功能说明:本命令用于对TYPEB类
本文标题:MF09读写器(CPU卡)操作说明书
链接地址:https://www.777doc.com/doc-3233689 .html