自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(707)
  • 资源 (17)
  • 问答 (3)
  • 收藏
  • 关注

原创 C#上位机框架免费开源,这框架简直逆天!

马工给大家写了一个C#上位机软件框架,包含配方管理、权限管理、日志管理、等功能,该框架已经上传Gitee,给初学者一些参考,大家可以免费下载!

2025-04-16 21:07:12 5446 2

原创 手把手教你从入门到精通C#与PLC通信

本文是C#与PLC通信专栏的导读,详细介绍了本专栏将会介绍C#与哪些PLC进行通信,是C#与PLC通信不可多得的实战经验教材!

2024-08-07 23:19:20 9811 2

原创 手把手教你从入门到精通C# 操作MySql数据库

本文是《C#操作MySql数据库从入门到精通》专栏的导读,帮助大家知道学习本专栏能够获取什么!

2024-06-09 15:20:36 1926

原创 手把手教你从入门到精通C# MES通信

本文是C#与MES通信通信的目录,使用C#与各种MES系统通信的方法我都会在专栏中讲到,比如WebService、Http、Ftp、共享文件夹、串口通信等,绝对是上位机软件工程师实现与MES系统通信的必备教程!

2024-04-05 17:57:19 8730 3

原创 手把手教你从入门到精通C# Socket通信

本文以我开发的TCP/UDP调试助手为例,详细介绍《C#Socket通信从入门到精通》专栏的目录内容,本专栏由一个高级工程师多年实战经验总结,绝对是C# TCP/UDP通信的葵花宝典!带您从入门到精通C#TCP/UDP通信!

2024-01-17 23:16:03 7845 13

原创 手把手教你从入门到精通C# Modbus通信

本文是《Modbus通信从入门到精通》的导读,本专栏将会详细介绍ModusRTU 、ModbusASCII、ModbusTCP这三种协议的C#实现,由一个高级工程师多年实战经验总结而成,绝对干货!

2023-05-25 21:03:22 16541 38

原创 手把手教你从入门到精通C#串口通信

本文以我开发的串口助手SComTool为例,详细介绍《C#串口通信从入门到精通》专栏的目录内容,本专栏由一个高级工程师多年实战经验总结,绝对是c#串口通信的葵花宝典!带您从入门到精通C#串口通信!

2021-08-26 16:25:37 30637 60

