• 大小: 1.57MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-24
  • 语言: 其他
  • 标签: Modbus  TCP/RTU  服务端  

资源简介

学习MODBUS通信的比较完整的开发资料。含Modbus TCP/RTU 服务端和客户端源代码、MODBUS中文协议文档、测试工具。

资源截图

代码片段和文件信息

using System;
using System.Configuration;
using System.Drawing;
using System.Globalization;
using System.IO;
using System.IO.Ports;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Windows.Forms;

namespace Modbus.Common
{
    public partial class baseForm : Form
    {
        private DisplayFormat _displayFormat = DisplayFormat.Integer;
        private CommunicationMode _communicationMode = CommunicationMode.TCP;
        protected Socket _socket;
        protected readonly UInt16[] _registerData;
        protected int _displayCtrlCount;
        private bool _logPaused = false;

        #region Form 

        public baseForm()
        {
            InitializeComponent();
            _registerData = new UInt16[65600];
        }
        
        private void baseFormLoading(object sender EventArgs e)
        {
            comboBoxBaudRate.SelectedIndex = 4;
            FillRTUDropDownLists();
            CurrentTab.RegisterData = _registerData;
            if (_registerData == null)
            {
                throw new ApplicationException(“Failed to allocate 128k block“);
            }
            LoadUserData();
            CurrentTab.DisplayFormat = DisplayFormat;
            RefreshData();
        }

        private void baseFormClosing(object sender FormClosingEventArgs e)
        {
            SaveUserData();
        }

        private void FillRTUDropDownLists()
        {
            comboBoxSerialPorts.Items.Clear();
            foreach (var port in SerialPort.GetPortNames())
            {
                comboBoxSerialPorts.Items.Add(port);
            }
            if (comboBoxSerialPorts.Items.Count > 0)
                comboBoxSerialPorts.SelectedIndex = 0;
            comboBoxParity.Items.Clear();
            comboBoxParity.Items.Add(Parity.None.ToString());
            comboBoxParity.Items.Add(Parity.Odd.ToString());
            comboBoxParity.Items.Add(Parity.Even.ToString());
            comboBoxParity.Items.Add(Parity.Mark.ToString());
            comboBoxParity.Items.Add(Parity.Space.ToString());
        }

        private void LoadUserData()
        {
            CommunicationMode mode;
            if (Enum.TryParse(Properties.Settings.Default.CommunicationMode out mode))
                CommunicationMode = mode;
            DisplayFormat format;
            if (Enum.TryParse(Properties.Settings.Default.DisplayFormat out format))
                DisplayFormat = format;
            IPAddress ipAddress;
            if (IPAddress.TryParse(Properties.Settings.Default.IPAddress out ipAddress))
                IPAddress = ipAddress;
            TCPPort = Properties.Settings.Default.TCPPort;
            PortName = Properties.Settings.Default.PortName;
            Baud = Properties.Settings.Default.Baud;
            Parity = Properties.Settings.Default.Parity;
            StartAddress = Properties.Settings.Default.StartAddr

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

    .......      2399  2013-11-23 21:20  ModbusTool\CommonControls\app.config

    .......     24066  2013-11-23 21:20  ModbusTool\CommonControls\baseForm.cs

    .......     31495  2013-11-23 21:20  ModbusTool\CommonControls\baseForm.designer.cs

    .......      8254  2013-11-23 21:20  ModbusTool\CommonControls\baseForm.resx

     文件      42496  2017-05-29 05:18  ModbusTool\CommonControls\bin\Debug\Modbus.Common.dll

     文件       2399  2013-11-23 21:20  ModbusTool\CommonControls\bin\Debug\Modbus.Common.dll.config

     文件      73216  2017-05-29 05:18  ModbusTool\CommonControls\bin\Debug\Modbus.Common.pdb

    .......     13660  2013-11-23 21:20  ModbusTool\CommonControls\DataTab.cs

    .......      6539  2013-11-23 21:20  ModbusTool\CommonControls\DataTab.Designer.cs

    .......      5817  2013-11-23 21:20  ModbusTool\CommonControls\DataTab.resx

    .......       459  2013-11-23 21:20  ModbusTool\CommonControls\Enumerations.cs

    .......      4891  2017-05-29 07:23  ModbusTool\CommonControls\LedBulb.cs

    .......      3695  2013-11-23 21:20  ModbusTool\CommonControls\Modbus.Common.csproj

     文件        863  2017-05-29 07:10  ModbusTool\CommonControls\obj\Debug\DesignTimeResolveAssemblyReferences.cache

     文件       6147  2017-05-29 07:20  ModbusTool\CommonControls\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件       1716  2017-05-29 05:18  ModbusTool\CommonControls\obj\Debug\Modbus.Common.baseForm.resources

     文件        614  2017-05-29 05:18  ModbusTool\CommonControls\obj\Debug\Modbus.Common.csproj.FileListAbsolute.txt

     文件        965  2017-05-29 05:18  ModbusTool\CommonControls\obj\Debug\Modbus.Common.csproj.GenerateResource.Cache

     文件        180  2017-05-29 05:18  ModbusTool\CommonControls\obj\Debug\Modbus.Common.DataTab.resources

     文件      42496  2017-05-29 05:18  ModbusTool\CommonControls\obj\Debug\Modbus.Common.dll

     文件      73216  2017-05-29 05:18  ModbusTool\CommonControls\obj\Debug\Modbus.Common.pdb

    .......      1493  2013-11-23 21:20  ModbusTool\CommonControls\Properties\AssemblyInfo.cs

    .......      7285  2013-11-23 21:20  ModbusTool\CommonControls\Properties\Settings.Designer.cs

    .......      2101  2013-11-23 21:20  ModbusTool\CommonControls\Properties\Settings.settings

    .......     32875  2013-11-23 21:20  ModbusTool\MasterSetup\MasterSetup.vdproj

     文件      30720  2017-05-29 05:18  ModbusTool\ModbusLib\bin\Debug\ModbusLib.dll

     文件     112128  2017-05-29 05:18  ModbusTool\ModbusLib\bin\Debug\ModbusLib.pdb

    .......     15421  2013-11-23 21:20  ModbusTool\ModbusLib\ByteArray\ByteArrayHelpers.cs

    .......      7942  2013-11-23 21:20  ModbusTool\ModbusLib\ByteArray\ByteArrayReader.cs

    .......     10624  2013-11-23 21:20  ModbusTool\ModbusLib\ByteArray\ByteArrayWriter.cs

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

评论

共有 条评论