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

📄 magcard.h

📁 一个读取ic卡的读卡程序。一个读取ic卡的读卡程序一个读取ic卡的读卡程序
💻 H
📖 第 1 页 / 共 5 页
字号:
enum ICArea {
	ANY=0,	// any
	FZ,IZ,SC,SCEC,CPZ,	// head
	SC1,SC1EC,EZ1,EZ1EC,AZ1,	// area1
	SC2,EZ2,EZ2EC,AZ2,	// area2
	SC3,EZ3,EZ3EC,AZ3,	// area3
	SC4,EZ4,EZ4EC,AZ4,	// area4
	MTZ,FUSE	// tail
};

/* Functions defined below is to be used with Atmel 1604 memory card.*/
#ifdef __cplusplus
extern "C" {
#endif

int MCAPI ICread_1604(int port, enum ICArea area,int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICreadD_1604(int port, int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICreadEC_1604(int port, enum ICArea area,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICwrite_1604(int port,enum ICArea area, int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICwriteD_1604(int port,int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICerase_1604(int port,enum ICArea area, int address, int datalen,
	 unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICeraseD_1604(int port,int address, int datalen,
	 unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICoverwrite_1604(int port,enum ICArea area, int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICoverwriteD_1604(int port, int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI  ICfuse_1604(int port,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI  ICPassword_1604(int port,enum ICArea area,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI  ICChangePassword_1604(int port,enum ICArea area,
	 unsigned char *oldkey,unsigned char *newkey,int mode,unsigned char * me1,
	 unsigned char * me2,int * status, int *line);

void MCAPI  GetCode_1604(int port,unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);


#ifdef __cplusplus
}
#endif

#endif /*_1604_H_*/

#endif // USE_AT88SC1604

#ifdef USE_AT88SC1604_B

#ifndef _1604B_H_
#define _1604B_H_

//1604B is a 1604 card that is unequally divided into 4 areas.
// area1 is 1195 bytes and the other 3 is 256 bytes

#include "..\magcard.h"

/* IC Area definition */
enum ICArea {
	  /*any*/
ANY=0,
      /*head*/
FZ,IZ,SC,SCEC,CPZ, 
      /*area1*/
SC1,SC1EC,EZ1,EZ1EC,AZ1, 
      /*area2*/
SC2,EZ2,EZ2EC,AZ2, 
      /*area3*/
SC3,EZ3,EZ3EC,AZ3, 
      /*area4*/
SC4,EZ4,EZ4EC,AZ4, 
      /*tail*/
MTZ,FUSE
};

/* Functions defined below is to be used with Atmel 1604B memory card.*/
#ifdef __cplusplus
extern "C" {
#endif

int MCAPI ICread_1604B(int port, enum ICArea area,int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICreadD_1604B(int port, int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICreadEC_1604B(int port, enum ICArea area,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICwrite_1604B(int port,enum ICArea area, int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICwriteD_1604B(int port,int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICerase_1604B(int port,enum ICArea area, int address, int datalen,
	 unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICeraseD_1604B(int port,int address, int datalen,
	 unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICoverwrite_1604B(int port,enum ICArea area, int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int  MCAPI ICoverwriteD_1604B(int port, int address, int datalen,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI  ICfuse_1604B(int port,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI  ICPassword_1604B(int port,enum ICArea area,
	 unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI  ICChangePassword_1604B(int port,enum ICArea area,
	 unsigned char *oldkey,unsigned char *newkey,int mode,unsigned char * me1,
	 unsigned char * me2,int * status, int *line);

void MCAPI  GetCode_1604B(int port,unsigned char *data,int mode,unsigned char * me1,unsigned char * me2,
	int * status, int *line);


#ifdef __cplusplus
}
#endif

#endif /*_1604B_H_*/

#endif // USE_AT88SC1604_B

#ifdef USE_AT88SC1608

#ifndef _1608_H_
#define _1608_H_


#include <windows.h>
/* IC Area definition */
enum ICArea1608 {
	  
ZZ_ANY=0, /*whole configuration area*/
	Z_FAB,      /*fabrication area*/
		ATR/*answer to reset*/,LHC/*Lot History Code*/,FC/*Fab Code*/,CMC/*Card Manufacturer Code*/,
	Z_ACCESS,      /*access area*/
		AR0,AR1,AR2,AR3,AR4,AR5,AR6,AR7,
	Z_AUTH,      /*authentication area*/
		AAC,Nc/*Identification Numer*/,Ci/*Cryptogram*/ ,
	Z_SECRET,     /*secret area*/
		Gc,      /*secret seed*/
	Z_TEST,     /*test area*/
	Z_PASS,      /*passwords area*/
		WPAC0,WPW0,RPAC0,RPW0,
		WPAC1,WPW1,RPAC1,RPW1,
		WPAC2,WPW2,RPAC2,RPW2,
		WPAC3,WPW3,RPAC3,RPW3,
		WPAC4,WPW4,RPAC4,RPW4,
		WPAC5,WPW5,RPAC5,RPW5,
		WPAC6,WPW6,RPAC6,RPW6,
		WPAC7,WPW7,RPAC7,RPW7,
	Z_USER      /*user zone*/
};

/* Functions defined below is to be used with Atmel 1608 memory card.*/
#ifdef __cplusplus
extern "C" {
#endif

int MCAPI ICInitAuth_1608(int port,unsigned char *data,
	unsigned char * me1,unsigned char * me2,int * status, int *line);

int MCAPI ICVerifyAuth_1608(int port,unsigned char *data,
	unsigned char * me1,unsigned char * me2,int * status, int *line);

void MCAPI SetInit_1608(unsigned char Ci[8],unsigned char Gc[8],unsigned char Q0[8]);

void MCAPI Auth_1608(unsigned char q1[8],unsigned char q2[8]);

int  MCAPI ICSetUserZone_1608(int port,int zone,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICReadUserZone_1608(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICReadCfg_1608(int port, enum ICArea1608 area,int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICWriteUserZone_1608(int port,int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICWriteCfg_1608(int port,enum ICArea1608 area, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICReadFuse_1608(int port,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICWriteFuse_1608(int port,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICWriteCMAFuse_1608(int port,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICWritePERFuse_1608(int port,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICPassword_1608(int port,enum ICArea1608 area,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);


#ifdef __cplusplus
}
#endif

#endif /*_1608_H_*/

#endif // USE_AT88SC1608

#ifdef USE_AT24C01

#ifndef _2401_H_
#define _2401_H_

#include <windows.h>

/* Functions defined below is to be used with ATMEL 2401 memory card.*/
#ifdef __cplusplus
extern "C" {
#endif

int MCAPI ICread_2401(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICwrite_2401(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

#ifdef __cplusplus
}
#endif

#endif  /* _2401_H_ */

#endif // USE_AT24C01

#ifdef USE_AT24SC02

#ifndef _2402_H_
#define _2402_H_

#include <windows.h>

/* Functions defined below is to be used with ATMEL 2402 memory card.*/
#ifdef __cplusplus
extern "C" {
#endif

int MCAPI ICread_2402(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICwrite_2402(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

#ifdef __cplusplus
}
#endif

#endif  /* _2402_H_ */

#endif // USE_AT24C02

#ifdef USE_AT24C04

#ifndef _2404_H_
#define _2404_H_

#include <windows.h>

/* Functions defined below is to be used with ATMEL 2404 memory card.*/
#ifdef __cplusplus
extern "C" {
#endif

int MCAPI ICread_2404(int port, int address, int datalen,
	unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICwrite_2404(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

#ifdef __cplusplus
}
#endif

#endif  /* _2404_H_ */

#endif // USE_AT24C04

#ifdef USE_AT24C08

#ifndef _2408_H_
#define _2408_H_

#include <windows.h>

/* Functions defined below is to be used with ATMEL 2408 memory card.*/
#ifdef __cplusplus
extern "C" {
#endif

int MCAPI ICread_2408(int port, int address, int datalen,
	unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICwrite_2408(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

#ifdef __cplusplus
}
#endif

#endif  /* _2408_H_ */

#endif // USE_AT24C08

#ifdef USE_AT24C16

#ifndef _2416_H_
#define _2416_H_

#include <windows.h>

/* Functions defined below is to be used with ATMEL 2416 memory card.*/
#ifdef __cplusplus
extern "C" {
#endif

int MCAPI ICread_2416(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICwrite_2416(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

#ifdef __cplusplus
}
#endif

#endif  /* _2416_H_ */

#endif // USE_AT24C16

#ifdef USE_AT24C32

#ifndef _2432_H_
#define _2432_H_

#include <windows.h>

/* Functions defined below is to be used with ATMEL 2432 memory card.*/
#ifdef __cplusplus
extern "C" {
#endif

int MCAPI ICread_2432(int port, int address, int datalen,
	unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

int MCAPI ICwrite_2432(int port, int address, int datalen,
	 unsigned char *data,unsigned char * me1,unsigned char * me2,
	int * status, int *line);

#ifdef __cplusplus
}
#endif

#endif  /* _2432_H_ */

#endif // USE_AT24C32

#ifdef USE_AT24C64

#ifndef _2464_H_
#define _2464_H_

⌨️ 快捷键说明

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