Revert "Modbus: fix int to float conversion for int setter"

This reverts commit 1d322c6330.
This commit is contained in:
andig 2024-02-28 09:04:08 +01:00
parent 625b91c544
commit f9538edded

View file

@ -1,7 +1,6 @@
package modbus
import (
"encoding/binary"
"errors"
"fmt"
"math"
@ -138,18 +137,11 @@ func (r Register) Operation() (RegisterOperation, error) {
}
} else {
switch strings.ToLower(r.encoding()) {
case "int32s", "uint32s":
case "int32s", "uint32s", "float32s", "ieee754s":
op.Encode = func(v uint64) uint64 {
return v&0xFFFF<<16 | v&0xFFFF0000>>16
}
case "float32s", "ieee754s":
op.Encode = func(v uint64) uint64 {
b := make([]byte, 4)
encoding.PutFloat32LswFirst(b, float32(v))
return uint64(binary.BigEndian.Uint32(b))
}
default:
op.Encode = func(v uint64) uint64 {
return v