serial.h

来自「GPS电子狗数据采集、测试软件」· C头文件 代码 · 共 50 行

H
50
字号
// Serial.h

#ifndef __SERIAL_H__
#define __SERIAL_H__

#define FC_DTRDSR       0x01
#define FC_RTSCTS       0x02
#define FC_XONXOFF      0x04
#define ASCII_BEL       0x07
#define ASCII_BS        0x08
#define ASCII_LF        0x0A
#define ASCII_CR        0x0D
#define ASCII_XON       0x11
#define ASCII_XOFF      0x13

#define WM_COMM_RXSTR				WM_USER+1	// A character was received and placed in the input buffer. 

class CSerial
{

public:
	BOOL Start();
	void Stop();
	CSerial();
	~CSerial();

	BOOL Open( CWnd* pOwner, int nPort, int nBaud = 115200 );
	BOOL Close( void );

	int ReadData( void *, int );
	int SendData( const char *, int );
	int ReadDataWaiting( void );

	BOOL IsOpened( void ){ return( m_bOpened ); }

protected:
	BOOL WriteCommByte( unsigned char );
	static UINT	CommThread(LPVOID pParam);
	HANDLE m_hIDComDev;
	OVERLAPPED m_OverlappedRead, m_OverlappedWrite;
	BOOL	m_bOpened;
	BOOL	m_bThreadAlive;
	HANDLE	m_hEvent;
	char    m_inBuf[1024];
	CWnd*	m_pOwner;
	int		m_Port;
};

#endif

⌨️ 快捷键说明

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