串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]本人所在铁人战队的实验室同学们主要从事单片机的编程开发。但比赛和项目过程中,常常都需要与机器人进行人机交互。虽然实验室常用的HMI串口屏能满足我们的基本需求,但没东西在手的时候,就是个难题了。所以本文则介绍一下使用visualstudio软件,进行C#上位机软件的开发入门。以同学们常用的串口助手(简洁版)为例,来着手进行学习和入门。由于笔者知识有限,且是第一次写博客,有不足或错误之处,还…

大家好,又见面了,我是你们的朋友全栈君。

 

本人所在铁人战队的实验室同学们主要从事单片机的编程开发。但比赛和项目过程中,常常都需要与机器人进行人机交互。虽然实验室常用的HMI串口屏能满足我们的基本需求,但没东西在手的时候,就是个难题了。所以本文则介绍一下使用visual studio软件,进行C#上位机软件的开发入门。 以同学们常用的串口助手(简洁版)为例,来着手进行学习和入门。由于笔者知识有限,且是第一次写博客,有不足或错误之处,还请大家指出,方便修改。

1.工程的建立

    打开vs软件 -》  左上角 “文件”选项  -》 新建  -》 项目 ,弹出对话框如下:

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

 点击visual c# 选项卡   -》 1. 选择  Windows 桌面  -》 2.选择Windows 窗体应用(.NET framework)

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

 

1.编辑项目名称  – 》 2.定义项目储存位置   -》  3. 框架修改为.NET Framework 4.5   -》 最后单击确定

注意: 框架4.0以下,不能在Windows xp系统中运行。

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

至此,工程项目已经创建好,如下图所示:

此时,单击工具栏中的 “启动”按钮,可以看见debug下的调试窗口。像windows普通窗口一样,可以拖动,点击右上方关闭按钮可以关闭并退出调试。

同时窗体也可以用鼠标对准其边线,调整窗口的大小,以满足用户的需求,试一试!!

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

 

 

2.软件的图形化窗体设计

  串口助手(简洁版)相关的图形化窗体设计,我们需要用到  “工具箱 ” ,如“果在工程中没有找到 “工具箱”窗口,可以在软件上方菜单栏    “ 视图” -》 “工具箱” 中,进行打开。

工具箱中我们常用到三个部分,分别是 公共控件容器 组件 选项卡。

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

第一 ,添加标号控件 选择   工具箱  -》  公共控件  -》 Label  (标号控件),单击选择到窗体中(先单击控件名称,再单击窗口助手窗体空白处)。然后对准图标,点击鼠标右键,选择 ‘属性’,弹出属性窗口,可设置控件相关属性。大家可以自己去尝试更改属性看看效果,不懂可以百度,亲们!

提醒:在属性窗口打开后,点击我们正在设计的串口助手窗体空白处,可设置整个窗体的属性哦!!

