📄 sam_demokit.~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 + -