




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于VS2010串口通信的快速开发1、开发环境:基于VS2010的串口通信程序,语言:c#2、方法有几个?方法1:使用SerialPort组件,“勉强”可以。方法2:使用ComY组件,绝对可以。方法3:使用ComZ控件,绝对可以。3、第一个例子(方法2)3.1、新建项目TestComY,并拖放如下控件/组件并定义其名称如下表。序号控件类型控件名称用途显示信息备注01RichTextBoxRxRichTextBox显示接收接收区02RichTextBoxTxRichTextBox输入发送数据1234567890发送区03TextBoxRxTextBox显示接收数量计数器值04TextBoxTxTextBox显示发送数量计数器值05labellabel1指示接收计数区R计数器标识06labelLabel2指示发送计数区T计数器标识07ButtonBtnClearCounter清空计数器值清零08ButtonBtnComOpen打开串口打开09ButtonBtnComClose关闭串口关闭10ButtonBtnComTx发送数据区的数据发送11ButtonBtnComRx接收并显示数据接收12comYcomY1通信组件通信服务效果图如下3.2、编写代码双击界面中的五个按钮得到如下代码。namespaceTestComY{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privatevoidBtnComTx_Click(objectsender,EventArgse){}privatevoidBtnComRx_Click(objectsender,EventArgse){}privatevoidBtnComOpen_Click(objectsender,EventArgse){}privatevoidBtnComClose_Click(objectsender,EventArgse){}privatevoidBtnClearCounter_Click(objectsender,EventArgse){}}}3.3、打开串口privatevoidBtnComOpen_Click(objectsender,EventArgse){comY1.SetPortPara("COM1",115200);comY1.Open();BtnComOpen.Enabled=false;BtnComClose.Enabled=true;}3.4、关闭串口privatevoidBtnComClose_Click(objectsender,EventArgse){comY1.Close();BtnComClose.Enabled=false;BtnComOpen.Enabled=true;}3.5、发送数据及显示发送数据量privatevoidBtnComTx_Click(objectsender,EventArgse){comY1.Send(TxRichTextBox.Text);TxTextBox.Text=comY1.TxCounterVal.ToString();}3.6、接收数据及显示接收数据量privatevoidBtnComRx_Click(objectsender,EventArgse){if(comY1.IsGotNewData()==true)RxRichTextBox.Text+=comY1.GetRxHexWithBlankString();RxTextBox.Text=comY1.RxCounterVal.ToString();}3.7、清空计数器privatevoidBtnClearCounter_Click(objectsender,EventArgse){RxTextBox.Text="";TxTextBox.Text="";comY1.RxCounterVal=0;comY1.TxCounterVal=0;}3.8、代码量实现基本功能全部代码不到50行,如下图3.8、运行效果图3.8.1、打开串口3.8.2、发送数据3.8.3、接收数据3.8.4、关闭串口点发送3.9、发送接收中文及ASCII3.9.1、打开串口修改如下privatevoidBtnComOpen_Click(objectsender,EventArgse){comY1.SetPortPara("COM1",115200);comY1.IsHexMode=false; //添加代码comY1.Open();BtnComOpen.Enabled=false;BtnComClose.Enabled=true;}3.9.2、接收代码修改如下privatevoidBtnComRx_Click(objectsender,EventArgse){if(comY1.IsGotNewData()==true){if(comY1.IsHexMode==true) //添加代码RxRichTextBox.Text+=comY1.GetRxHexWithBlankString();elseRxRichTextBox.Text+=comY1.GetRxAsciiString(); //添加代码}RxTextBox.Text=comY1.RxCounterVal.ToString();}3.9.3、运行效果图如下4、第2个例子(方法3)4.1、新建窗体工程(testComZ)及添加控件如下表序号控件类型控件名称用途显示信息备注01RichTextBoxRxBox显示接收接收区02RichTextBoxTxBox输入发送数据12345678发送区03TextBoxRxTextBox显示接收数量计数器值04TextBoxTxTextBox显示发送数量计数器值05labelLabel2指示接收计数区发送计数器标识06labelLabel3指示发送计数区接收计数器标识07ButtonbtnClean清空计数器值清零08ButtonbtnTx发送数据区的数据发送09ButtonBtnRx接收并显示数据接收10comZcomZ1通信组件通信服务效果图如下4.2、编写代码双击界面上的按钮得到如下代码namespacetestComZ{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privatevoidbtnTx_Click(objectsender,EventArgse){}privatevoidBtnRx_Click(objectsender,EventArgse){}privatevoidbtnClean_Click(objectsender,EventArgse){}}}4.3、发送数据及显示发送数据量privatevoidbtnTx_Click(objectsender,EventArgse){UInt32txcounter;comZ1.Send(TxBox.Text);txcounter=comZ1.TxCounterVal;TxTextBox.Text=txcounter.ToString();}4.4、接收数据及显示接收数据量privatevoidBtnRx_Click(objectsender,EventArgse){if(comZ1.IsGotNewData()==true){if(comZ1.IsHexMode==true)RxBox.Text+=comZ1.GetRxStringAndHexWithBlank();elseRxBox.Text+=comZ1.GetRxAsciiString();RxTextBox.Text=comZ1.RxCounterVal.ToString();}}4.5、清零计数器privatevoidbtnClean_Click(objectsender,EventArgse){comZ1.TxCounterVal=0;comZ1.RxCounterVal=0;TxTextBox.Text=comZ1.TxCounterVal.ToString();RxTextBox.Text=comZ1.RxCounterVal.ToString();}4.6、运行效果图4.6.1、打开串口4.6
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- YC/Z 602-2023烟草秸秆生物有机肥生产技术指南
- YC/T 597-2023打叶复烤生产线工艺性能测评
- 2025初三升高一数学暑假衔接讲义25讲含答案(必修一内容)3.3 函数的奇偶性
- 阿莫西林胶囊崩解时限检查侯秋苑17课件
- 考研复习-风景园林基础考研试题附参考答案详解【模拟题】
- 考研复习-风景园林基础考研试题(完整版)附答案详解
- 风景园林基础考研资料试题及参考答案详解【巩固】
- 《风景园林招投标与概预算》试题A带答案详解(完整版)
- 2023年上海市上海市松江区方松街道招聘社区工作者真题附详解
- 2025-2026年高校教师资格证之《高等教育法规》通关题库附答案详解(综合题)
- 2024-2030年中国高速公路服务区行业市场发展分析及前景趋势与投资价值研究报告
- 2023年山东省济南市中考道德与法治真题(原卷版)
- 2024-2025学年中职语文基础知识-字词解析
- HG∕T 4686-2014 液氨泄漏的处理处置方法
- 租赁国企用地合同范本
- 2024年江苏省南京玄武区八下英语期末考试试题含答案
- 2024内蒙古森工集团第二批工作人员招聘【重点基础提升】模拟试题(共500题)附带答案详解
- 城市更新暨老旧小区改造二期项目-初步设计说明书
- 黑龙江省高校毕业生“三支一扶”计划招募笔试真题2021
- 职业道德与法治 第13课《学会依法维权》第二框课件《崇尚程序正义》
- 专业技术人员年度考核情况登记表
评论
0/150
提交评论