?? port.h
字號:
// Port.h: interface for the CPort class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_PORT_H__EA70F052_D6AE_11D3_841C_0000B4B5BC6E__INCLUDED_)
#define AFX_PORT_H__EA70F052_D6AE_11D3_841C_0000B4B5BC6E__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CPort
{
public:
BOOL SetMark(BOOL bMark=TRUE);
//返回端口狀態,是否已經初始化
BOOL Inited();
//清緩存
void ClearBuffer();
//從端口讀一個字符,如果沒有則等到有為止
BOOL WaitChar(unsigned char * pCharData);
//從端口讀nNumToRead個字符,存在以pDataAddr為首地址的緩存中
//m_nWait表示輸入緩存中如果沒有足夠的數據,等待時間的長度
BOOL ReadData(LPVOID pDataAddr,DWORD nNumToRead,UINT m_nWait=500);
//從端口讀一個字符,cReadData接收字符,cParity接收第九位,nWait-如果緩沖中沒有字符,等待時間的長度
BOOL ReadChar(unsigned char *cReadData,UINT nWait=100);
//往端口寫字符,cWriteData為要寫字符的指針
BOOL WriteChar(unsigned char cWriteData);
//往端口寫字符串,nNumToWrite為要寫字符串的長度,pDataAddr為字符串首地址
BOOL WriteData(LPVOID pDataAddr,DWORD nNumToWrite);
//初始化端口
BOOL Init1(UINT portnr,DWORD dwCommEvents,UINT writebuffersize);
BOOL InitPort(UINT portnr,DCB &dcb,DWORD dwCommEvents,UINT writterbuffersize);
BOOL InitPort(UINT portnr,UINT baud,char parity,UINT databits,UINT stopbits,DWORD dwCommEvents,UINT writebuffersize);
CPort();
virtual ~CPort();
protected:
//端口是否已經初始化了
BOOL m_bInited;
//同步變量
OVERLAPPED m_ov;
// DCB m_dcb;
//端口句柄
HANDLE m_hComm;
COMMTIMEOUTS m_CommTimeouts;
//端口號
UINT m_nPortNr;
//寫緩存
char* m_szWriteBuffer;
DWORD m_dwCommEvents;
DWORD m_nWriteBufferSize;
};
#endif // !defined(AFX_PORT_H__EA70F052_D6AE_11D3_841C_0000B4B5BC6E__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -