📄 d055.bmp.txt
字号:
,,定义最大数据块、XON字符和XOFF字符
#define MAXBLOCK 4096
#define XON Oxll
#define XOFF Ox13
class CTermDoc : public CDocument
{
public:
CWinThread* m_pThread;
volatile BOOL m_bConnected;
volatile HWND m_hTermWnd;
volatile HANDLE m_hPostMsgEvent;
OVERLAPPED m_osRead, m_osWrite;
volatile HANDLE m_hCom;
int m_nBaud;
int m_nDataBits;
int m_nParity;
CString m_strPort;
int m_nStopBits;
int m_nFlowCtrl;
BOOL m_bEcho;
BOOL m_bNewLine;
public:
virtual ~CTermDoc0;
void CloseConnection();
BOOL ConfigConnection0;
BOOLOpenConnection(); .
//代表辅助线程
/,串口是否连接
,/保存视图的窗口句柄
//用于WM_COMMNOTIFY淌息的事件对象
,,用于重叠读,写
/,串口句柄
,,波特率
||停止证
/,校验位
,,串口号
|| t~_LL{l/
,,流控制选项
,,是否在本地回显
//是否自动换行
,,关闭连接
,,配置串口通信参数
,,建立连接
DWORD ReadComm(char *buf,DWORD dwLength)U读串口
DWORD WriteComm(char *buf,DWORD dwLength);//写串口
}2.3.3程序调试和总结
运行程序可以得到图2-17所示的应用界面。下面再对CTermDoc类的编程思路做一个
总结。
CTermDoc类的构造函数主要完成一些通信参数的初始化工作。OnNewDocument成员
函数创建了3个事件对象,CTermDoc类的析构函数关闭串口并删除事件对象句柄。
OnFileSettings是“File”一“Settings”的命令处理函数,该函数弹出一个“串口设置”
对话框来设置通信参数。实际的设置工作由ConfigConnection函数完成,在OpenConnenction
和OnFileSettings中都会调用该函数。
OpenConnection调用成功后,线程函数Conu:nProc就歼始工作。该函数的主体是一个while
55
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -