Innovenergy_trunk/csharp/lib/Protocols/Modbus/Conversions/ModbusRegisters.UInt32.cs

19 lines
509 B
C#

namespace InnovEnergy.Lib.Protocols.Modbus.Conversions;
public partial class ModbusRegisters
{
public UInt32 GetUInt32(UInt16 index)
{
var i = index - StartRegister;
unchecked
{
return (UInt32)(Registers[i] << 16 | Registers[i + 1]);
}
}
public void SetUInt32(UInt16 index, UInt32 value)
{
Registers[index - StartRegister] = (UInt16)(value >> 16);
Registers[index - StartRegister + 1] = (UInt16)(value & 0xFFFF);
}
}