欢迎来到天天文库
浏览记录
ID:41592887
大小:105.23 KB
页数:15页
时间:2019-08-28
《ic卡智能安全系统通信程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、'读卡错误标志'写卡错误标志'PSC密码校验PublicReadCardErrorFlagAsBooleanPublicWriteErrorFlagAsBooIeanPublicPSCCheckErrorFlagAsBoolean'入口:ReadCardErrorFlag为出错标志'出口:ReadCardErrorF1ag,出口值:"Correct",z,Errorz,,'IcData(255)'IC卡中0、255个数据'ECPSCData(3)'错误标志字节(0),IC卡密码字节(「3)PublicSubRead_Card()*Read_Car
2、d读卡程序DimlcData(0To255)AsByteDimEC_PSC_Data(0To3)AsByteDimSendData(0To4)AsByteDimSendDatal(0To3)AsByteDimReceiveDataOAsByteDimWriteDataOAsByteDimAOAsSingleOnErrorGoToReadCardErrorO'启动错误处理程序Rem开始与单片机通信'清空缓冲区'等待接收-个数FrmICRW.MSCommlC.InBufferCount=0AO=Timer()Do据IfTnt(Abs(Tinier()
3、-AO))>=2ThenGoToReadCardErrorlLoopUnt订FmiIC_RW.MSCommlC.InBufferCount>=1ReceiveData=FrmIC_RW.MSCommIC.InputIfReceiveData(0)<>86ThenGoToReadCardErrorl继续执行'有数据'取数据'是握手信号86,'首先发送命令信号SendData(0"4)SendData(1)=82FrmIC_RW.MSCommlC.Output二SendData数据A0=Timer()'发送出去等待返回Do'等待接收数据,让岀控制权I
4、fInt(Abs(Timer()-AO))>=3ThenGoToReadCardErrorlLoopUntilFrmICRW.MSCommlC.InBufferCount>=266ReceiveData=FrmTCRW.MSCommlC.Input'取数据,得到266个数据,(0),(257)是标志66,168数据判误IfNot(ReceiveData(O)=66OrReceiveData(257)=168)ThenGoToReadCardError2'(1)〜(256)是IC卡中主存数据ForI=1To256IcData(I-1)=Receiv
5、eData(I)个数据NextI'错误标志字节(0),TC卡密码字节(1~3)(258)(ECPSCOPSC1PSC2前后)ForI=262To265ECPSCData(I-262)=ReceiveData(I)NextIReadCardErrorFlag=True确GoToReadCardReturnReadCardErrorO:误标志FrmICRW.MSConmilC.InBufferCount=0ReceivcData=FrmIC_RW.MSCommlC.Input据ReadCardErrorF1ag=FalseMsgBox〃读卡错误〃,v
6、bOKOnly,"读卡程序提示"GoToReadCardReturnReadCardErrorl:误标志FrmTCRW.MSConunTC.InBufferCount=0ReceiveData=FrmTCRW.MSCommTC.Input据ReadCardErrorFIag二FaIseMsgBox〃与单片机通信错误,z,vbOKOnly,〃读卡程序提示"GoToReadCardReturnReadCardError2:错误标志FrmIC_RW.MSCommlC.InBufferCount=0ReceiveData=FrmICRW.MSCommlC
7、.Input据ReadCardErrorF1ag=FalseMsgBox〃收到写卡器数有错误〃,vbOKOnly,读卡程序提示〃GoToRcadCardReturnReadCardReturn:EndSubPublicSubWriteCard()DimIcData(0To255)AsByteDimECPSCData(0To3)AsByte,IC卡中0〜255(265)是密码数据'读卡正'读卡错'接收数'与单片机通信错'接收数'数据接受'接收数'写卡DimSendData(0To4)AsByteDimSendDatal(0To3)AsByteDim
8、ReceiveDataOAsByteDimWriteData()AsByteDimAOAsSingleRem开始与单片机通信FnnIC_
此文档下载收益归作者所有