找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 34242|回复: 53
收起左侧

基于VS的C#串口通讯工具编程(详细教程)

  [复制链接]
ID:382848 发表于 2018-8-4 14:56 | 显示全部楼层 |阅读模式
基于VS的C#串口通讯工具,实现串口通讯
最近需要用到了 C#写一个上位机,因为本人非软件专业,对于电脑软件编程还算陌生,所以今天试着在 Visual Studio 2008 写了一个串口助手用来练手。在编写的过程中参考了许多网上的教程,在此对无私奉献的网友们深表感谢。依然是我一贯的作风,成果取自于网络,自当也要提供于网络,故我将这两天的学习整理成该文档,作为阶段性学习总结,也方便以后有人学习可以更方便。
废话不多说了,把今天写的这个 C#串口助手的编写记录下来吧。因为我也是刚刚接触C#两天,如果程序中有不足的地方,希望大家可以谅解,也欢迎批评指正。
串口调试小程序功能:
通过“串口设置”来设置串口的相应参数,“串口检测”可以用来检测计算机可用的串口。“发送数据”可以将“数据发送”栏中的数据通过串口发送出去。一旦串口接收到数据,则会在“数据接收”栏中显示出来,通过先前设置的“字符显示”或者“HEX 显示”来以字符显示或者以十六进制数显示。“清空数据”则可以清除“数据接收”栏以及“收据发送”栏中的所有数据。
串口调试小程序主界面:
0.png

在 Visual Studio 2008 菜单栏点击“文件”>“新建项目”,创建 Visual C#下的 Windows
窗体应用程序:
0.jpg
在窗体上添加三个“GroupBox”控件,分别将窗体分为“串口设置”、“数据接收”以及“数据发送”三部分。
添加若干“Label”和“ComboBox”分别用于串口号、波特率、停止位、奇偶校验、数据位等的设置;添加两个“RodioButton”用于字符显示和 HEX 显示的选择;添加若干“Button”用于串口检测、打开串口、清空数据以及发送数据等功能按钮;最后分别在数据接收栏和数据发送栏中各添加一个“TextBox”控件,用于数据的收发。
对各个布置好的控件进行命名,方便编程。
另外更改“字符显示”的 RodioButton 控件属性中的 Checked 为 true,使在打开程序后默认选择“字符显示”。
更改数据接收栏中的 TextBox 控件属性中的 ReadOnly 为 true,使这个空间只能显示接收到的数据,不能被编辑。
更改窗体 Form 属性中的 AcceptButton 为 btnSend(发送数据按钮的名称),使在窗体下按下回车键关联“发送数据”按钮。

0.jpg
双击控件可以在程序中添加相应代码,本程序所有代码在本文的最后粘贴出来,大家可以根据代码以及注释来学习 C#下的串口程序编写。
另外现在的多数笔记本电脑已经没有串口,我们可以购买 USB 转串口模块来学习串口。另外告诉大家一个小诀窍:为了方便软件测试,可以将串口的 RX 和 TX 用杜邦线连接,这样串口发出的信息就能被自己接收到了,仅用一个串口就能调试该软件。

0.jpg 0.png

完整的pdf格式文档51黑下载地址:
C#编写串口程序(详细教程).rar (343.66 KB, 下载次数: 1087)
回复

使用道具 举报

ID:97023 发表于 2020-1-22 12:52 | 显示全部楼层
楼主用for循环产生COM口,这样产生的COM口有很大一部分是无效的,我不知道程序中是否会在后续用户打开这些无效的COM口时还要不要进行判断,这些处理其实都很麻烦。

1.png
其实C#有更好的方法解决这个问题,那就是用foreach循环产生COM口:

2.png
这样产生的COM口,个个都是有效的。
我发现杜洋的那个上位机视频也是用楼主这个方法,在这里感觉大家接触C#的时间都不长,可能更多的是接触硬件的时间比较多,我是2002年开始用转C#编程的,当时的版本是VS2002,后来相继用过VS2003、VS2005、VS2008、VS2010、去年开始用VS2013。

评分

参与人数 1黑币 +50 收起 理由
admin + 50 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:364278 发表于 2018-8-14 19:35 | 显示全部楼层
不能用,有问题
回复

使用道具 举报

ID:386764 发表于 2018-8-17 14:02 | 显示全部楼层
可以用!下载文件修改.rar格式,如何解压就可以了
回复

使用道具 举报

ID:304849 发表于 2018-12-20 00:50 | 显示全部楼层
程序完整,但是是PDF
回复

使用道具 举报

ID:453010 发表于 2018-12-23 23:44 | 显示全部楼层
很不错,下载看看。
回复

使用道具 举报

