d036.bmp.txt

来自「Visual C++通信编程实例」· 文本 代码 · 共 28 行

TXT
28
字号
    (3)添加串口事件消息处理函数CSerialCommDlg::OnCommMscomm0
    MSComm控件一般用事件驱动方式来从串口接收数据,也就是消息处理,当串口有事
件发生时,程序调用消息函数来处理数据。如图2-8所示,打开“MFC ClassWizard”一“Message
Maps”,在“Class name”下拉列表中选择“CserialCommDlg”,再在“Object IDs”框中选中
“IDC MSCOMM”,然后在“Messages”框中双击消息“OnComm”,或者单击选中消息“OnComm”
后,再单击“Add Function”按钮,在弹出的对话框中将函数名改为OnCommMscomm0,单击“OK”
按钮,就可以加入串口处理函数了。
    图2-8给MSComm控件添加消息函数
    串口消息的处理函数如下,请读者要注意控件引起的事件的处理方法,分别为发送、数
据到达、奇偶校验错误等事件。
void CSerialCommDlg::OnCommMscomm()
{
    UpdateData(TRUE);    //取控件的数据
    switch(m_COM.GetCommEvent(》删弋表控件引起的事件
    {
    casel://comEvSend辜件  ‘
    {
    ,,如有数据要发送,可采用以下代码:
    OnSend0;
    )
    break;    ‘
    case 2://comEvReceiv事件,有数据到达
    {
    VARIANT variant_inp;
    COleSafeArray safearray_inp;
    LONG len,k;    ‘
    BYTE rxdata[20481;,/设置BYTE数组An 8-bit integerthat is not signed.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?