原创 手把手教你写上位机软件(c#、winform)

上位机软件模板

2020-12-24 15:42:23 74560 32

原创 手把手教你做学生信息管理系统——数据库设计(MySql)

一、需求整理系统功能设计在本系统的设计中,主要实现如下一些功能:增加记录、修改记录、删除记录、使用学号查询。学生记录包括:学号、姓名、性别、专业、出生年月、联系电话。界面要求欢迎界面、登录界面、管理界面。...

2020-09-22 19:39:02 49159 2

原创 C#异步编程汇总

C#异步编程汇总

2026-11-06 19:55:34 3

原创 C#串口通信从入门到精通(31)——丢包解决

开发串口通信程序时,如果发送端发送的数据特别快,接收端接收的比较慢的情况下,就会导致部分数据来不及接收从而丢失,本文就来讲解如何解决这个数据丢失问题

2026-11-06 11:57:44 2

原创 C#串口通信从入门到精通(30)——粘包/分包/半包解决之固定长度法

在开发串口通信程序时,我们常常会遇到这样的情况:单片机或传感器发送数据的速度特别快,假设一帧数据只有 3 个字节,而上位机一次性就接收到了 6 个字节;又或者发送速度特别慢,一帧数据有 8 个字节,我们却分多次才收齐这 8 个字节。这样一来,我们就无法顺利解析收到的数据。在之前的文章中,我介绍了用结束符法解决粘包问题,但这种方法在数据本身含有结束符时就无能为力了。本文讲解另一种更强大的方案——固定长度法,来解决这个问题。

2026-10-31 11:59:47 17

原创 C#串口通信从入门到精通(29)——粘包/分包/半包解决之结束符法

我们在开发串口通信程序时,有时候会遇到比如单片机或者传感器发送的数据速度特别快,假设一帧数据是3个字节,但是我们使用上位机一次性接收了6个字节;或者发送数据特别慢,一帧数据8个字节,我们分多次收到这8个字节,这样我们就没办法顺利的解析收到的数据。

2026-10-30 20:52:21 13

原创 halcon实战-圆测量

我们有时候需要对圆的圆心位置以及圆的半径进行测量,尤其是对圆形标定板上的圆心坐标和圆半径进行计算时就需要使用圆测量,本文就来讲解Halcon中的圆测量

2026-10-29 17:59:31 201

原创 C#上位机项目实战——控制弹出winform窗体的位置

在 WinForm 开发中,我们经常需要控制弹出窗体的显示位置,控制这个显示位置的关键在于理解窗体的 `StartPosition` 属性。该属性是一个枚举类型,共包含 5 个取值,不同的取值决定了窗体弹出时所处的位置,本文就来详解介绍这5种不同情况。

2026-10-27 20:52:33 134 1

原创 C#上位机项目实战——exe项目调试更改dll中源代码

我们有时候自己封装了一个C#的dll,然后引用了这个dll里面的方法,当我们发现这个方法有问题的时候,可以通过一些手段进入到这个dll的方法中进行单步调试,从而找到错误的原因,本文使用的是Visual Studio2019

2026-10-21 20:36:54 123

原创 C#上位机项目实战——上位机与汇川H5U系列PLC通信

汇川PLC在工业自动化领域的使用率越来越高,所以从事上位机掌握与汇川PLC的通信成为了必须要掌握的技能,本文讲解如何在没有真实PLC的情况下搭建仿真测试环境,以及如何使用马工开发的专用与PLC通信的MgCommunication通信库实现数据读写

2026-10-15 10:12:43 178 1

原创 SunnyUi——UIDataGridView用法总结

1、定义数据源类。

2026-09-22 20:59:58 88

原创 mysql中的事务

SQL 事务(Transaction)是指一组要么全部成功、要么全部失败的操作,它是保证数据一致性的核心机制,以银行转账为例:A 给 B 转 100 元,A 的账户减 100,B 的账户加 100,如果第 1 步成功、第 2 步失败,钱就凭空消失了。事务的作用就是:这两步必须一起成功,或者一起失败。

2026-09-20 09:51:35 30

原创 C#上位机项目实战——Task.Run执行带参数的方法

Task.Run方法中默认接受的是 Action 或 Func<TResult> 委托,这两种委托都是不能传递参数的,但是实际开发中我们肯定是需要调用有参数的方法,这时候就可以通过lambda闭包实现

2026-09-19 15:36:43 97

原创 halcon获取区域特征region_features

求出面积等于10000,相当于10000个像素,上面的代码中总共有100行,每行100个像素,所以总的像素个数=100*100=10000.求出周长等于294,上面的代码中轮廓上面和下面都是50个像素,距离都是49;轮廓左边和右边像素是100,距离都是99,所以最终的距离就是49。获取多个区域的多个特征时,数组先存储第1个区域的多个特征,然后存储第2个区域的多个特征,如下图所示。周长计算区域最外侧的轮廓所在的像素与像素之间的距离,2个像素距离就是1。面积计算区域总共有多少个像素。一、同时获取区域多个特征。

2026-09-12 18:42:34 232

原创 tuple_max求数组中的最大值

下面的代码中,tuple_max 就是用来求数组中的最大值的,数组a中的最大值是5,tuple_max算子有两个参数,第一个为输入的数组,第二个为输出的最大值。

2026-09-08 23:32:28 35

原创 C#上位机项目实战——参数持久化之MessagePack二进制序列化

我们开发的上位机经常需要将一些参数保存到电脑本地,从而方便下次打开软件时把上一次保存到本地电脑的参数读取出来,本文就来讲解参数持久化之MessagePack二进制序列化来实现这个功能

2026-09-02 15:22:55 261

原创 C#上位机项目实战——C#的dll项目编译时拷贝到指定目录下

上位机软件开发中,有时候需要将一个dll类型的项目编译生成的dll拷贝到一个指定的目录下,如果每次编译都需要人为的手动拷贝非常麻烦,本文就来讲解一种自动拷贝的方法,一劳永逸的解决这个问题。

2026-08-26 20:50:49 188

原创 wpf之TreeView

在wpf中TreeView是一个展示层级关系的控件,比如公司有很多部门,每个部门有很多员工,面对这种层级关系的数据,就可以使用TreeView来展示。

2026-08-16 11:57:33 231

原创 C#上位机项目实战——Modbus通信发送或读取字符串

上位机软件开发中Modbus通信是上位机软件工程师必须精通的一种通信协议,大家最常见的是使用Modbus读取bool类型、int16整数、Int32整数、float32浮点数,其实Modbus也可以发送或读取字符串,只不过实际使用的频率不高,但是也要掌握

2026-08-07 20:45:25 308

原创 线扫相机的行触发原理讲解

行触发决定了是否进行采集图像,一个行触发信号就是一个脉冲信号,有脉冲信号就采集一行图像,没有就不采集,即使给了帧触发信号。

2026-08-06 11:07:34 115

原创 线扫相机的帧触发

线扫相机的帧触发,是用来决定一张二维图像从哪一行开始采集的外部控制信号,它决定了图像采集的起始位置。

2026-08-04 23:47:29 233

原创 线扫相机的采集帧数

我们也可以使用线扫相机采集多帧图像,每一帧图像都可以指定图像高度。

2026-08-04 20:44:40 70

原创 线扫相机之采集图像高度

线扫相机采集的图像高度可以由上位机软件开发人员通过相机sdk来设置,因为线扫相机理论上可以采集无限长的图像,但是我们实际开发中都是采集指定长度的图像,多了我就不需要了。

2026-08-03 23:20:45 74

原创 线扫相机的工作原理

线扫相机由于其高精度、可检测运动物体、长度较长的物体等特性,在工业领域发挥着重要的作用。

2026-08-03 22:40:05 172

原创 C#上位机项目实战——事件实战之报警弹窗

上位机软件开发中很多新手对于C#的事件如何应用于实际项目感到无从下手,很多人对于事件的理解仅仅停留在winform的Button这些按钮的自带事件上,并不知道如何自定义事件并加以使用,本文就来讲解一种自定义事件的实际项目应用案例,在自动流程中使用事件来触发报警弹窗,让上位机新手对事件的理解更加深刻!

2026-07-23 21:06:23 191

原创 C#上位机项目实战——委托实战之更新界面日志

上位机软件开发中很多新手对于C#的委托如何应用于实际项目感到困惑,本文就来讲解一种委托的实际项目应用案例,在多线程中使用委托更新界面日志,让上位机新手对委托的理解更加深刻!

2026-07-14 17:43:05 237

原创 C#上位机项目实战——启动、停止按钮界面设计

上位机软件开发中启动和停止按钮几乎是每个上位机软件必须具备的功能,使用传统winform开发时如果仅仅给Button按钮添加文本作为启动和停止按钮,这样会让上位机软件界面开起来很丑,本文就来讲解一种美化启动、停止按钮界面的方法,该方法可以扩展到所有需要美化的按钮,为提高上位机软件的逼格提供了有效的途径!

2026-07-07 19:14:03 255

原创 C#项目中打包文件的三种方式

我们在Visual Studio 编译和打包你的项目时,如何处理文件以及将其放置在哪里,比如现在winform软件界面使用到了一些图标,我们发布项目时,是将这些图标嵌入到exe中还是如何?在vs中“生成操作”的类型决定了编译和打包你的项目的方式,本文就来讲解几种方式。

2026-05-15 20:02:06 402

原创 wpf之RadialGradientBrush径向渐变画刷

本文讲解wpf种径向渐变

2026-05-13 19:30:57 142

原创 wpf之LinearGradientBrush线性渐变

本文讲解wpf中线性渐变画刷用法

2026-05-13 19:10:26 410

原创 wpf附加事件

1)定义附加事件下面的代码中 EventManager.RegisterRoutedEvent方法注册路由事件,该方法第一个参数是“事件名称”;第二个参数是路由策略,路由策略分为冒泡、隧道、直接三种;第3个参数是委托类型,这个委托类型不是固定的,RoutedEventHandler是标准的写法;第4个参数是事件所在的类。2)定义附加属性。

