• 大小: 93KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-07
  • 语言: C#
  • 标签: Modbus  串口通信  

资源简介

使用C# Modbus RTU串口通信 支援Modbus RTU 封包格式 自動計算CRC 測試工具

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
using System.Windows.Forms;
using System.IO.Ports;

namespace Modbus_Test_Tool
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void COM_Open_Click(object sender EventArgs e)
        {
            try
            {
                Send.Visible = true;
                Clear.Visible = true;
                COM_Close.Visible = true;
                serialPort1.PortName = comboBox1.Text;
                serialPort1.BaudRate = 115200;
                serialPort1.StopBits = StopBits.One;
                serialPort1.Parity = Parity.None;
                serialPort1.DataBits = 8;
                serialPort1.Open();
                if (serialPort1.IsOpen)
                {
                    progressBar1.Value = 100;
                }
            }
            catch(Exception ex)
            {
                MessageBox.Show(this ex.Message “ERROR“ MessageBoxButtons.OKCancel);
            }
        }

        private void progressBar1_Click(object sender EventArgs e)
        {
          
        }

        private void comboBox1_SelectedValueChanged(object sender EventArgs e)
        {
            serialPort1.Close();
            progressBar1.Value = 0;
        }

        private void COM_Close_Click(object sender EventArgs e)
        {
            serialPort1.Close();
            progressBar1.Value = 0;
        }

        private void Send_Click(object sender EventArgs e)
        {

            //string str = “11 10 00 11 00 01 02 FF FF 69 61“;            
            string str = SendMsg.Text;
            //輸入資料切割
            byte[] bytes = str.Split(‘ ‘).Select(s => Convert.ToByte(s 16)).ToArray();
            byte[] SHOW = bytes;
            //CRC計算
            byte[] crc = CalculateCRC(bytes);
            //輸入資料總長度
            byte[] AddSHOW = new byte[SHOW.Length+2];
            //輸入資料填入
            for (int i = 0; i < SHOW.Length; i++)
            {
                AddSHOW[i]=SHOW[i];
            }
                      
            AddSHOW[AddSHOW.Length-2]=crc[0];
            AddSHOW[AddSHOW.Length - 1] = crc[1];
         
            serialPort1.Write(AddSHOW 0 AddSHOW.Length);
            Thread.Sleep(100);
            //計算serialPort1中有多少位元組,讀取回覆資料 
            if (serialPort1.BytesToRead >= 5)
            {
                bytes = new byte[serialPort1.BytesToRead];
                serialPort1.Read(AddSHOW 0 AddSHOW.Length);
                ReceiMsg.Text = Display(AddSHOW);
            }
            
                                 
        }
        
     

        private void Form1_Load(object sender EventArgs e)
        {

        

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        187  2016-12-26 13:16  Modbus_Test_Tool\Modbus_Test_Tool\App.config

     文件      12288  2016-12-27 11:30  Modbus_Test_Tool\Modbus_Test_Tool\bin\Debug\Modbus_Test_Tool.exe

     文件        187  2016-12-26 13:16  Modbus_Test_Tool\Modbus_Test_Tool\bin\Debug\Modbus_Test_Tool.exe.config

     文件      28160  2016-12-27 11:30  Modbus_Test_Tool\Modbus_Test_Tool\bin\Debug\Modbus_Test_Tool.pdb

     文件      22984  2016-12-27 11:31  Modbus_Test_Tool\Modbus_Test_Tool\bin\Debug\Modbus_Test_Tool.vshost.exe

     文件        187  2016-12-26 13:16  Modbus_Test_Tool\Modbus_Test_Tool\bin\Debug\Modbus_Test_Tool.vshost.exe.config

     文件        490  2010-03-17 22:39  Modbus_Test_Tool\Modbus_Test_Tool\bin\Debug\Modbus_Test_Tool.vshost.exe.manifest

     文件      13312  2016-12-29 15:27  Modbus_Test_Tool\Modbus_Test_Tool\bin\Release\Modbus_Test_Tool.exe

     文件        187  2016-12-26 13:16  Modbus_Test_Tool\Modbus_Test_Tool\bin\Release\Modbus_Test_Tool.exe.config

     文件      30208  2016-12-29 15:27  Modbus_Test_Tool\Modbus_Test_Tool\bin\Release\Modbus_Test_Tool.pdb

     文件      22984  2017-01-03 17:54  Modbus_Test_Tool\Modbus_Test_Tool\bin\Release\Modbus_Test_Tool.vshost.exe

     文件        187  2016-12-26 13:16  Modbus_Test_Tool\Modbus_Test_Tool\bin\Release\Modbus_Test_Tool.vshost.exe.config

     文件        490  2010-03-17 22:39  Modbus_Test_Tool\Modbus_Test_Tool\bin\Release\Modbus_Test_Tool.vshost.exe.manifest

     文件         60  2016-12-29 16:25  Modbus_Test_Tool\Modbus_Test_Tool\ClassDiagram1.cd

     文件       6409  2016-12-29 15:27  Modbus_Test_Tool\Modbus_Test_Tool\Form1.cs

     文件       8290  2016-12-29 15:27  Modbus_Test_Tool\Modbus_Test_Tool\Form1.Designer.cs

     文件       6016  2016-12-29 15:27  Modbus_Test_Tool\Modbus_Test_Tool\Form1.resx

     文件       3811  2016-12-26 13:17  Modbus_Test_Tool\Modbus_Test_Tool\Modbus_Test_Tool.csproj

     文件        863  2016-12-26 13:16  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\DesignTimeResolveAssemblyReferences.cache

     文件       7015  2016-12-26 13:34  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件        752  2016-12-27 11:31  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\Modbus_Test_Tool.csproj.FileListAbsolute.txt

     文件        975  2016-12-27 11:29  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\Modbus_Test_Tool.csproj.GenerateResource.Cache

     文件      12288  2016-12-27 11:30  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\Modbus_Test_Tool.exe

     文件        180  2016-12-27 11:29  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\Modbus_Test_Tool.Form1.resources

     文件      28160  2016-12-27 11:30  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\Modbus_Test_Tool.pdb

     文件        180  2016-12-27 11:29  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\Modbus_Test_Tool.Properties.Resources.resources

     文件          0  2016-12-26 13:16  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs

     文件          0  2016-12-26 13:16  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs

     文件          0  2016-12-26 13:16  Modbus_Test_Tool\Modbus_Test_Tool\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs

     文件       1308  2016-12-28 13:26  Modbus_Test_Tool\Modbus_Test_Tool\obj\Release\DesignTimeResolveAssemblyReferences.cache

............此处省略33个文件信息

评论

共有 条评论