📄 serial.h
字号:
// Serial.h: interface for the CSerial class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SERIAL_H__9C0F5CF8_313F_4F6C_99C4_8016F6FD4A4B__INCLUDED_)
#define AFX_SERIAL_H__9C0F5CF8_313F_4F6C_99C4_8016F6FD4A4B__INCLUDED_
#define WM_COMM_BREAK_DETECTED WM_USER+1 // A break was detected on input.
#define WM_COMM_CTS_DETECTED WM_USER+2 // The CTS (clear-to-send) signal changed state.
#define WM_COMM_DSR_DETECTED WM_USER+3 // The DSR (data-set-ready) signal changed state.
#define WM_COMM_ERR_DETECTED WM_USER+4 // A line-status error occurred. Line-status errors are CE_FRAME, CE_OVERRUN, and CE_RXPARITY.
#define WM_COMM_RING_DETECTED WM_USER+5 // A ring indicator was detected.
#define WM_COMM_RLSD_DETECTED WM_USER+6 // The RLSD (receive-line-signal-detect) signal changed state.
#define WM_COMM_RXCHAR WM_USER+7 // A character was received and placed in the input buffer.
#define WM_COMM_RXFLAG_DETECTED WM_USER+8 // The event character was received and placed in the input buffer.
#define WM_COMM_TXEMPTY_DETECTED WM_USER+9 // The last character in the output buffer was sent.
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CSerial
{
public:
BOOL WriteChar(char *buf,int nsize);
CSerial();
virtual ~CSerial();
HANDLE m_hPort; // Port handle,filled by CreateFile function.
CRITICAL_SECTION m_cs;
BOOL StartReadThread(); // Create and start a ReadThread.
void StopReadThread(); // Stop and delete a ReadThread
BOOL WriteChar(BYTE Byte);
BOOL WriteChar(char *buf);
BOOL WriteChar(LPCTSTR lpString);
BOOL ClosePort(); // Close port
BOOL InitializePort(HWND hWnd,CString PortNum,UINT Baud, CString Parity, UINT DataBits, UINT StopBits);
protected:
static DWORD WINAPI ReadThread(LPVOID lpParam); // main read thread function.
COMMTIMEOUTS m_CommTimeouts;
DCB m_dcb;
HANDLE m_hThread; // Thread handle,filled by CreateThread function
HWND m_hWnd;
private:
};
#endif // !defined(AFX_SERIAL_H__9C0F5CF8_313F_4F6C_99C4_8016F6FD4A4B__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -