【源码开源】C#桌面应用开发:串口调试助手
c#桌面应用开发
1、环境搭建和工程创建:参照番茄定时器项目
工程创建参照
2、界面布局设计

3、具体功能函数
(1)端口扫描:
private void btn_com_scan_Click(object sender, EventArgs e){//端口号扫描ReflashPortToComboBox(serialPort1, cb_select_com);}
(2)初始化界面数据设置
private void Form1_Load(object sender, EventArgs e){//第一次加载的时候,进行端口号扫描ReflashPortToComboBox(serialPort1, cb_select_com);cb_select_com.SelectedItem = "COM1";cb_select_baudrate.SelectedItem = "115200";cb_select_data_bits.SelectedItem = "8";cb_select_check_bit.SelectedItem = "None";cb_select_stop_bit.SelectedItem = "1";btn_open_com.Enabled = true;btn_close_com.Enabled = false;//默认使用 ascii模式rbtn_recv_ascii.Checked = true;rbtn_send_ascii.Checked = true;}
(3)串口接收:
private void ReceiveData(object sender, SerialDataReceivedEventArgs e){string content = serialPort1.ReadExisting(); //从串口中读取输入流,返回stringShowData(content);}private void ShowData(string text){string receiveText = text;//更新接收数据计数recv_cntr += (UInt32)receiveText.Length;lab_recv_cntr.Text = recv_cntr.ToString();textBox_debug.AppendText("接收到了"+ receiveText.Length.ToString()+ "个数据: "+ text+"\r\n");if (rbtn_recv_hex.Checked){//按HEX模式 展示接收到的内容 byte[] recData = System.Text.Encoding.Default.GetBytes(receiveText);// 将接受到的字符串据转化成数组; foreach (byte str in recData){textBox_recv.AppendText(string.Format("{0:X2} ", str));}}else{//按ASCII模式 展示接收到的内容textBox_recv.AppendText(text); //将收到的字符串追加展示出来}}
(4)按钮事件:
private void btn_open_com_Click(object sender, EventArgs e)
{Int32 ibaudrate = Convert.ToInt32(cb_select_baudrate.SelectedItem.ToString());serialPort1.PortName = cb_select_com.SelectedItem.ToString();serialPort1.BaudRate = ibaudrate;serialPort1.Parity = (System.IO.Ports.Parity)Enum.Parse(typeof(System.IO.Ports.Parity), cb_select_check_bit.Text);serialPort1.StopBits = (System.IO.Ports.StopBits)Enum.Parse(typeof(System.IO.Ports.StopBits), cb_select_stop_bit.Text);serialPort1.DataBits = Convert.ToInt16(cb_select_data_bits.Text);//添加串口事件处理serialPort1.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(ReceiveData);try{serialPort1.Open();btn_open_com.Enabled = false;btn_close_com.Enabled = true;}catch (Exception ex){MessageBox.Show("串口打开失败"+ex, "Error");}
4、完整工程代码开源
源码打包上传在CSDN,本意是不需要使用积分免费下载,如果下载时遇到收积分,联系我私发即可
相关文章:
【源码开源】C#桌面应用开发:串口调试助手
c#桌面应用开发 1、环境搭建和工程创建:参照番茄定时器项目 工程创建参照 2、界面布局设计 3、具体功能函数 (1)端口扫描: private void btn_com_scan_Click(object sender, EventArgs e){//端口号扫描ReflashPortToComboBox(…...
malloc与free函数的用法(精简全面 · 一看即懂)
前言:Hello大家好😘,我是心跳sy,今天为大家带来malloc函数与free函数的用法,我们一起来看看吧! 目录 一、malloc函数 💫 1、⭐️malloc函数对应的头文件⭐️ 2、⭐️malloc函数的作用⭐️ 3…...
强制升级最新系统,微软全面淘汰Win10和部分11用户
说出来可能不信,距离 Windows 11 正式发布已过去整整三年时间,按理说现在怎么也得人均 Win 11 水平了吧? 然而事实却是,三年时间过去 Win 11 占有率仅仅突破到 29%,也就跳起来摸 Win 10 屁股的程度。 2024 年 6 月 Wi…...
java-命令行连接 mysql
在 Java 中,通过命令行连接 MySQL 可以使用以下步骤。假设您已经安装并配置了 MySQL 5.7。 ### 一、通过命令行连接 MySQL #### 1. 打开命令行终端 在不同的操作系统上打开命令行终端的方式: - **Windows**:按 Win R 键,输入…...
RK3588部署YOLOV8-seg的问题
在使用YOLOV8-seg训练出来的pt模型转为onnx的时候,利用以下仓库地址转。 git clone https://github.com/airockchip/ultralytics_yolov8.git 在修改ultralytics/cfg/default.yaml中的task,mode为model为自己需要的内容后, 执行以下语句 cd …...
Python Linux下编译
注意 本教程针对较新Linux系统,没有升级依赖、处理旧版本Linux的openssl等步骤,如有需要可以查看往期文章,例如:在Centos7.6镜像中安装Python3.9 教程中没有使用默认位置、默认可执行文件名,请注意甄别 安装路径&#…...
SpringMVC(3)——SpringMVC注解实战
前言 SpringMVC(2)——controller方法参数与html表单对应(请求参数的绑定) 上篇博客我们提到了controller方法的参数与html表单之间的对应关系 但是这种对应关系有很多缺点: 传递参数只能放在request的body当中&am…...
统信UOS上批量安装惠普打印驱动后启动器没有图标的解决方法
原文链接:统信UOS上批量安装惠普打印驱动后启动器没有图标的解决方法 Hello,大家好啊!今天给大家带来一篇关于在统信UOS上批量安装惠普打印驱动后启动器没有设置图标的解决方法的文章。批量安装打印驱动是企业和个人用户常见的操作࿰…...
Python UDP编程之实时聊天与网络监控详解
概要 UDP(User Datagram Protocol,用户数据报协议)是网络协议中的一种,主要用于快速、简单的通信场景。与TCP相比,UDP没有连接、确认、重传等机制,因此传输效率高,但也不保证数据的可靠性和顺序。本文将详细介绍Python中如何使用UDP协议进行网络通信,并包含相应的示例…...
LiveNVR监控流媒体Onvif/RTSP用户手册-用户管理:编辑、添加用户、关联通道、重置密码、删除、过滤搜索
LiveNVR监控流媒体Onvif/RTSP用户手册-用户管理:编辑、添加用户、关联通道、重置密码、删除、过滤搜索 1、用户管理1.1、添加用户1.2、关联通道1.3、重置密码1.4、编辑1.5、删除1.6、过滤搜索 2、RTSP/HLS/FLV/RTMP拉流Onvif流媒体服务 1、用户管理 1.1、添加用户 点击用户管理…...
SpringBoot新手快速入门系列教程十:基于Docker Compose,部署一个简单的项目
前述: 本篇教程将略过很多docker下载环境配置的基础步骤,如果您对docker不太熟悉请参考我的上一个教程:SpringBoot新手快速入门系列教程九:基于docker容器,部署一个简单的项目 使用 Docker Compose 支持部署 Docker 项…...
websocket中的STOMP 协议:sockjs-client 和 stompjs
文章目录 一、简介二、安装三、创建 webSocket.ts四、页面中使用一、简介 使用 WebSockets 进行实时通信时,一种常见的实现方式是使用 STOMP 协议。STOMP(Simple Text Oriented Messaging Protocol)是一种轻量级的协议,通常用于客户端和消息代理之间的通信,如 WebSockets…...
阿里云API安全2.0全新发布
阿里云安全发布API防护产品已将近三年,为客户提供API资产全生命周期监控管理,发现和管理业务中存在的全量API接口资产,并提升API接口在数据流转过程中的安全性,现已全面覆盖OWASP提出的API TOP 10安全风险。 近期,阿里…...
学习网络的第一步:全面解析OSI与TCP/IP模型
我是小米,一个喜欢分享技术的29岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货! Hello,大家好!我是你们的好朋友小米。今天我们来聊一聊网络基础知识中的重量级选手——OSI模型和TCP/IP模型!网络的世界就像一个巨大的迷宫,而这两个…...
鸿蒙语言基础类库:【@ohos.util (util工具函数)】
util工具函数 说明: 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。开发前请熟悉鸿蒙开发指导文档:gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。 该模块…...
CVPR`24 | 又快又好!渲染速度比ENeRF快30倍!4K4D:实时4K分辨率4D视图合成
文章链接:https://arxiv.org/pdf/2310.11448 git链接: https://zju3dv.github.io/4k4d/ 本文旨在实现动态3D场景在4K分辨率下的高保真和实时视图合成。最近,一些动态视图合成方法在渲染质量方面表现出色。然而,在渲染高分辨率图像…...
中关村软件园发布“数据合规与出境评估服务平台”
在2024中关村论坛年会期间,中关村软件园发布“数据合规与出境评估服务平台”。该平台是中关村软件园结合北京市“两区”建设,立足软件园国家数字服务出口基地和数字贸易港建设,围绕园区内外部企业用户的业务合作、科研创新、跨国运营等场景需…...
记一次若依框架和Springboot常见报错的实战漏洞挖掘
目录 前言 本次测实战利用图 1.判段系统框架 2.登录页面功能点测试 2.1 弱口令 2.2 webpack泄露信息判断 2.3 未授权接口信息发现 3.进一步测试发现新的若依测试点 3.1 默认弱口令 3.2 历史漏洞 4.访问8080端口发现spring经典爆粗 4.1 druid弱口令 4.2 SwaggerU…...
Idea合并Git分支信息
#git 的笔记 ##本篇文章是通过Idea 实现git 命令操作的代码的上传与合并。 1.合并分支 点击 Git 选择Merge 这里选择合并远程的分支...
【学习css2】grid布局-页面footer部分保持在网页底部
中间内容高度不够屏幕高度撑不开的页面时候,页面footer部分都能保持在网页页脚(最底部)的方法 1、首先上图看显示效果 2、奉上源码 2.1、html部分 <body><header>头部</header><main>主区域</main><foot…...
可迪尔环境(DADAIR)造船喷涂废气治理项目验收,RTO蓄热燃烧炉厂家首选方案
在全球造船业向绿色低碳转型的浪潮中,VOCs治理成为一道绕不开的“必答题”。在船舶制造过程中,预处理线的调漆、喷漆、烘干环节会产生高浓度有机废气。选择一家技术过硬、经验丰富的造船喷涂废气治理厂家,是确保合规生产的关键。 近日&#x…...
如何5分钟快速集成PinLockView到你的Android应用:终极指南 [特殊字符]
如何5分钟快速集成PinLockView到你的Android应用:终极指南 🚀 【免费下载链接】PinLockView A clean, minimal, highly customizable pin lock view for Android 项目地址: https://gitcode.com/gh_mirrors/pi/PinLockView PinLockView 是一个专为…...
编译和链接(以Windows,VS环境下C语言为例)
编译和链接(以Windows,VS环境下C语言为例)一.什么是翻译环境和运行环境?二.翻译环境2.1预处理(预编译)2.2编译2.2.1词法分析2.2.2语法分析2.2.3语义分析2.3汇编2.4链接三.运行环境提前说明一下,虽然说我们是以Windows操作系统为例,…...
BBEdit 16 正式发布!新增百多项功能,部分用户可免费升级
产品 产品 BBEdit Yojimbo iPad 版 Yojimbo TextWrangler 支持 支持 BBEdit Yojimbo iPad 版 Yojimbo TextWrangler 产品下载 找回序列号 SDK 与开发者信息 公司书架 商店 商店 购物车 许可协议 Mac App Store 常见问题 销售政策 查找经销商 多用户许可证 联系我们 联系我们 找…...
SQL Server报错注入原理与三大稳定Payload实战
1. 报错注入不是“碰运气”,而是SqlServer的确定性行为很多人第一次听说“报错注入”时,下意识觉得这是在赌数据库会不会吐错误信息——输个单引号试试,看页面崩不崩;加个AND 1CONVERT(int, (SELECT version)),看是不是…...
锂电池健康评估:避开NASA/Oxford数据IC分析中的三个常见坑(滤波、异常值、容量增生)
锂电池健康评估实战:破解NASA/Oxford数据集IC分析的三重困局 当你在深夜盯着屏幕上那些扭曲的IC曲线时,是否也经历过这样的崩溃时刻?明明按照教科书步骤处理NASA数据集,得到的却是锯齿状的噪声图形;或是发现Oxford数据…...
modelzoo:昇腾 NPU 的“模型仓库”
modelzoo:昇腾 NPU 的“模型仓库” 之前帮朋友看模型训练的代码,发现他自己手写了很多模型(ResNet50/BERT/LLaMA2 等)——光写模型定义就写了 5,000 行,而且还不一定对。 我告诉他:不用手写,用 …...
ChatGPT生成的SQL注入漏洞代码竟通过了87%静态扫描器?安全团队紧急避坑指南(含检测脚本)
更多请点击: https://codechina.net 第一章:ChatGPT生成的SQL注入漏洞代码竟通过了87%静态扫描器?安全团队紧急避坑指南(含检测脚本) 近期,某金融企业安全团队在代码审计中发现,一段由ChatGPT生…...
AI Agent 架构设计与实现原理深度解析
AI Agent 架构设计与实现原理深度解析 摘要 本文深入解析 AI Agent 的核心架构设计、关键组件原理及主流实现模式。从 ReAct 推理循环到记忆系统设计,从工具调用机制到生产级部署考量,全面剖析构建可靠智能体的技术要点。读者将掌握 AI Agent 的底层原…...
AI辅助编程:发展现状、效率评估与未来展望
引言:AI如何重塑编程范式? 在过去的几年里,人工智能(AI)正以前所未有的速度渗透到软件开发的各个角落。从最初的代码补全工具,到如今能够理解复杂需求、生成完整函数甚至设计系统架构的智能体,AI辅助编程已经从科幻概念演变为开发者日常工作中不可或缺的“副驾驶”。它…...
