⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ic102.prg

📁 IC卡编程
💻 PRG
字号:
SET TALK ON
*假定动态库已被拷至C:\WIN95\SYSTEM下
DECLARE INTEGER IC_InitComm IN lkic32 INTEGER port
DECLARE SHORT IC_ExitComm IN lkic32 INTEGER port
DECLARE SHORT IC_InitType IN lkic32 INTEGER port,INTEGER cardtype
DECLARE SHORT IC_Read IN lkic32 INTEGER port,INTEGER offset,INTEGER length,STRING @buffer
DECLARE SHORT IC_Write IN lkic32 INTEGER port,INTEGER offset,INTEGER length,STRING @buffer
DECLARE SHORT IC_Erase IN lkic32 INTEGER port,INTEGER offset,INTEGER length
DECLARE SHORT IC_CheckPass_102 IN lkic32 INTEGER port,STRING @buffer
DECLARE SHORT IC_ChangePass_102 IN lkic32 INTEGER port,STRING @buffer
DECLARE SHORT IC_ReadCount_102 IN lkic32 INTEGER port
DECLARE SHORT IC_CheckAZPass_102 IN lkic32 INTEGER port,INTEGER passtype,STRING @buffer
DECLARE SHORT IC_Erase_102 IN lkic32 INTEGER port,INTEGER offset,INTEGER length

CLEAR
COM=1       &&COM2
CARDTYPE=32  &&AT88SC102
COM=IC_InitComm(COM) 
X=IC_InitType(COM,CARDTYPE)
P=CHR(240)+CHR(240)  && chang the type of sc  as a string type 
EZ1=CHR(255)+CHR(255)+CHR(255)+CHR(255)+CHR(255)+CHR(255) &&HEX CODE "FFFFFF"
EZ2=CHR(255)+CHR(255)+CHR(255)+CHR(255) &&HEX CODE "FFFF"
IZ='GICOM'
DATA_S=SPACE(2)
FLAG=CHR(15)+CHR(15)
X=IC_Read(COM,0,2,@DATA_S)
IF DATA_S<>FLAG
   ? 'NOT ATMEL102 CARD'
   X=IC_Exitcomm(COM)
   clea dlls
   RETU
ENDI
X=IC_CheckPass_102(COM,@P)  && verify the scurity code
?X
IF X>=0
?'PASSWORD IS OK!'
ELSE
?'PASSWORD IS WRONG'
X=IC_Exitcomm(COM)
clea dlls
RETURN
ENDIF
?'READ THE SC ERROR COUNTER'
X=IC_ReadCount_102(COM)
?X
?'ERASE AZ1'
X=IC_CheckAZPass_102(COM,86,@EZ1)
?'WRITE VALUE 364.55 AT ADDRESS 32'
DATA=364.55
DATA_S=STR(DATA,6,2)
X=IC_Write(COM,32,6,@DATA_S)
IF X=0 THEN
?'WRITE OK'
ELSE
?'WRITE ERROR'
ENDIF
?'READING....'
X=IC_Read(COM,32,6,@DATA_S)
?'THE VALUE IS:'
?VAL(DATA_S)
?'CHANGE TO 255.78'
X=IC_Erase_102(COM,32,6)
DATA_S=STR(255.78,6,2)
X=IC_Write(COM,32,6,@DATA_S)
X=IC_Read(COM,32,6,@DATA_S)
?'THE NEW VALUE IS:'
?VAL(DATA_S)
X=IC_Erase_102(COM,32,6)
?X
X=IC_Read(COM,32,6,@DATA_S)
?'THE NEW VALUE IS:'
?VAL(DATA_S)
x=IC_ExitComm(COM)
clear dlls

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -