- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
接收数据 要实现上述功能,首先要双击MSComm控件创建OnComm(),并输入代码: 接收数据 Private Sub MSComm_OnComm() Select Case MSComm.CommEvent 检验串口事件 错误处理 Case comEventOverrun 数据丢失 Text_SEND.Text = 清空发送缓冲区 Text_RECV.Text = 清空接收缓冲区 Text_SEND.SetFocus Exit Sub Case ComEventRxOver ‘接收缓冲区溢出 Text_SEND.Text = 清空发送缓冲区 Text_RECV.Text = 清空接收缓冲区 Text_SEND.SetFocus Exit Sub 接收数据 Case ComEventTxFull 发送缓冲区已满 Text_SEND.Text = 清空发送缓冲区 Text_RECV.Text = 清空接收缓冲区 Text_SEND.SetFocus Exit Sub 事件处理 Case ComEvReceive 接收缓冲区内有数据 Dim str As String str = MSComm.Input 从接收队列中读入字符串 Text_RECV.Text = Text_RECV.Textstr 读出字符串送显 End Select End Sub 其他工作 完成通信的主要功能后,还需要输入程序完成其他两个按钮的功能,这两个按钮负责清除发送和接收两个文本框的内容。该部分代码内容十分简单,其代码实现如下: 清空接收文本框 Private Sub Button_RECV_C_Click() Text_RECV.Text = 清空接收文本框 Text_SEND.SetFocus End Sub 清空发送文本框 Private Sub Button_SEND_C_Click() Text_SEND.Text = 清空发送文本框 Text_SEND.SetFocus 其他工作 使用该软件实现通信效果的界面如图所示。 运行测试程序 使用VC++开发串行口通信软件 用户界面设计 初始化程序 发送数据 接收数据 其他工作 使用 Visual C++6.0(VC++6.0)开发串口通信软件的方法。 用户界面设计 新建工程步骤1 新建工程步骤2 建立新工程后界面 编辑程序界面 添加控件 最终完成界面 用户界面设计 修改程序界面用到的各个控件的属性后,要使用这些控件,还需要为其添加对应的变量。该项工作是使用ClassWizard面板来完成的。在[Member Variables]选项卡中相应控件的Control ID,MFC单击[Add Variables]按钮为相应控件添加对应变量。 ClassWizard面板 添加控件对应变量 用户界面设计 各个控件添加变量的具体设置如表所示。 控件ID 对应变量 变量类别 变量类型 IDC_EDIT_RECV m_str_recv Value CString IDC_EDIT_SEND m_str_send Value CString IDC_HEX M_hex control CButton IDC_MSCOMM m_mscomm control CMSComm 添加变量后的ClassWizard面板如图所示。 初始化程序 在VC中,需要将这部分代码添加到对话框类的OnInitDialog()函数中。 if(m_MSComm.GetPortOpen()) // 如果串口已打开,则关闭串口 m_MSComm.SetPortOpen(FALSE); m_MSComm.SetCommPort(2); // 选择COM2 if(!m_MSComm.GetPortOpen()) m_MSComm.SetPortOpen(TRUE); // 打开串口 else
您可能关注的文档
- 《研发中心能化事业部2016.8.15PTA早报》.pdf
- 《研发中心能化事业部2016.8.18PTA早报1》.pdf
- 《研发中心能化事业部2016.9.15PTA早报》.pdf
- 《研发中心能化事业部套利报告-PTA0707》.pdf
- 《研发中心能化事业部套利报告-PTA0809》.pdf
- 《研发中心能化事业部套利报告-PTA0908》.pdf
- 《研发中心能化事业部套利报告-孙道臣PTA0715》.pdf
- 《破解建筑排水用硬聚氯乙烯(PVC-U)管材GBT5836.1-2016p》.pdf
- 《破解校园MAC地址绑定》.docx
- 《硒功能化杯_4_芳烃对金属离子的识别及在PVC基质支撑液膜的传输作用》.pdf
文档评论(0)