2026-04-25 17:06:28 328

原创 halcon的dilation1和dilation2的区别

dilation1 和 dilation2 的核心区别在于能否指定结构元素的锚点(参考点)。dilation1:自动将结构元素的重心作为锚点。结构元素的形状决定了它的重心位置(如圆形的重心在圆心,矩形的重心在中心),这决定了膨胀的方向和效果。dilation2:允许你通过 Row、Column 参数手动指定锚点的位置,可以实现对膨胀方向的精确控制。halcon代码运行结果:结构元素:结构元素Rectangle1是一个宽为1高为10的矩形。

2026-04-23 17:46:17 208

原创 wpf路由事件

1)注册路由事件路由事件也是定义在控件自身的类当中,使用EventManager.RegisterRoutedEvent方法注册路由事件,该方法第一个参数是“事件名称”;第二个参数是路由策略,路由策略分为冒泡、隧道、直接三种;第3个参数是委托类型,这个委托类型不是固定的,RoutedEventHandler是标准的写法;第4个参数是事件所在的类。2)添加CLR事件包装器事件包装器与属性包装器类似,它是为路由事件提供一个标准的 .NET 事件访问接口,让开发者能够用熟悉的方式使用事件。

2026-04-23 10:08:17 496

本资源是大华工业相机驱动mvs软件

本资源是大华工业相机驱动mvs软件

2023-10-28

该资源可用于反编译c#的dll、c#exe程序,非常好用!

ilspy是一款可用于反编译c#代码的软件,该资源可用于反编译c#的dll、c#exe程序,非常好用!

2023-10-28

本资源是个ModbusSlave从站调试助手,可用于调试Modbus通信

本资源是个ModbusSlave从站调试助手,可用于调试Modbus通信

2023-10-28

本资源是Mysql5.7.20的安装包,以及安装手册,可用于Mysql数据库程序开发

