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

📄 sam_demokit.~h

📁 矿工定位系统单端
💻 ~H
字号:
#ifndef DEMOKITH
#define DEMOKITH
#include <windows.h>
#define __EXPORT_TYPE __declspec (dllexport)
#ifndef MIF_KEYS
typedef struct _KEY
{
	unsigned char key[6];
} KEY;

#endif
#ifdef __cplusplus
extern "C" {
#endif

int    __EXPORT_TYPE WINAPI  exec_3964 (unsigned int AddrX , unsigned char len, unsigned char *out, unsigned char *lrec, unsigned char *in);
HANDLE __EXPORT_TYPE WINAPI  Comm_init (char *ComStr, char *BaudStr);
void   __EXPORT_TYPE WINAPI  Comm_close ();
int    __EXPORT_TYPE WINAPI  WriteTime(unsigned int AddrX ,unsigned char year , unsigned char month , unsigned char day , unsigned char hour , unsigned char min , unsigned char sec , unsigned char week);
int    __EXPORT_TYPE WINAPI  LED_green(unsigned int AddrX ,unsigned char led);
int    __EXPORT_TYPE WINAPI  LED_red(unsigned int AddrX ,unsigned char led);
int    __EXPORT_TYPE WINAPI  PROG_CHIP(unsigned int AddrX  );
int    __EXPORT_TYPE WINAPI  Get_Data(unsigned int AddrX ,unsigned char * data1);
int    __EXPORT_TYPE WINAPI  Get_Data_mifare(unsigned int AddrX ,unsigned char i, unsigned int j, unsigned char * data1);
int    __EXPORT_TYPE WINAPI  Get_Data_My_mifare(unsigned int AddrX ,unsigned char i, unsigned char * data1);
int    __EXPORT_TYPE WINAPI  Get_Data_Stv_mifare(unsigned int AddrX , unsigned char Day ,unsigned char i , unsigned char * data1);
//int    __EXPORT_TYPE WINAPI  Clear_Data_hand(unsigned int AddrX, unsigned int ICard_ID, unsigned int OCard_ID, unsigned int time,unsigned int fee );
int    __EXPORT_TYPE WINAPI  Clear_Data_hand(unsigned int AddrX, unsigned int ICard_ID, unsigned int OCard_ID, unsigned int time,unsigned int fee, unsigned int ICard_ID1, unsigned int OCard_ID1, unsigned int OCard_ID2 );
int    __EXPORT_TYPE WINAPI  Set_Stv_Group1(unsigned int AddrX, unsigned int ICard_ID, unsigned int OCard_ID, unsigned char time,unsigned char fee);
int    __EXPORT_TYPE WINAPI  Set_Stv2(unsigned int AddrX, unsigned int ICard_ID, unsigned int OCard_ID, unsigned char time,unsigned char fee);
int    __EXPORT_TYPE WINAPI  Configer(unsigned int AddrX ,
                                        unsigned char fee1,unsigned char Time1,unsigned char BeginTime1,
                                        unsigned char fee2,unsigned char Time2,unsigned char BeginTime2,
                                        unsigned char fee3,unsigned char Time3,unsigned char BeginTime3,
                                        unsigned char fee4,unsigned char Time4,unsigned char BeginTime4,
                                        unsigned char ChargeMode,
                                        unsigned char Run_away_Rate
                                        );
int    __EXPORT_TYPE WINAPI  Get_ParkStadue(unsigned int AddrX );
int    __EXPORT_TYPE WINAPI  Set_MeterNum(unsigned int AddrX , unsigned int MeterNum );

int    __EXPORT_TYPE WINAPI OY_CPU_reset(unsigned int AddrX );
int    __EXPORT_TYPE WINAPI OY_CPU_command2(unsigned int AddrX ,unsigned char len, unsigned char *out , unsigned char *in) ;
int    __EXPORT_TYPE WINAPI OY_CPU_command1(unsigned int AddrX ,unsigned char *out , unsigned char *in) ;

int    __EXPORT_TYPE WINAPI OY_sam_reset(unsigned int AddrX);
int    __EXPORT_TYPE WINAPI OY_sam_command2(unsigned int AddrX ,unsigned char len, unsigned char *out , unsigned char *in) ;
int    __EXPORT_TYPE WINAPI OY_sam_command1(unsigned int AddrX ,unsigned char *out , unsigned char *in) ;

int    __EXPORT_TYPE WINAPI OY_select_file(unsigned int AddrX ,unsigned int SAM_USER , unsigned int file_ID , unsigned char *in) ;
int    __EXPORT_TYPE WINAPI OY_get_challenge(unsigned int AddrX ,unsigned int SAM_USER , unsigned char Len , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_get_response(unsigned int AddrX ,unsigned int SAM_USER , unsigned char Len , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_verify(unsigned int AddrX ,unsigned int SAM_USER , unsigned char scn,unsigned char *sc , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_unlock(unsigned int AddrX ,unsigned int SAM_USER , unsigned char scn , unsigned char *sc1 , unsigned char *sc2 , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_change_pin(unsigned int AddrX ,unsigned int SAM_USER , unsigned char scn , unsigned char *sc1 , unsigned char *sc2 , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_write_key(unsigned int AddrX ,unsigned int SAM_USER , unsigned char scn,unsigned char Len,unsigned char * data1 , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_change_key(unsigned int AddrX ,unsigned int SAM_USER , unsigned char scn,unsigned char Len,unsigned char * data1 , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_external_auth(unsigned int AddrX ,unsigned int SAM_USER , unsigned char scn,unsigned char *sn , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_internal_auth(unsigned int AddrX ,unsigned int SAM_USER , unsigned char DESn,unsigned char Len,unsigned char *sn , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_erase_DF(unsigned int AddrX ,unsigned int SAM_USER );
int    __EXPORT_TYPE WINAPI OY_read_bin(unsigned int AddrX ,unsigned int SAM_USER , unsigned char P1,unsigned char P2,unsigned char Len , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_read_rec(unsigned int AddrX ,unsigned int SAM_USER , unsigned char P1,unsigned char P2,unsigned char Len , unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_write_bin(unsigned int AddrX ,unsigned int SAM_USER , unsigned char P1,unsigned char P2,unsigned char Len,unsigned char * data1,unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_write_rec(unsigned int AddrX ,unsigned int SAM_USER , unsigned char P1,unsigned char P2,unsigned char Len,unsigned char * data1,unsigned char *in);
int    __EXPORT_TYPE WINAPI OY_append_rec(unsigned int AddrX ,unsigned int SAM_USER , unsigned char P2,unsigned char Len,unsigned char * data1 , unsigned char *in);

int __EXPORT_TYPE WINAPI mifsw_request_2(unsigned char _Mode, unsigned int *_TagType);
int __EXPORT_TYPE WINAPI mifsw_anticoll(unsigned char _Bcnt, unsigned long *_Snr);
int __EXPORT_TYPE WINAPI mifsw_select(unsigned long _Snr, unsigned char *_Size);
int __EXPORT_TYPE WINAPI mifsw_authentication(unsigned char _Mode, unsigned char _SecNr);
int __EXPORT_TYPE WINAPI mifsw_authentication_2(unsigned char _Mode, unsigned char _KeyNr, unsigned char _Adr);
int __EXPORT_TYPE WINAPI mifsw_halt(void);
int __EXPORT_TYPE WINAPI mifsw_read(unsigned char _Adr, unsigned char *_Data);
int __EXPORT_TYPE WINAPI mifsw_write(unsigned char _Adr, unsigned char *_Data);
int __EXPORT_TYPE WINAPI mifsw_increment(unsigned char _Adr, unsigned long _Value);
int __EXPORT_TYPE WINAPI mifsw_decrement(unsigned char _Adr, unsigned long _Value);
int __EXPORT_TYPE WINAPI mifsw_decrement_transfer(unsigned char _Adr, unsigned long _Value);
int __EXPORT_TYPE WINAPI mifsw_restore(unsigned char _Adr);
int __EXPORT_TYPE WINAPI mifsw_transfer(unsigned char _Adr);
int __EXPORT_TYPE WINAPI mifsw_load_key(unsigned char _Mode, unsigned char _SecNr, KEY *_TKey, KEY *_NKey);
int __EXPORT_TYPE WINAPI mifsw_reset(unsigned int _Msec);
int __EXPORT_TYPE WINAPI mifsw_get_info(unsigned char *_Info);
int __EXPORT_TYPE WINAPI mifsw_set_control_bit(unsigned char _b);
int __EXPORT_TYPE WINAPI mifsw_clr_control_bit(unsigned char _b);
int __EXPORT_TYPE WINAPI mifsw_config(unsigned char _Mode, unsigned char _Baud);
int __EXPORT_TYPE WINAPI mifsw_check_write(unsigned long _Snr, unsigned char _AuthMode, unsigned char _Adr,
							 unsigned char *_Data);
int __EXPORT_TYPE WINAPI mifsw_set_port(unsigned char _port);
int __EXPORT_TYPE WINAPI mifsw_get_port(unsigned char *_port);

int __EXPORT_TYPE WINAPI mifsw_comm_check_char(unsigned char _Mode);
int __EXPORT_TYPE WINAPI mifsw_HL_authentication(unsigned char _ReqMode, unsigned long _Snr,
							 unsigned char _AuthMode, unsigned char _SecNr);
int __EXPORT_TYPE WINAPI mifsw_display(unsigned char *buf);
int __EXPORT_TYPE WINAPI mifsw_buzzer(unsigned char _j);
int __EXPORT_TYPE WINAPI mifsw_out(unsigned char _j);
int __EXPORT_TYPE WINAPI mifsw_check(void);

void	      __EXPORT_TYPE WINAPI  set_MIFS_SendNr(unsigned char number);
unsigned char __EXPORT_TYPE WINAPI  get_MIFS_SendNr(void);
unsigned char __EXPORT_TYPE WINAPI  get_MIFS_Number(void);
unsigned char __EXPORT_TYPE WINAPI  get_MIFS_DataLen(void);
unsigned int  __EXPORT_TYPE WINAPI  get_MIFS_Check(void);
unsigned long __EXPORT_TYPE WINAPI  get_MIFS_Baud(void);
HANDLE        __EXPORT_TYPE WINAPI  get_MIFS_Handle(void);
void	      __EXPORT_TYPE WINAPI  get_DLL_version(char *version);
void	      __EXPORT_TYPE WINAPI  set_base_addr(int port, int addr);
int	      __EXPORT_TYPE WINAPI  get_base_addr(int port);



#ifdef __cplusplus
}
#endif
#define _VERSION "MIFSAPI.DLL V4.00 for WINDOWS95"
#define uchar	unsigned char
#define uint	unsigned int
//=========================================

#define SETTIMEOUT(x)	   Tout=x; Ticks=GetTickCount();			// milliseconds
#define TIMEOUT		   ((GetTickCount() - Ticks) > Tout)   // TRUE or FALSE
#define	DL_LSB		   0        // UART-Register
#define	DL_MSB		   1        // - " -
#define	LCR		   3        // - " -

#define BAUD_CLK           115200L
#define DLAB               0x80
#define MODE_8N1	   0x03

//------- defines for 3964 --------------------------------------------------

#define STX	       	        0x02
#define ETX			0x03
#define DLE			0x10
#define NAK			0x15

#define CRC_PRESET	        0xFFFF
#define CRC_POLYNOM             0x1021

#define BCC_CHKBYTES	        1           // values for 'ChkBytes'
#define CRC_CHKBYTES	        2

/****************************************************************************\
* 				Error Codes
\****************************************************************************/

#define MI_OK	  				0           //Function Call OK
#define MI_NOTAGERR				(-1)        //No Card in the operating area
#define MI_CRCERR 				(-2)        //Wrong CRC recieved from the card
#define MI_EMPTY  				(-3)        //Value overflow
#define MI_AUTHERR				(-4)        //No authentication possible
#define MI_PARITYERR				(-5)        //Wrong PARITY recieved from the card
#define MI_CODEERR				(-6)        //Any other communication problem with card
#define MI_SERNRERR				(-8)        //Wrong serial number read during Anticoll
#define MI_NOTAUTHERR	                	(-10)       //Card is not authenticated
#define MI_BITCOUNTERR			        (-11)       //Wrong number of bits received from the card
#define MI_BYTECOUNTERR			        (-12)       //Wrong number of bytes received from the card
#define MI_TRANSERR				(-14)       //Any problem during the Transfer function
#define MI_WRITEERR				(-15)       //Any problem during the Write function
#define MI_INCRERR				(-16)       //Any problem during the Increment function
#define MI_DECRERR				(-17)       //Any problem during the Decrement function
#define MI_READERR				(-18)       //Any problem during the Read function

#define MI_NY_IMPLEMENTED		        (-100)

#define MI_CHK_OK				0           //Check Write:verify of data block OK
#define MI_CHK_FAILED		        	(-1)        //Any problem during Check Write
#define MI_CHK_COMPERR			        (-2)        //Check Write: Last Write Failed(compare err)

//----- additional errorcodes -----

#define MI_SERTIMEOUT			(-201)      //Serial communication TimeOut error
#define MI_SERERR			(-202)      //Serial communication error
#define MI_INITERR			(0)         //(203)Error code returned by the serial library function mifs_init()
#define MI_NO_DLE_REC			(-222)
#define MI_NO_STX_REC			(-223)
#define MI_REC_OVERFLOW			(-244)
#define MI_WRONG_REC_LEN		(-245)

/****************************************************************************\
*								Some useful defines
\****************************************************************************/

#ifndef __SRC
	#define		EXTERN
#else
	#define		EXTERN		extern
#endif


#undef  TRUE
#define TRUE		1

#undef	FALSE
#define FALSE     	0

/****************************************************************************\
* 	 	Bit Masks for MIFARE commands
\****************************************************************************/

#define IDLE						0x00
#define ALL     					0x01

#define KEYA						0x00
#define KEYB						0x04

#define KEYS						0x03
#define KEYSET0					        0x00
#define KEYSET1				        	0x01
#define KEYSET2					        0x02

#define HF						0x40

#define SER_BCC				        	0x00
#define SER_CRC16					0x01
#endif


⌨️ 快捷键说明

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