《VS2010之MFC串口通信的编写教程》.doc

《VS2010之MFC串口通信的编写教程》.doc

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VS2010之MFC串口通信教程 说明:本人也是刚刚入门MFC,参照一些资料和源代码就实验做了这么一个串口通信工具!资料来源主要有鸡啄米博客网站,里面有详细的学习教程!网上的VS2010源代码都比较少,建议大家先理解一个源代码的构架和结构再深入学习!本文档可以一步一步教你从建立工程到实验调试,是一个非常完整的教程!非常适合新手练习! ——贺州学院大学生创新基地实验室 在制作串口通信所遇到的问题:编辑框的滚动条不会随着数据的更新保持在最后一行! 接下来我们开始讲解MFC串口通信的制作: 打开VS2010软件,然后新建一个项目,如下图所示; 我们要用到就是对话框模块,所以选择如下图所示 最大化框最好别选,因为本人现在也没搞出来; 点击完成就新建好一个工程了,等资源就绪之后我们就可以进行制作了; 我们可以看到就绪之后的界面如下图所示,按照步骤把原来的静态文本框和确定按钮、取消按钮删掉; 二、为我们的对话框添加控件 添加两个组合边框,并放置好位置; 修改组合边框显示的名称; 在组合边框里面添加编辑文本框; 在这一步一定要小心选择右边的属性; 这一步是把串口控件添加到对话框中来; 选择我们需要的串口控件如下图所示; 三、为编辑框,Combox框,串口控件添加变量; 四、为按钮和串口控件添加程序函数 void C串口V2Dlg::OnBnClickedButtonOpen()//打开串口按钮程序 { // TODO: 在此添加控件通知处理程序代码? CString str,str1,n; //定义字符串 GetDlgItemText(IDC_BUTTON_OPEN,str); CWnd *h1; h1=GetDlgItem(IDC_BUTTON_OPEN); //指向控件的caption if(!m_mscom.get_PortOpen()) { m_comb2.GetLBText(m_comb2.GetCurSel(),str1);//取得所选的字符串,并存放在str1里面 str1=str1+,+n+,+8+,+1; //这句话很关键 m_mscom.put_CommPort((m_comb1.GetCurSel()+1)); //选择串口 m_mscom.put_InputMode(1); //设置输入方式为二进制方式 m_mscom.put_Settings(str1); //波特率为(波特率组á合框)无校验,8数据位,1个停止位 m_mscom.put_InputLen(1024); //设置当前接收区数据长度为1024 m_mscom.put_RThreshold(1); //缓冲区一个字符引发事件 m_mscom.put_RTSEnable(1); //设置RT允许 m_mscom.put_PortOpen(true); //打开串口 if(m_mscom.get_PortOpen()) { str=_T(关闭串口); UpdateData(true); h1-SetWindowText(str); //改变按钮名称为‘’关闭串口” } } else { m_mscom.put_PortOpen(false); if(str!=_T(打开串口)) { str=_T(打开串口); UpdateData(true); h1-SetWindowText(str); //改变按钮名称为打开串口 } } } void C串口V2Dlg::OnBnClickedButtonSend()//发送数据按钮程 { // TODO: 在此添加控件通知处理程序代码? UpdateData(true); //更新控件数据 m_mscom.put_Output(COleVariant(m_Editsend));//把发送编辑框的数据发送出去 } void C串口V2Dlg::OnBnClickedButtonClean()//清除数据按钮程序 { // TODO: 在此添加控件通知处理程序代码 m_EditReceive=_T(); //给接收编辑框发送空格符 UpdateData(false); //更新数据 } void C串口V2Dlg::OnBnClickedButtonClose()//退出按钮程序 { // TODO: 在此添加控件通知处理程序代码 if(m_mscom.get_PortOpen()) m_mscom.put_PortOpen(false); CDialogEx::OnCancel(); } voi

文档评论(0)

OnlyOne + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档