Implementation of the basic functionallity

This commit is contained in:
2024-02-06 19:47:06 +01:00
parent a6c7828fbe
commit f31f6f94ff
42 changed files with 6875 additions and 11 deletions

View File

@@ -0,0 +1,32 @@
using System;
namespace AMWD.Protocols.Modbus.Common
{
/// <summary>
/// Represents a input register.
/// </summary>
public class InputRegister : ModbusObject
{
/// <inheritdoc/>
public override ModbusObjectType Type => ModbusObjectType.InputRegister;
/// <summary>
/// Gets or sets the value of the input register.
/// </summary>
public ushort Value
{
get
{
byte[] blob = [HighByte, LowByte];
if (BitConverter.IsLittleEndian)
Array.Reverse(blob);
return BitConverter.ToUInt16(blob, 0);
}
}
/// <inheritdoc/>
public override string ToString()
=> $"Input Register #{Address} | {Value} | HI: {HighByte:X2}, LO: {LowByte:X2}";
}
}