例如:在 Name 属性栏中,可查看标号控件名字(所有,一切的一切,控件都有自己的名字,在程序编写时会用到,最好不要去修改!

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

在  Font  属性栏中,可修改文本的字体,大小。

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

在 Text  属性栏中,可修改具体显示出来的文字。

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

按相同方法,我们设计出如下四个标号控件,布好局:

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

第二,添加下拉组合框控件  选择  工具箱 -》   公共控件   -》 comboBox(组合框控件),单击选择到窗体中。然后对准鼠标右键,选择 ‘属性’,弹出属性窗口。

在  Items  属性栏中,可添加组合框下拉菜单内容。 注:本次串口助手软件   端口组合框 会在程序中添加下拉菜单内容,不用在属性栏中手动添加。而波特率组合框  直接在属性中添加下拉菜单内容。

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

我们设计出如下窗体:

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

第三,添加单选按钮控件。  选择  工具箱 -》   公共控件   -》 RadioButton(单选按钮控件),单击选择到窗体中。在单选按钮的属性窗口中,更改单选按钮文本(Text 栏),文字大小(Font)等参数。

   注意:发送模式下的两个单选按钮为一组,接收模式下的单选按钮为另一组。为了发送和接收单选按钮相互独立,需将其划分组别,因此要引入容器控件。选择  工具箱   -》   容器    -》Panel(容器控件),将同组别单选按钮划分在一起。先放置容器控件,再往其中填入单选按钮控件,不然会被覆盖。

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

第四,添加按键控件 选择  工具箱 -》   公共控件   -》 Button(按钮控件),单击选择到窗体中。可在按钮的属性窗口中,更改单选按钮文本(Text 栏),文本大小(Font栏),背景颜色(BackColor栏)等参数。

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

第五,添加文本框控件 下面的文本框用于储存待发送数据,右边文本框用于储存串口接收到的数据。选择  工具箱    -》   公共控件   -》 TextBox(文本框控件),单击选择到窗体中。可在文本框的属性窗口中,更改为多行显示(multiline 栏)(否则无法纵向拉伸);纵向拓展或横向拓展或双向拓展(Scrollbars栏)(文本框边上有没有拖动条)

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

第六,添加串口控件  。既然要做串口助手,串口肯定是少不了的。选择  工具箱    -》   组件  -》 SerialPort(串口控件),单击选择到窗体中。这时细心的你会发现窗体中没有串口图标,不要担心,它在你的窗体下方,因为他是一个隐式(不可见的)(后台的)控件。

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

在串口的属性窗口中,我们发现可以设置波特率、串口号、停止位、校验位等参数。在这里我们保持默认值就好,下节我们会在程序中进行设置。所以亲们在这里就不用管啦,是不是很开心??

第七,添加定时器控件。有人会问为什么串口助手会用定时器,难不成是自动发送功能??答案为否。这里我们是想通过定时器做一个500ms定时周期性中断,这样就可以不停检测电脑的可用串口,然后将它放在端口的组合框控件的下拉菜单中。这样我们就不用去调用设备管理器,看咱们该调成哪个串口号了,是不是很高级!!

选择  工具箱    -》   组件  -》 Timer(定时器控件),单击选择到窗体中。他也是一个隐式控件。在定时器的属性窗口中,我们需要设置中断时间为500ms(Interval 栏);设置定时器使能(Enabled 栏)(就是软件一运行,定时器就开始工作,咱们就不用程序里再去打开他的开关了)

串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(一)[通俗易懂]

至此,可视化窗体已经做完了,我们点击 “”启动按钮“进行测试,查看具体的效果,发现按钮可以点击,组合框可以下拉,文本框可以输入字符,两组单选按钮各自工作正常。。。。。。关闭窗口。

后面我们将进入程序部分的编写,就比较难了,不过没关系,一步一步来。

未完待更。。。。。。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/138187.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • MATLAB柱状图画法(详细)

    首先先给一张柱状图,请注意,ABC三个对比的数据,是分别对应一个数组的每一列,然后贴代码figure(1)axes2=axes(‘position’,[0.1,0.1,0.86,0.8]);%这个是figure里面图的位置和大小,分别为离下边,左边的距离,还有图的高和宽bar(mse_lowhigh);set(gca,’XTickLabel’,{‘0.5′,’1’,’…

  • ConfigurationManager.ConnectionStrings 属性[通俗易懂]

    ConfigurationManager.ConnectionStrings 属性[通俗易懂]publicstaticConnectionStringSettingsCollectionConnectionStrings{get;}App.config1<?xmlversion=”1.0″encoding=”utf-8″?>2<configuration>3<startup>4&lt…

  • 实用HTML,CSS和JavaScript速查表

    实用HTML,CSS和JavaScript速查表

  • 网页音乐播放器接口

    网页音乐播放器接口1、Dewplayer音乐播放器2、我的博客首页虾米播放器代码:<embedsrc=”http://www.xiami.com/widget/0_1769834090/singlePlayer.swf”type=”application/x-shockwave-flash”width=”257″height=”33″wmode=”tra…

  • java的逻辑运算符_Java语言用条件运算符编程模板

    java的逻辑运算符_Java语言用条件运算符编程模板Java条件运算符条件运算符属于三目运算符,它的语法结构是:布尔表达式?表达式1:表达式2。它的运行原理是这样的,先判断布尔表达式的结果是true还是false,如果是true,则选择表达式1的结果作为整个表达式的结果,反之则选择表达式2的结果作为整个表达式的结果。来看一段代码:publicclassConditionalOperatorTest01{publicstaticvoidm…

  • unittest 测试框架

    unittest 测试框架一、unittest测试框架1、测试固件1.1setUp()1.2tearDown()2、unittest基本使用3、测试套件(suit)3.1测试用例执行顺序3.2忽略测试用例的执行4、断言5、HTML报告生成5.1测试报告5.2异常捕捉与错误截图5.2.1错误截图:get_scunittest是python的单元测试框架,unittest单元测试提供了创建测试用例,测试套件以及批量执行的方案。作为单元测试的框架,unittest也是可以对程序最小

    2022年10月15日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号