自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (2)
  • 收藏
  • 关注

原创 [设计原则]单一职责原则

单一职责原则定义:一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中。另外一种定义方式:就一个类而言,应该仅有一个引起它变化的原因。

2023-11-10 09:51:19 69

原创 [设计原则]前言

对于面向对象软件系统设计而言,软件的可维护性和可复用性是用于衡量软件质量的两个非常重要属性。如何同时提高一个软件系统的可维护性和可复用性是面向对象设计设计解决的核心问题之一。面向对象设计的目标之一在于支持可维护性和可复用性。可维护性:软件能够被理解、改正、适应以及扩展的难易程度。可复用性:软件能够被重复使用的难以程度。在面向对象设计中,可维护性和可复用是以设计原则为基础的,每一个设计原则都蕴含着一些面向对象设计的思想。

2023-11-08 10:14:48 66

原创 蓝牙通信技术基础

一种短距离无线通信技术爱立信公司创建,如今由蓝牙技术联盟(Bluetooth Special Interest Group,简称SIG)管理。现在用的都是低功耗蓝牙 Android 4.3(API Level 18)开始引入Bluetooth Low Energy(BLE,低功耗蓝牙)在 5.0 以后才支持外设模式,

2023-10-24 16:53:36 432

原创 面向对象编程跨类访问的实现

在面向对象编程中,跨类访问通常指的是一个类的对象访问另一个类的对象的属性和方法。在C#中,跨类访问通常涉及到使用类的实例来调用其他类的方法或属性。本文介绍了五种跨类访问的基本方式,仅供参考!

2023-10-05 08:56:24 150

原创 常见的加密算法介绍

常见的加密算法可以分为可逆加密和不可逆加密两种方式。可逆加密保证数据的机密性,包括对称加密和非对称加密;不可逆加密保证数据的完整性,包括哈希算法和数字签名算法。在实际应用中,应根据具体需求选择合适的加密方式,并注意加解密速度和系统资源的平衡。

2023-08-22 16:49:11 340

原创 HALCON 新版本安装教程

HALCON是一款广泛应用于机器视觉领域的软件,具有高度的应用价值和市场占有率。本文提供了HALCON软件安装的详细步骤,包括安装向导、许可协议、安装选项选择、驱动程序选择、路径选择等步骤。对于初学者来讲,我们需要了解和学习HALCON软件的主要功能和特点,包括其支持的算法和技术、丰富的函数库、良好的性能和高度可靠性等。HALCON的用户界面清晰明了,提供类似编程语言的代码编辑器,以及许多图像处理的工具和函数。

2023-08-14 13:36:57 18461 36

原创 Socket通信方法

Socket(套接字)是一种编程接口,用于实现网络通信。它提供了一组类和方法,使开发人员能够使用协议(如TCP和UDP)在计算机网络上进行数据传输。

2023-07-24 15:26:51 430

进程间通信之共享内存C#源代码

在C#中,有多种进程间通信(Inter-Process Communication,IPC)的技术。以下是一些主要的通信方式: 1.命名管道(Named Pipes) 2.套接字(Sockets) 3.共享内存(Shared Memory) 4.信号量(Semaphore) 5.消息队列(Message Queues) 6.远程过程调用(Remote Procedure Calls, RPC) 7.Mailslot 8.报文传输协议(Message Transfer Protocol, MTP) 9.串行端口(Serial Ports) 10.内存映射文件(Memory-Mapped Files) 11.命名事件(Named Events) 12.剪贴板(Clipboard) 13.COM(Component Object Model)和DCOM(Distributed COM) 14.WCF(Windows Communication Foundation) 这些只是C#中可用的部分进程间通信技术。选择哪种技术取决于特定的需求,包括通信的复杂性、安全性、性能和可用性等因素。

2023-10-24

不同进程的窗体嵌套实现C#源代码

在许多应用程序中,一个进程(或应用程序)的窗口可以被另一个进程(或应用程序)的窗口覆盖或嵌套。这种特性通常被用于创建弹出窗口,或者当一个应用程序需要显示来自另一个应用程序的数据时。本示例是在Windows操作系统上,通过C#实现不同进程间窗体嵌套的一种方法。

2023-10-09

多线程简单应用测试C#源代码

多线程允许你同时执行多个代码路径,这可以帮助你的应用程序同时处理多个任务,提高程序的运行效率。在 C# 中,使用 System.Threading 命名空间来创建和管理多线程。 1.线程池 (Thread Pool): 线程池是用于执行异步任务的托管线程集合。当你想执行许多类似的异步任务时,使用线程池可以有效地管理资源。 2.创建新线程 (Manual Thread): 你可以使用 Thread 类来创建并管理一个新线程。但需要注意的是,手动创建线程需要更多的管理工作,包括线程的启动、停止、同步等。 3.使用任务 (Task): C# 中的 Task 类提供了一种更现代、更便捷的方式来处理异步操作。Task 是在并发编程中的一种更高级的抽象,它允许你使用 await 和 async 关键字编写异步代码,这样的代码看起来更像是同步代码。

