资源简介
用C#写的一个Modbus TCP客户端程序,配合博文
http://blog.csdn.net/thebestleo/article/details/52331976
学习
代码片段和文件信息
using System;
using System.Windows.Forms;
using System.Net.Sockets;
using System.Threading;
using System.Net;
using System.Text;
namespace Modbus_TCP_Client
{
public partial class Form1 : Form
{
public Socket newclient;
public bool Connected;
public Thread myThread;
public delegate void MyInvoke(string str);
public Form1()
{
InitializeComponent();
}
private void exit_Click(object sender EventArgs e)
{
Application.Exit();
}
public void Connect()
{
byte[] data = new byte[1024];
string ipadd = serverIP.Text.Trim();//将服务器IP地址存放在字符串 ipadd中
int port = Convert.ToInt32(serverPort.Text.Trim());//将端口号强制为32位整型,存放在port中
//创建一个套接字
IPEndPoint ie = new IPEndPoint(IPAddress.Parse(ipadd) port);
newclient = new Socket(AddressFamily.InterNetwork SocketType.Stream ProtocolType.Tcp);
//将套接字与远程服务器地址相连
try
{
newclient.Connect(ie);
connect.Enabled = false;//使连接按钮变成虚的,无法点击
Connected = true;
}
catch (SocketException e)
{
MessageBox.Show(“连接服务器失败 “ + e.Message);
return;
}
ThreadStart myThreaddelegate = new ThreadStart(ReceiveMsg);
myThread = new Thread(myThreaddelegate);
myThread.Start();
timersend.Enabled = true;
}
private void connect_Click_1(object sender EventArgs e)
{
Connect();
}
private void timersend_Tick(object sender EventArgs e)
{
int isecond = 5000;//以毫秒为单位
timersend.Interval = isecond;//5秒触发一次
byte[] data = new byte[] { 0x00 0x0f 0x00 0x00 0x00 0x06 0x01 0x04 0x00 0x00 0x00 0x01 };//这里我们不讲解04功能码,所以这里用04功能码发送,防止对其他功能码演示的干扰
newclient.Send(data);
}
public void ReceiveMsg()
{
while (true)
{
byte[] data = new byte[1024];
newclient.Receive(data);
int length = data[5];
Byte[] datashow = new byte[length + 6];
for (int i = 0; i <= length + 5; i++)
datashow[i] = data[i];
string stringdata = BitConverter.ToString(datashow);//把数组转换成16进制字符串
if (data[7] == 0x01) { showMsg01(stringdata + “\r\n“); };
if (data[7] == 0x02) { showMsg02(stringdata + “\r\n“); };
if (data[7] == 0x03) { showMsg03(stringdata + “\r\n“); };
if (data[7] == 0x05) { showMsg05(stringdata + “\r\n“); };
if (data[7] == 0x06) { showMsg06(stringdata + “\r\n“); };
if (data[7] == 0x0F) { showMsg0F(stringdata + “\r\n“); };
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 39424 2016-08-27 17:39 Modbus TCP Client\.vs\Modbus TCP Client\v14\.suo
文件 20992 2016-08-27 16:00 Modbus TCP Client\Modbus TCP Client\bin\Debug\Modbus TCP Client.exe
文件 32256 2016-08-27 16:00 Modbus TCP Client\Modbus TCP Client\bin\Debug\Modbus TCP Client.pdb
文件 22688 2016-08-27 17:34 Modbus TCP Client\Modbus TCP Client\bin\Debug\Modbus TCP Client.vshost.exe
文件 490 2015-07-10 19:01 Modbus TCP Client\Modbus TCP Client\bin\Debug\Modbus TCP Client.vshost.exe.manifest
文件 8055 2016-08-27 17:38 Modbus TCP Client\Modbus TCP Client\Form1.cs
文件 27182 2016-08-27 17:38 Modbus TCP Client\Modbus TCP Client\Form1.Designer.cs
文件 6209 2016-08-27 17:38 Modbus TCP Client\Modbus TCP Client\Form1.resx
文件 3748 2016-08-21 21:49 Modbus TCP Client\Modbus TCP Client\Modbus TCP Client.csproj
文件 1608 2016-08-24 10:54 Modbus TCP Client\Modbus TCP Client\obj\Debug\DesignTimeResolveAssemblyReferences.cache
文件 6869 2016-08-21 21:47 Modbus TCP Client\Modbus TCP Client\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 730 2016-08-27 17:34 Modbus TCP Client\Modbus TCP Client\obj\Debug\Modbus TCP Client.csproj.FileListAbsolute.txt
文件 1012 2016-08-26 22:58 Modbus TCP Client\Modbus TCP Client\obj\Debug\Modbus TCP Client.csproj.GenerateResource.Cache
文件 2210 2016-08-26 10:28 Modbus TCP Client\Modbus TCP Client\obj\Debug\Modbus TCP Client.csprojResolveAssemblyReference.cache
文件 20992 2016-08-27 16:00 Modbus TCP Client\Modbus TCP Client\obj\Debug\Modbus TCP Client.exe
文件 32256 2016-08-27 16:00 Modbus TCP Client\Modbus TCP Client\obj\Debug\Modbus TCP Client.pdb
文件 180 2016-08-26 22:58 Modbus TCP Client\Modbus TCP Client\obj\Debug\Modbus_TCP_Client.Form1.resources
文件 180 2016-08-26 10:28 Modbus TCP Client\Modbus TCP Client\obj\Debug\Modbus_TCP_Client.Properties.Resources.resources
文件 498 2016-08-21 21:46 Modbus TCP Client\Modbus TCP Client\Program.cs
文件 1351 2016-08-26 09:45 Modbus TCP Client\Modbus TCP Client\Properties\AssemblyInfo.cs
文件 2847 2016-08-21 21:46 Modbus TCP Client\Modbus TCP Client\Properties\Resources.Designer.cs
文件 5612 2016-08-21 21:46 Modbus TCP Client\Modbus TCP Client\Properties\Resources.resx
文件 1104 2016-08-21 21:46 Modbus TCP Client\Modbus TCP Client\Properties\Settings.Designer.cs
文件 249 2016-08-21 21:46 Modbus TCP Client\Modbus TCP Client\Properties\Settings.settings
文件 1018 2016-08-21 21:46 Modbus TCP Client\Modbus TCP Client.sln
目录 0 2016-08-21 21:46 Modbus TCP Client\Modbus TCP Client\obj\Debug\TempPE
目录 0 2016-08-27 17:40 Modbus TCP Client\.vs\Modbus TCP Client\v14
目录 0 2016-08-27 17:40 Modbus TCP Client\Modbus TCP Client\bin\Debug
目录 0 2016-08-21 21:46 Modbus TCP Client\Modbus TCP Client\bin\Release
目录 0 2016-08-27 17:40 Modbus TCP Client\Modbus TCP Client\obj\Debug
............此处省略10个文件信息
- 上一篇:C#多线程编程 线程与窗体交互源码
- 下一篇:c# 设置ip代理
相关资源
- C# .Net Socket TCP 大数据 大文件 传输 经
- C# TCP网络通信小助手
- C# winform实现一个服务端和多个客户端
- C#TCP/IP通信接收数据
- c#TCP与川崎机器人通信
- c#tcpClient发送和接收
- modbus C#串口调试源码功能完善最完美
- 台达PLC modbus通信上位机64位C#
- C#聊天程序
- NModbu官方VB C# 全
- Modbus串口通信
- 基于C#的TCP/IP协议客户端和服务器的代
- SharpTcpScanner扫描器1.9版
- C#基于TCP的Socket多线程通信包含服务端
- 通过UDP将文件从服务器发送到客户端
- 基于C#的网络抓包程序源码
- Modbus上位机控件MBAXP纯净版免安装、免
- modbus上位机C#类库
- C# 基于Modbus TCP的西门子S7200PLC读写例
- C#Socket 封装了Tcp/Udp传输字串、文件、
- C# 简单的tcp服务器demo
- C#实现串口通讯和TCP/IP通讯的程序
- ModBUS TCP C#源码实现
- TCP_ServerAndClient.rar
- C# Socket实现TCPClient
- C#winform TCP通信 UDP通信 Socket通信 vs2
- C#TCP/IP通信
- C# SOCKET TCP UDP测试工具及源代码
- OPC Client源码C#版
- vs2010 c#编写的websocket 同时支持TCP和
评论
共有 条评论