本资源是Mysql5.7.20的安装包,以及安装手册,可用于Mysql数据库程序开发

2023-10-28

Socket调试助手,该助手可用于调试socket通信,包含socket客户端,socket服务器,udp客户端,udp服务器

Socket调试助手,该助手可用于调试socket通信,包含socket客户端,socket服务器,udp客户端,udp服务器

2023-10-28

本资源是SQLite数据库管理软件SQLiteStudio软件的安装包,该软件用于对SQLite数据库进行方便的管理

本资源是SQLite数据库管理软件SQLiteStudio软件的安装包,该软件用于对SQLite数据库进行方便的管理

2023-10-28

单例模式.zip(c#设计模式)

本压缩包含有两个demo,分别对应第2版,刘伟这本书,单例模式这一章课后习题6、7,如果问题请留言一起探讨,谢谢!

2020-04-08

c#实现不同画面之间的切换.zip

该资源是利用weifenluo控件实现不同画面的切换,不同的画面分别在不同的窗体内部编辑,互相不影响,类似HMI,经过测试没有问题,非常有用。

2020-08-18

抽象工厂方法习题4.zip

本资源是第2版,刘伟,抽象工厂方法模式中的课后习题4的demo,如有问题,请留言与本人联系,谢谢~

2020-04-10

ilspy_exe.zip

ILspy是一个开源的.net反编译软件,使用十分方便,我们可以将.net的dll或者exe文件都进行反编译,从而得到源代码,对于我们分析源程序有着非常重要的作用。

2020-03-30

log4net.config

有时候直接新建.config文件会有问题,这时候不如直接拷贝现有的文件就会没问题,具体原因未知,每个电脑的情况不一样

2020-05-14

zedgraph的dll+demo+文档.zip

zedgraph的dll+demo+开发文档,你想要的关于zedgraph的最全资料就在这里!!!ZedGraph 是一个开源的.NET图表类库, 全部代码都是用C#开发的。它可以利用任意的数据集合创建2D的线性和柱形图表。

2020-03-27

EmgucvReadImageTest.zip

利用c#建立winform工程,随后详细介绍了如何使用c#调用emgucv来实现对本地图像的读取操作! 利用c#建立winform工程,随后详细介绍了如何使用c#调用emgucv来实现对本地图像的读取操作! 利用c#建立winform工程,随后详细介绍了如何使用c#调用emgucv来实现对本地图像的读取操作!

2019-12-22

c#编写的串口助手(好东西!).zip

该资源是c#编写的串口通信的程序,包含16进制以及ascii形式的数据的发送,非常具有价值。

2020-08-26

MotionControlParameterConfig.zip

此资源是实现嵌套属性配合属性控件的demo,亲测可用,如果遇到问题,请留言与我协商,因为是本人自己花了一些时间研究出来的,所以需要积分,嘿嘿~

2020-04-21

桥接模式习题5.zip

本资源为c#设计模式第2版,刘伟,桥接模式这一章的习题5,代码为本人撰写的demo,供大家参考,如果有疑问,请留言指出,谢谢!

2020-04-18

cSharp调用c++.zip

本资源涵盖了c#调用c++的常见的案例,是本人参考了多个博客总结出来的结果,采用vs2019编写的demo,供大家参考,如有疑问请留言探讨,谢谢~

2020-04-28

简单工厂模式.zip

本资源是<C#设计模式>第2版,刘伟,简单工厂模式课后习题4、5的自己写的demo,如果有问题,请留言一起讨论

2020-04-09

ha_dllexp.opdown.com.rar

该资源用于查找c/c++写的dll中的函数列表,解决了我们拿到一个dll的时候,不知道这个dll有哪些函数的问题,非常好用,如有疑问,请留言一起探讨。

2020-04-28

建造者模式习题4.zip

此资源是<设计模式>第2版,刘伟,这本书中建造者模式,课后习题4的自己撰写的demo,仅供参考,如有问题,请留言指出。

2020-04-11

CShap判断网络是否连接成功.zip

我们开发的winform软件,有时候会需要判断网络是否连接成功,其次再执行软件的某些功能,所以我们就在程序中加入代码,首先判断网络是否连接成功,那么我们如何判断网络是否连接成功呢?我们需要访问某个网址,如果能够访问某个网址,则能说明我们的网络一定是连通的。

2020-03-27

外观模式习题4.zip

该资源是<c#设计模式>第2版,刘伟,这本书的外观模式这一节的课后习题4的自己撰写的答案,供大家参考,如有疑问,请留言一起探讨,谢谢~

2020-04-30

工厂方法模式.zip

工厂方法模式是为了解决简单工厂模式中增加新的具体产品类时,需要更改工厂类代码的问题,实现了系统对增加具体产品时的扩展开放,而对更改关闭的目的,符合开闭原则。

2020-04-10

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除