2023-10-09

跨类跨线程访问C#源代码

在C#中,跨类跨线程访问UI线程控件是一个常见的需求。以下是几种常用的方法: 委托(Delegate):委托是一种类型,它代表一个方法,可以用来将方法作为参数传递给其他方法。 Invoke和BeginInvoke方法:在Windows Forms中,每个控件都有一个Invoke方法和一个BeginInvoke方法。 BackgroundWorker类:BackgroundWorker类是.NET Framework提供的一个用于在后台线程上执行长时间运行的操作的类。 异步编程模型:C# 5.0引入了异步编程模型,使得编写异步代码变得更加简单和直观。 Dispatcher对象:在WPF中,每个线程都有一个Dispatcher对象,它负责在该线程上分派事件和处理操作。 MVVM模式:MVVM模式是一种设计模式,特别适用于WPF应用程序。 以上是一些常见的C#跨类跨线程访问UI线程控件的技术和方法。具体使用哪种方法取决于你的应用程序的需求和架构。

2023-10-05

延时功能的实现C#源代码

在C#编程中,延时功能可以使用多种方法来实现。下面是几种常用的方法: Thread.Sleep方法:这个方法可以使当前线程暂停执行指定的时间。它接受一个表示毫秒数的参数,所以如果你想让程序延迟1秒,你可以传递1000作为参数。注意,Thread.Sleep会阻塞当前线程的执行,所以不要在UI线程上使用它,否则会导致UI线程冻结,没有响应。 Timer类:System.Timers.Timer类是一个定时器,它可以定期触发Elapsed事件。你可以在Elapsed事件处理函数中执行需要定期执行的操作。通过设置Timer的Interval属性,你可以控制触发Elapsed事件的频率。 DispatcherTimer类:这个类是专门为UI编程设计的,它也可以定期触发Elapsed事件。与System.Timers.Timer类不同的是,它可以在UI线程中执行事件处理函数,这对于需要更新界面的应用非常有用。 异步方法:在C# 8.0及更高版本中,你可以使用Task.Delay方法来实现延时功能。这是一个异步方法,它会返回一个Task对象,你可以使用await操作符来等待它完成。

2023-09-05

软件授权注册的实现C#源代码

项目: SoftActiveTest 授权测试 SoftRegister 注册机 过程: 授权:获取硬件信息——硬件信息字符变更——生成加密字符串作为激活码——写入注册表 检测:启动软件——检测注册表——验证注册表值

2023-08-25

艾卫艾(IAI Robot)伺服电缸Modbus通讯协议编程手册(中英文版)

本手册介绍了艾卫艾(IAI)伺服电缸Modbus通讯协议,对于该品牌的电缸控制提供帮助! Modbus是一种串行通讯协议,被广泛应用于工业自动化系统中。RTU(远程终端单元)是Modbus协议的一种实现方式,它使用二进制编码进行数据传输,相对于ASCII编码的ATU(ASCII终端单元),RTU具有更高的数据密度和效率。 要使用Modbus通讯协议与伺服电缸进行通信,您需要遵循以下步骤: 连接通讯线路:根据电缸的接口要求,将Modbus RTU通讯线正确连接至电缸和您的通讯控制器(如计算机)。 配置通讯参数:设置正确的波特率、数据位、停止位和奇偶校验等通讯参数。这些参数根据电缸的文档可能会有所不同。 编写Modbus RTU通讯程序:使用您所使用的通讯控制器支持的Modbus RTU编程语言(如C、C++、Python等)编写程序。您需要使用Modbus函数库来处理Modbus RTU协议的数据包。 测试通讯连接:通过发送简单的Modbus RTU读取或写入命令来测试通讯连接是否正常。 读取和写入数据:根据电缸的文档,使用Modbus RTU函数库中的函数读取和写入电缸的寄存器数据。

2023-08-17

基于ModbusRTU通讯协议的艾卫艾(IAI)伺服电缸控制C#源代码

