30 lines
596 B
C#
30 lines
596 B
C#
using System.Text;
|
|
|
|
namespace InnovEnergy.Lib.Protocols.Modbus.Conversions;
|
|
|
|
public partial class ModbusRegisters
|
|
{
|
|
public String GetString(UInt16 index, Int16 size)
|
|
{
|
|
var ascii = new ASCIIEncoding();
|
|
var offset = index - StartRegister;
|
|
|
|
var decoded = "";
|
|
var i = 0;
|
|
|
|
while (i < size)
|
|
{
|
|
var byteArray = BitConverter.GetBytes(Registers[offset]).Reverse().ToArray();
|
|
|
|
var tmp = ascii.GetString(byteArray);
|
|
|
|
decoded += tmp;
|
|
|
|
i++;
|
|
|
|
offset++;
|
|
}
|
|
|
|
return decoded;
|
|
}
|
|
} |