NModbus4 发送指令并接收指令
时间: 2024-05-01 09:17:07 浏览: 12
NModbus4是一个C#实现的Modbus协议库,可以用于发送和接收Modbus指令。下面是一个简单的例子:
```c#
using Modbus.Data;
using Modbus.Device;
using System.IO.Ports;
// 创建串口
SerialPort serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);
serialPort.Open();
// 创建Modbus主站
ModbusSerialMaster master = ModbusSerialMaster.CreateRtu(serialPort);
// 发送读取输入寄存器指令
ushort startAddress = 0x0000;
ushort numRegisters = 0x0001;
ushort[] data = master.ReadInputRegisters(1, startAddress, numRegisters);
// 打印接收到的数据
foreach (ushort value in data)
{
Console.WriteLine(value);
}
// 关闭串口
serialPort.Close();
```
上面的例子演示了如何从Modbus从站读取一个输入寄存器的值。首先,创建一个串口对象并打开串口连接。然后,创建一个Modbus主站对象,并使用它发送一个读取输入寄存器指令。最后,打印接收到的数据并关闭串口连接。
注意,这个例子只是演示了如何发送和接收Modbus指令,实际应用中可能需要添加更多的代码来处理错误和异常情况。