目录
一、上位机简介
在单片机项目开发中,上位机也是一个很重要的部分,主要用于数据显示(波形、温度等)、用户控制(LED,继电器等),下位机(单片机)与 上位机之间要进行数据通信的两种方式都是基于串口的:
USB转串口 —— 上位机和下位机通过USB转串口连接线直接相连进行数据交互
串口转WIFI(ESP8266)—— 上位机和下位机基于TCP/IP协议通过以太网或者WIFI传输数据
串口转蓝牙(HC-06)—— 不多用,暂不介绍
Windows上位机(EXE可执行程序),最早用VB语言开发,后来由于C++的发展,采用MFC开发,近几年,微软发布了基于.NET框架的面向对象语言C#,更加稳定安全,再配合微软强大的VS进行开发,效率奇高。
本文使用Visual Studio 2022作为开发环境,上位机开发主要有WPF框架与Winform框架,他们都是基于.NET框架
WPF需要C/S基础,使用XAML来构建应用UI,界面比较美观,但是内存开销大
Winform可以使用窗口控件来构建应用,比较简单易学,本文以Winform为例做一个简单的上位机。
二、C#语法
- C#语法基础:C#语言入门
- Winform学习:Windows窗体入门
三、WinForm控件
3.1 属性
在Windows窗体应用程序中右击窗体或控件,在弹出的右键菜单中 选择“属性”命令,窗体的常用属性如下表所示:
3.2 事件
在属性点击事件,常见的事件为
3.3 窗体方法
自定义的窗体都继承自 System.Windows.Form 类,能使用 Form 类中已有的成员,包括属性、方法、事件等。窗体中也有一些从 System.Windows.Form 类继承的方法,如下表所示:
3.4 常用控件
TextBox:输入文本框
常用属性:尺寸Size、单行/多行Multiline、密码输入PasswordChar、只读ReadOnly、显示/获取文本Text等
常用事件:KeyPress按下按键(常用于输出完成点击回车,box.Text取输入值,事件e.keyChar取按下哪个键)
CheckBox:复选框
常用属性:尺寸Size、显示文本Text、Checked是否勾选
常用事件:Click点击事件、CheckedChanged勾选状态改变事件
ComboBox:下拉列表(只能单选)
常用属性:
a.添加数据项:设计器编辑添加(属性->数据->Items,一行表示一个数据项)、程序手工添加(comboBox.Items.Add(“some”);)
b.其他设置:Size尺寸、Text提示文本等
常用事件:
a.获取选中的项:SelectedItem(选中项的值)、SelectedIndex(选中项的索引,-1表示未选中)
b.选项改变事件:SelectedIndexChanged
ListBox:列表框(展示数据、可单选/多选)
常用属性:SelectionMode(单选/多选模式)
a.单选模式获取选项:SelectedItem/SelectedIndex(选中项的值/索引)
b.多选模式获取选项:SelectedIndices/SelectedItems(选中项的索引集合/值集合)
c.添加数据项:设计器编辑添加(属性->数据->Items)、程序手工添加(listBox.Items.Add(“some”);)
常用事件:SelectedIndexChanged(选项改变)
Button、RadioButton、CheckBox、CheckedListBox:按钮
Label、LinkLabel:标签控件
MenuStrip:菜单栏
右键菜单栏ContextMenuStrip
状态栏菜单StatusStrip
工具栏ToolStrip
Timer:定时器,Interval设置计时时间间隔,以毫秒为单位
PictureBox:图片框
常用属性:
Image:“获取或设置图片控件中显示的图片
ImageLocation:获取或设置图片控件中显示图片的路径
SizeMode:获取或设置图片控件中图片显示的大小和位置,如果值为 Normal,则图片显不在控件的左上角;如果值为 Stretchimage,则图片在图片控件中被拉伸或收缩,适合图片的大小;如果值为AutoSize,则控件的大小适合图片的大小;如果值为 Centerimage,图片在图片控件中居中;如果值为 Zoom,则图片会自动缩放至符合图片控件的大小
dock:停靠方式
五、视频展示
5.1下面以一个简单的视频展示
按钮简单使用
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_44567668/article/details/139452809