| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 | 
							- #ifndef __CGH_Relays_H_
 
- #define __CGH_Relays_H_
 
- #include <Windows.h>
 
- #include <string>
 
- using namespace std;
 
- class CGH_Relays
 
- {
 
- private:
 
- 	/* data */
 
- 	HANDLE hCom;
 
- 	string last_error;
 
- public:
 
- 	CGH_Relays();
 
- 	~CGH_Relays();
 
- public:
 
- 	//同步方式打开串口,并配置默认信息
 
- 	bool openSyn(string serial_name, unsigned char baud_rate, unsigned char parity, unsigned char byte_size, unsigned char stop_bits);
 
- 	//同步方式打开串口(需自己配置串口参数)
 
- 	bool openSyn(string serial_name);
 
- 	//设置推荐的缓冲大小
 
- 	bool setBufferSize(DWORD inputBuff, DWORD outBuffer);
 
- 	//设置超时
 
- 	bool setTimeouts(COMMTIMEOUTS& timeouts);
 
- 	//设置串口信息
 
- 	bool setDCB(DCB& dcb);
 
- 	//刷新缓冲区
 
- 	bool purgeBuff(DWORD flags);
 
- 	//刷新缓冲区
 
- 	bool flushBuff();
 
- 	//写数据
 
- 	DWORD writeData(char* buffer, int length);
 
- 	//读数据
 
- 	DWORD readData(char* buffer, int length);
 
- 	//写字符串
 
- 	DWORD writeStr(string str);
 
- 	//关闭串口
 
- 	void closeComm();
 
- 	//判断串口是否打开
 
- 	bool isOpened();
 
- 	//得到最后一次失败的错误信息
 
- 	string getSerialLastError();
 
- 	// 打开第一路USB开关
 
- 	bool OpenUSB1();
 
- 	// 关闭第一路USB开关
 
- 	bool CloseUSB1();
 
- 	// 打开第二路USB开关
 
- 	bool OpenUSB2();
 
- 	// 关闭第二路USB开关
 
- 	bool CloseUSB2();
 
- private:
 
- 	//设置最后一次的错误信息
 
- 	void setSerialLastError(string error_msg);
 
- 	//清chu最后一次的错误信息
 
- 	void clearSerialLastError();
 
- };
 
- #endif /*__CGH_Relays_H_*/
 
 
  |