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

📄 globals.h

📁 这是我给一个做射频卡的公司做的小程序
💻 H
字号:
#ifndef _GLOBALS_H_
#define _GLOBALS_H_

#define DllExport __declspec(dllexport)

/*
注:设备地址取值说明:0-255,其中254为广播地址(所有读卡器都可以
接收到该指令,但是只有地址为0读卡器返回执行状态),255为通用地址
(所有读卡器都可以接收到该指令,并都返回其执行状态)。以下出现的
 Addr说明都相同。
 */
//功能说明:初始化通讯端口并返回操作结果
extern "C" DllExport HANDLE __stdcall OpenCom(int nPort,long nBaudRate,
												int nParity,
												int nDataBits,int nStopBit,
												int nFlowCtl);
/*
功能说明:关闭通讯端口并释放资源
*/
extern "C" DllExport void __stdcall CloseCom(HANDLE hCom);


/*
功能说明:使读卡器设备进入或退出读标签状态。
*/
extern "C" DllExport char* __stdcall SetAntenna(HANDLE hCom,BYTE Addr, BOOL bStats);
/*
功能说明:检测感应区内的标签,返回标签的UID码
*/
extern "C" DllExport BOOL __stdcall DetectTagUID(HANDLE hCom,BYTE Addr,char* ReadUID,int &LableNum);
/*
功能说明:根据读取到的标签UID,可以任意选中或取消选中某个标签
*/
extern "C" DllExport BOOL __stdcall SelectTag(HANDLE hCom,
													  BYTE Addr, 
													  BYTE *UID, 
													  BOOL bFlag);
/*
功能说明:可以从指定的标签内读取多块存储数据
*/
extern "C" DllExport BOOL __stdcall ReadTagData(HANDLE hCom,
						BYTE Addr, BYTE Mode,BYTE *UID, 
						BYTE BlockAddr,BYTE nBlockNum,
						char *ReadData);
/*
功能说明:将指定的标签内多块存储数据设置为保护状态
*/
extern "C" DllExport char* __stdcall LockTagBlocks(HANDLE hCom, BYTE Addr, BYTE Mode,
                                    BYTE BeginBlock, BYTE Blocks, BYTE *UID);

/*
功能说明:检测单张标签数据块的写保护状态
*/
extern "C" DllExport BOOL __stdcall CheckSingleTagBlockStatus(
					HANDLE hCom,BYTE Addr, BYTE Mode, 
					BYTE *UID, BYTE BlockAddr, 
					int nBlockNum,BYTE *Stats);

/*
功能说明:返回设备信息
*/
extern "C" DllExport BOOL __stdcall DeviceInfo(HANDLE hCom, BYTE Addr,char* Sw_Rev,
						char* D_Rev,char* Hw_Type,
						char* Sw_Type,char* Tr_Type);

/*
功能说明:波特率侦测
*/
extern "C" DllExport BOOL __stdcall DetectBaud(HANDLE hCom,BYTE Addr);

/*
功能说明:该指令用于得到一个标签的UID,AFI,DSFID,数据块长度信息

*/  
extern "C" DllExport char* __stdcall GetSysInfo(HANDLE hCom,BYTE Addr, BYTE Mode, 
												BYTE *UID);

/*
功能说明:写入标签单个数据块(4个字节)
*/
extern "C" DllExport BOOL __stdcall WriteSingleBlock(HANDLE hCom,
					BYTE Addr, BYTE Mode,BYTE *UID,BYTE BlockAddr, 
					char *WriteData);


/*
功能说明:对一个或多个标签写入新的AFI值
*/
extern "C" DllExport BOOL __stdcall WriteTagAFI(HANDLE hCom, BYTE Addr, BYTE Mode,
												BYTE *UID, BYTE NewAFI);

/*
功能说明:用于锁定一个或多个标签的AFI值
*/
extern "C" DllExport BOOL __stdcall LockTagAFI(HANDLE hCom, BYTE Addr, BYTE Mode,
											   BYTE *UID);


/*
功能说明:写入一个或者多个标签新的DSFID值
*/
extern "C" DllExport BOOL __stdcall WriteTagDSFID(HANDLE hCom, BYTE Addr, BYTE Mode, 
												  BYTE *UID, BYTE NewDSFID);

/*
功能说明:锁定一个或者多个标签的DSFID值
*/
extern "C" DllExport BOOL __stdcall LockTagDSFID(HANDLE hCom, BYTE Addr, BYTE Mode, 
												 BYTE *UID);


/////////////////////////////////////////////////////////////////
//			ISO15693 定制的和私有的主机命令		    			   //
//			 这些指令包括了已经定义的定制指令		    		   //
/////////////////////////////////////////////////////////////////
//写入2块数据块(Write Two Blocks)
//第一个数据块的地址必须是偶数(如0、2...)
//只适用于缓冲模式读取Tag-it HF-1标签
extern "C" DllExport BOOL __stdcall WriteTagTwoBlocks(HANDLE hCom, BYTE Addr, BYTE Mode,
													BYTE DB_Adr, BYTE *UID, BYTE *mData);
//锁定2块数据块(Lock Two Blocks)
//该指令锁定两个块的数据。第一个数据块的地址必须是偶数(如0、2...)
//该指令只适用于缓冲模式读取Tag-it HF-1标签
extern "C" DllExport BOOL __stdcall LockTagTowBlocks(HANDLE hCom, BYTE Addr, BYTE Mode,
												  BYTE *UID, BYTE DB_Adr);

//////////////////////////////////////////////////////////////////////////
////           User define ISO Command end                        ////////
//////////////////////////////////////////////////////////////////////////

#endif

⌨️ 快捷键说明

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