Skip to content

Commit fd6ebb0

Browse files
committed
Testing protocol in Arnhem
1 parent 01b7a80 commit fd6ebb0

File tree

3 files changed

+11
-9
lines changed

3 files changed

+11
-9
lines changed

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ git-tag: bump
2525
git push --tags
2626

2727
bump:
28-
echo `cat VERSION`+.1 |bc > VERSION.new
28+
echo `cat VERSION`+.01 |bc > VERSION.new
2929
rm VERSION
3030
mv VERSION.new VERSION
3131

VERSION

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.9
1+
1.10

modbusserver.go

+9-7
Original file line numberDiff line numberDiff line change
@@ -58,19 +58,21 @@ func ReadRegisters(s *mbserver.Server, frame mbserver.Framer) ([]byte, *mbserver
5858
if endRegister > 65535 {
5959
return []byte{}, &mbserver.IllegalDataAddress
6060
}
61-
dataSize := numRegs / 8
61+
dataSize := numRegs // / 8
6262
if (numRegs % 8) != 0 {
63-
dataSize++
63+
//dataSize++
6464
}
65-
dataSize = dataSize*2
65+
dataSize = dataSize * 2
6666
data := make([]byte, 1+dataSize)
6767
data[0] = byte(dataSize)
68-
fmt.Println(len(data))
6968
for i, value := range s.HoldingRegisters[register:endRegister] {
7069
// Return all 1s, regardless of the value in the DiscreteInputs array.
71-
fmt.Println(i)
72-
data[i+1] = byte(int(value / 256))
73-
data[i+2] = byte(value % 256)
70+
value += 0xF00F
71+
if (i*2)+2 > dataSize {
72+
break
73+
}
74+
data[(i*2)+1] = byte(int(value / 256))
75+
data[(i*2)+2] = byte(value % 256)
7476
}
7577
fmt.Println("READ: ", data)
7678
return data, &mbserver.Success

0 commit comments

Comments
 (0)