本资源是基于ModbusRTU通讯协议编写的艾卫艾(日本品牌IAI)伺服电缸控制程序,对ModbusRTU通讯学习的实战练习或艾卫艾(日本品牌IAI)伺服电缸控制编程提供帮助。 基于Modbus RTU通讯控制是一种常见的工业通讯协议,用于在控制器和设备之间进行数据通信。使用Modbus RTU通讯控制,可以读取和写入设备寄存器的值,从而控制设备的操作和监测其状态。 要实现基于Modbus RTU通讯控制,需要完成以下几个步骤: 选择合适的通讯接口:根据设备的接口类型和规格,选择合适的通讯接口,如串口、以太网口等。 配置通讯参数:根据设备的通讯协议规范,配置通讯参数,如数据位、停止位、校验位等。 编写通讯程序:使用编程语言编写通讯程序,根据Modbus RTU协议规范进行数据读写操作。 调试和测试:在设备上进行调试和测试,确保通讯程序能够正常工作并实现预期的功能。 需要注意的是,不同的设备可能有不同的寄存器地址和寄存器类型,需要在编程时根据设备的规格进行相应的配置。同时,Modbus RTU通讯控制也需要注意数据的传输顺序和数据类型,以确保数据的正确性。

2023-08-02

Socket客户端与服务器测试C#源代码

Socket客户端与服务器测试是检查网络通信功能是否正常工作的常见方式。这种测试涉及客户端和服务器之间的实时通信,通过模拟不同的场景和数据流,可以验证客户端和服务器之间的连接、数据传输和响应能力。 以下是进行Socket客户端与服务器测试的一些说明: 建立测试环境:需要搭建一个局域网或虚拟网络环境,以便进行Socket通信测试。可以选择物理设备或虚拟机来运行测试。 选择通信协议:根据应用场景选择合适的通信协议,如TCP、UDP等。了解协议的工作原理以及相关设置,以便在测试中更好地调整参数。 编写测试用例:根据实际应用场景,编写涵盖各种操作和异常情况的测试用例,包括数据发送、接收、超时、错误处理等。 实现测试代码:使用Socket编程接口,编写客户端和服务器端的测试代码。这些代码应包含测试用例中涉及的所有操作。 运行测试:启动客户端和服务器端程序,进行实际测试。可以通过手动或自动化方式发送测试数据,并记录测试结果。 分析测试结果:根据测试结果分析客户端和服务器之间的通信质量、稳定性、可靠性等指标。对比预期结果,找出可能的问题和瓶颈。

2023-07-25

Socket客户端封装类C#源代码

C# Socket(套接字)是一种编程接口,用于实现网络通信。它提供了一组类和方法,使开发人员能够使用协议(如TCP和UDP)在计算机网络上进行数据传输。 在C#中,Socket类位于System.Net.Sockets命名空间中。通过使用Socket类,开发人员可以创建客户端和服务器端应用程序,并实现它们之间的双向通信。 使用Socket类进行网络编程的基本模式是: 创建一个Socket对象,并指定要使用的协议类型(如TCP或UDP)。 使用Socket对象连接到远程主机和端口。 使用Socket对象发送和接收数据。 关闭Socket对象,释放资源。 使用Socket类,开发人员可以创建各种类型的网络应用程序,如聊天程序、游戏、文件传输等等

2023-07-24

上位机与三菱PLC-FX5U通讯C#源代码

首先,需要下载和安装MX Component软件。可以在三菱电机的官方网站上下载最新版本的MX Component软件,并按照提示进行安装。然后打开communication Settings Unity建立连接通道。PC/IF=Ethernet;CPU Type=FX5U;Module Type=CPU module(FX5);Host(IP Address)=PLC IP地址。使用MX Component提供的API来执行各种操作,例如读取和写入PLC中的数据。

2023-07-21

凌华板卡IO调试软件C#源代码

凌华(ADLINK)板卡AMP204C\PCI7230\PCI7432等IO控制源代码,适用于自动化设备上位机IO控制编程与调试,IO调试UI界面简洁,可自定义IO表,代码逻辑简洁清晰,尤其对于自动化编程初学者参考!

2023-07-21

程序启动加载画面C#源代码

程序启动加载画面可以提供更好的用户体验,在程序启动时显示一个加载画面可以告诉用户程序正在加载,让用户知道程序正在做什么,从而避免用户长时间地等待程序启动。 此外,启动加载画面还可以用于显示一些提示信息,例如程序正在连接服务器或者正在读取数据文件等。这样可以让用户更加清楚地了解程序正在进行的操作,并且可以让用户知道程序何时已经完成加载可以开始使用。 总之,启动加载画面可以提高程序的友好性和用户体验,让用户感觉程序更加专业和可靠。

2023-02-03

文本编辑器/记事本/任务管理C#源代码

原创简单明了的文本编辑器,包含大部分文本编辑功能,按天记录保存,便于查阅管理,比系统记事本更强大,使用C#编写,对于C#编程初学者有着很大的帮助,同时也可以用作日常工作学习管理。

2017-01-05

空空如也

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

TA关注的人

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