C#安装:
https://jingyan.baidu.com/article/642c9d34242718644a46f7b3.html
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO.Ports; //using System.Net; //using System.Net.Sockets; using Modbus.Data; using Modbus.Device; using Modbus.Utility; //using Modbus.Serial; namespace Modbus { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { using (SerialPort port = new SerialPort("COM1")) { // configure serial port port.BaudRate = 9600; port.DataBits = 8; port.Parity = Parity.None; port.StopBits = StopBits.One; port.Open(); //var adapter = new SerialPortAdapter(port); // create modbus master IModbusSerialMaster master = ModbusSerialMaster.CreateRtu(port); byte slaveId = 1; ushort startAddress = 100; ushort[] registers = new ushort[] { 1, 2, 3 }; // write three registers master.WriteMultipleRegisters(slaveId, startAddress, registers); //读取数据函数: slaveId = 1; startAddress = 0; ushort numRegisters = 10; registers = master.ReadHoldingRegisters(slaveId, startAddress, numRegisters); //读取寄存器数据到register数组中 //需要处理数据的话 后面可能就需要数据的转化 //写数据函数: byte slaveID = 1; ushort registerAddress = 0; ushort value = 100;//你要写的值 master.WriteSingleRegister(slaveID, registerAddress, value); } } } }安装完NuGet,重启VS,在Tool里面找到Nuget下得console,然后输入:
PM > Install-Package NModbus4
RTU
https://github.com/NModbus4/NModbus4/
可参考
https://blog.csdn.net/sudaobo/article/details/7698117
不通过nuget在线下载,比较慢
可以在https://www.nuget.org/packages/NModbus4/2.1.0下,下载需要的包,
需要设置VS的nuget源为本地,也就是你下载的包的路径,并且需要 放在最上面,否则找不到,如下
包名一般是如下:
红框内是安装方法,
PM> Install-Package NModbus4 -Version 2.1.0 Installing 'NModbus4 2.1.0'. Successfully installed 'NModbus4 2.1.0'. Adding 'NModbus4 2.1.0' to WindowsFormsApplication2. Successfully added 'NModbus4 2.1.0' to WindowsFormsApplication2.
