MFC COM 串口通信

最近最单片机时需要用RS232串口通信,PC端用MFC开发,现记录下关键代码,便于自己以后学习

PC端程序

   步骤:

     打开MFC,新建对话框工程

     在窗体上右键插入ACTIVEX,选择Microsoft Communications Cotrol

     选择该控件,进行类向导添加变量,新建类名称默认即可

     设控件变量名称为m_com

下面进行初始化操作:

数据发送:

void SendToSCIPort(CString str)//向串口发送字串的函数
{
    CByteArray array;
    array.RemoveAll();
 array.SetSize(str.GetLength()+1);
    for(int i=0;i<str.GetLength();i++)
  array.SetAt(i,str.GetAt(i));
 array.SetAt(str.GetLength(),'/n');
    m_com.SetOutput(COleVariant(array));
}

数据接收:

为控件添加事件,在类向导中进行操作

需要注意的是:单片机发送过来的信息,比如是个字节,但是对于PC端,这是个字节可能只触发一次OnOnCommMscomm1() 函数,也可能触发多次OnOnCommMscomm1() ,其中上述变量K即为收到的字节数,所以在通信时定义了/n表示一行结束了,触发OnOnCommMscomm1() 事件时读取字串,如果末尾不是/n表示没有结束,将接收到的内容添加到com_str中,直到程序判断出/n表示一行结束了,这样才显示接收到的内容

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值