📄 ceseries.h
字号:
// CESeries.h: interface for the CCESeries class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_CESERIES_H__B3AE6549_567E_4155_B097_80ED1C7ED220__INCLUDED_)
#define AFX_CESERIES_H__B3AE6549_567E_4155_B097_80ED1C7ED220__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
//定义串口接收数据函数类型
typedef void (CALLBACK* ONSERIESREAD)(CWnd* hnd,BYTE* buf,int bufLen);
//定义向写线程的消息常量
const CM_THREADCOMMWRITE = WM_USER+110;
class CCESeries : public CObject
{
private:
void CloseWriteThread();
void CloseReadThread();
static DWORD WINAPI WriteThreadFunc(LPVOID lparam);
static DWORD WINAPI ReadThreadFunc(LPVOID lparam);
static BOOL WritePort(HANDLE hComm,const BYTE *buf,DWORD bufLen);
//已打开的串口句柄
HANDLE m_hComm;
CWnd* m_pPortOwner;
//读写线程句柄
HANDLE m_hReadThread;
HANDLE m_hWriteThread;
//读写线程ID标识
DWORD m_dwReadThreadID;
DWORD m_dwWriteThreadID;
//读线程退出事件
HANDLE m_hReadCloseEvent;
//写线程退出事件
HANDLE m_hWriteCloseEvent;
//串口读取数据回调函数;
ONSERIESREAD m_OnSeriersRead;
public:
BOOL PrintString(CString string);
BOOL SetSeriersTimeouts(COMMTIMEOUTS CommTimeOuts);
BOOL WritePort(const BYTE *buf,DWORD bufLen);
void ClosePort();
BOOL OpenPort(CWnd* pPortOwner,UINT portNo =1,UINT baud=9600,UINT parity = NOPARITY,UINT databits = 8,UINT stopbits =0);
CCESeries();
virtual ~CCESeries();
};
#endif // !defined(AFX_CESERIES_H__B3AE6549_567E_4155_B097_80ED1C7ED220__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -