C#winform上位机开发学习笔记7-串口助手的波特率参数设置功能添加

本文主要是介绍C#winform上位机开发学习笔记7-串口助手的波特率参数设置功能添加,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.功能描述

上位机与下位机进行通讯时需要用到波特率设置功能,以及尝试与下位机实体进行通讯。

2.代码部分

步骤1:串口开启按钮事件中添加代码

serialPort1.BaudRate = Convert.ToInt32(comboBox14.Text, 10);//将十进制的文本转换为32位整型赋值给串口1的波特率

步骤2:波特率参数设置复选框事件中添加代码

//波特率设置复选框事件private void comboBox14_SelectedIndexChanged(object sender, EventArgs e){serialPort1.BaudRate = Convert.ToInt32(comboBox14.Text, 10);//将十进制的文本转换为32位整型赋值给串口1的波特率}}

3.完整代码

功能关联有以下两处地方

//打开串口按钮事件private void button2_Click(object sender, EventArgs e){if (button2.Tag.ToString() == "ON"){//关闭串口try{serialPort1.Close();button2.BackgroundImage = Properties.Resources.Image_CloseSerial;button2.Tag = "OFF";textBox1.AppendText("[" + DateTime.Now.ToString("HH:mm:ss") + "]" + "->");textBox1.AppendText("手动关闭串口!\r\n");timer1.Stop();//串口关闭情况下关闭串口有效检测功能}catch{}}else //串口已关闭{//打开串口try{serialPort1.PortName = comboBox1.Text;    //端口号serialPort1.BaudRate = Convert.ToInt32(comboBox14.Text, 10);//将十进制的文本转换为32位整型赋值给串口1的波特率serialPort1.Open();                       //打开端口button2.BackgroundImage = Properties.Resources.Image_OpenSerial;button2.Tag = "ON";textBox1.AppendText("[" + DateTime.Now.ToString("HH:mm:ss") + "]" + "->");textBox1.AppendText("串口打开成功!\r\n");//WritePrivateProfileString("串口1", "端口号", comboBox1.Text, FileName);timer1.Start();}catch{serialPort1.Close();button2.BackgroundImage = Properties.Resources.Image_CloseSerial;button2.Tag = "OFF";textBox1.AppendText("[" + DateTime.Now.ToString("HH:mm:ss") + "]" + "->");textBox1.AppendText("串口打开失败!\r\n");timer1.Stop();//串口关闭情况下关闭串口有效检测功能}}}
//波特率设置复选框事件private void comboBox14_SelectedIndexChanged(object sender, EventArgs e){serialPort1.BaudRate = Convert.ToInt32(comboBox14.Text, 10);//将十进制的文本转换为32位整型赋值给串口1的波特率}}

4.测试结果

测试时注意不要用Configure Virtual Serial Port Driver虚拟串口,虚拟串口中默认两路com通讯连接,修改波特率并不影响两com之间的数据收发,故无法验证此功能。

正确方式,找到两个TTL转串口模块,TXRX通讯线交换连接,上位机使用sscom与自己开发的上位机进行串口端口绑定,进行波特率参数设置,测试不同波特率下数据收发情况,测试结果正常,此功能开发成功。

参考自B站硬件家园

这篇关于C#winform上位机开发学习笔记7-串口助手的波特率参数设置功能添加的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/636172

相关文章

苹果macOS 26 Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色

《苹果macOS26Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色》在整体系统设计方面,macOS26采用了全新的玻璃质感视觉风格,应用于Dock栏、应用图标以及桌面小部件等多个界面... 科技媒体 MACRumors 昨日(6 月 13 日)发布博文,报道称在 macOS 26 Tahoe 中

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

使用Python开发一个现代化屏幕取色器

《使用Python开发一个现代化屏幕取色器》在UI设计、网页开发等场景中,颜色拾取是高频需求,:本文主要介绍如何使用Python开发一个现代化屏幕取色器,有需要的小伙伴可以参考一下... 目录一、项目概述二、核心功能解析2.1 实时颜色追踪2.2 智能颜色显示三、效果展示四、实现步骤详解4.1 环境配置4.

MybatisPlus service接口功能介绍

《MybatisPlusservice接口功能介绍》:本文主要介绍MybatisPlusservice接口功能介绍,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录Service接口基本用法进阶用法总结:Lambda方法Service接口基本用法MyBATisP

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

C#如何去掉文件夹或文件名非法字符

《C#如何去掉文件夹或文件名非法字符》:本文主要介绍C#如何去掉文件夹或文件名非法字符的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#去掉文件夹或文件名非法字符net类库提供了非法字符的数组这里还有个小窍门总结C#去掉文件夹或文件名非法字符实现有输入字

C#之List集合去重复对象的实现方法

《C#之List集合去重复对象的实现方法》:本文主要介绍C#之List集合去重复对象的实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C# List集合去重复对象方法1、测试数据2、测试数据3、知识点补充总结C# List集合去重复对象方法1、测试数据

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.