ID:187913 发表于 2018-12-26 13:15 | 显示全部楼层
下载下来了,但是提示文件损坏,无法解压
回复

使用道具 举报

ID:121518 发表于 2018-12-26 14:06 | 显示全部楼层
我能说我下了两遍吗
回复

使用道具 举报

ID:452173 发表于 2018-12-27 20:00 | 显示全部楼层
收藏了,以后下载
回复

使用道具 举报

ID:276604 发表于 2019-3-1 15:15 | 显示全部楼层
不能用,浪费了我15积分
回复

使用道具 举报

ID:217009 发表于 2019-4-25 15:17 | 显示全部楼层
可以下载的,挺好
回复

使用道具 举报

ID:525089 发表于 2019-4-30 14:38 | 显示全部楼层
连续接收数据,怎么判断每帧呀?
回复

使用道具 举报

ID:4808 发表于 2019-5-1 18:21 | 显示全部楼层
谢谢分享!!!!!
回复

使用道具 举报

ID:539644 发表于 2019-5-16 15:07 | 显示全部楼层
接收不到数据
回复

使用道具 举报

ID:539644 发表于 2019-5-16 15:07 | 显示全部楼层
按钮的风格做出来跟你的不一样,楼主能提供VS格式 的源码吗?
回复

使用道具 举报

ID:525673 发表于 2019-5-22 12:51 | 显示全部楼层
感谢楼主分享
回复

使用道具 举报

ID:562584 发表于 2019-6-14 15:15 | 显示全部楼层

很不错,下载看看。
回复

使用道具 举报

ID:569666 发表于 2019-6-22 19:57 | 显示全部楼层
学习了  不知道 怎么弄
回复

使用道具 举报

ID:348382 发表于 2019-7-1 21:00 | 显示全部楼层
学习了
回复

使用道具 举报

ID:579394 发表于 2019-7-7 14:56 | 显示全部楼层
很棒
回复

使用道具 举报

ID:579695 发表于 2019-7-8 09:07 | 显示全部楼层
学习了,下载来看看
回复

使用道具 举报

ID:543871 发表于 2019-7-22 15:50 | 显示全部楼层
学习了,感谢
回复

使用道具 举报

ID:524609 发表于 2019-7-26 08:31 | 显示全部楼层
試試看能不能用,謝謝
回复

使用道具 举报

ID:144782 发表于 2019-7-30 14:46 | 显示全部楼层
学习了,
回复

使用道具 举报

ID:592689 发表于 2019-7-30 17:27 | 显示全部楼层
先下载试试,看看怎么样
回复

使用道具 举报

ID:410083 发表于 2019-8-7 15:23 | 显示全部楼层
学习一下,
回复

使用道具 举报

ID:410083 发表于 2019-8-7 15:23 | 显示全部楼层
修改一下格式试试能不能用
回复

使用道具 举报

ID:284433 发表于 2019-8-9 23:11 | 显示全部楼层
学习一下  
回复

使用道具 举报

ID:599362 发表于 2019-8-16 10:25 | 显示全部楼层
学习一下下,谢谢!
回复

使用道具 举报

ID:603011 发表于 2019-8-23 11:24 | 显示全部楼层
可以参考下,已下载。
回复

使用道具 举报

ID:603821 发表于 2019-8-26 11:36 | 显示全部楼层
谢谢楼主!
回复

使用道具 举报

ID:288671 发表于 2019-11-21 11:41 | 显示全部楼层
Study it only
回复

使用道具 举报

ID:558527 发表于 2019-11-25 13:34 | 显示全部楼层
学习学习,谢谢
回复

使用道具 举报

ID:674922 发表于 2019-12-26 20:49 | 显示全部楼层
把代码弄下去就可以测试吗
回复

使用道具 举报

ID:674922 发表于 2019-12-26 20:57 | 显示全部楼层
楼主在吗?
回复

使用道具 举报

ID:447337 发表于 2020-1-4 17:48 | 显示全部楼层
是个pdf文件,需要自己敲一下出来
回复

使用道具 举报

ID:447337 发表于 2020-1-5 09:58 | 显示全部楼层
敲完试了下有些缺失,搞好先后顺序就没问题了
回复

使用道具 举报

ID:683714 发表于 2020-1-9 17:00 | 显示全部楼层
很不错,下载看看
回复

使用道具 举报

ID:685573 发表于 2020-1-14 17:54 | 显示全部楼层
对于新手的我来说,这个教程太有用了
回复

使用道具 举报

ID:685573 发表于 2020-1-14 17:54 | 显示全部楼层
开到想要的教程了
回复

使用道具 举报

ID:687464 发表于 2020-1-19 23:31 | 显示全部楼层
感谢分享,学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表