?? serialport.h
字號:
#pragma once
#define WM_COMM_BREAK_DETECTED WM_COMM_USER+1
#define WM_COMM_CTS_DETECTED WM_COMM_USER+2
#define WM_COMM_DSR_DETECTED WM_COMM_USER+3
#define WM_COMM_ERR_DETECTED WM_COMM_USER+4
#define WM_COMM_RING_DETECTED WM_COMM_USER+5
#define WM_COMM_RLSD_DETECTED WM_COMM_USER+6
#define WM_COMM_RXCHAR WM_COMM_USER+7
#define WM_COMM_RXFLAG_DETECTED WM_COMM_USER+8
#define WM_COMM_TXEMPTY WM_COMM_USER+9
class CSerialPort
{
public:
CSerialPort(void);
~CSerialPort(void);
private:
DCB m_Dcb;
UINT m_nBufferIn;
UINT m_nBufferOut;
COMMTIMEOUTS m_nTimeOut;
volatile HANDLE m_hCommu;
volatile UINT m_nPort;
OVERLAPPED m_OvlpRead;
OVERLAPPED m_OvlpWrite;
//volatile HANDLE m_comHandle;
void Init(void);
public:
void Close(void);
private:
// 記錄串口是否已經打開
bool m_bOpen;
public:
bool Open(UINT nPort,DWORD BaudRate=9600, BYTE ByteSize = 8,
BYTE Parity = NOPARITY, BYTE StopBits = ONESTOPBIT);
//call before opening the port
void InitBufferSize(UINT nBufferIn, UINT nBufferOut);
bool WriteData(BYTE* pWriteBuff, WORD nWrite);
//發送數據時將清空發送和接收數據緩沖區,
//并終止當前的發送和接收操作
DWORD ReadData(BYTE* pReadBuff, WORD nRead);
bool SetParityBit(BYTE nParity);
};
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -