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

📄 comport.h

📁 pelco D protocol 的一个简单实现
💻 H
字号:
// ComPort.h: interface for the CComPort class.
//
//////////////////////////////////////////////////////////////////////

#pragma once
#include "stdafx.h"
#include "atlstr.h"


#include <windows.h>

#define MAXSIZE    2048		/* GPS at most, sends 80 or so chars per message string.  So set maximum to 100 */
#define SPACE	   0x20
#define COMMA	   0x2C
#define CR         0x0d
#define LF         0x0a
#define ESC        0x1b
#define BEEP       0x07
#define NMEA_MSG_LEN         14
#define TSIP_MSG_LEN         14
#define SELECT_MSG_LEN       10
#define max_buf_size		1024

const  LPCH ErrCommPort = "Comm. port reading error";
const  DWORD  COM_OK = 0;
const  DWORD  COM_PURGE = 1;
const  DWORD  COM_REOPEN = 2;


//#define MessageMapMaxLength 245
class CComPort  
{
private:
	    CString m_comPort;
		UINT	m_baudRate;
		UINT	m_parity;
		UINT	m_byteSize;
		UINT	m_stopBit;
		UINT	m_OutxCtsFlow;
		UINT	m_OutxDsrFlow;
		char    m_tmp_buffer[max_buf_size];
		BOOL    ParseSerialPortString(char*   m_s_config);


public:

	HANDLE	m_hCom;
	CString	m_sComPort;
	CComPort();
	CComPort(char* cnfData);
	virtual ~CComPort();
	DCB GetDCB();	
	BOOL Open(void);
	BYTE com_rx(char& ch);
	BOOL Read(char* rcvBuffer, BYTE& msgLen);
	BOOL Write(LPBYTE pData, BYTE length);
	void Purge();
	void Close();
//	void HardResetGPSPort(){m_com_port->Close(); Sleep(1); m_com_port->Open();}

protected:
	BOOL	m_bPortReady;
	DCB		m_dcb;
	COMMTIMEOUTS m_CommTimeouts;

};

//#endif // !defined(AFX_COMPORT_H__AD0D66F0_D7CC_11D2_8E68_006008A8250F__INCLUDED_)

⌨️ 快捷键说明

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