用go实现modbus协议。
Bit 操作:
16-bit 操作:
st := NewTcpTransporter("127.0.0.1:502")
st.TimeOut=1*time.Second
pk := NewTcpPackager(1)
defer func() { _ = st.Close() }()
pk := NewTcpPackager(1)
c := NewClient(pk, st)
request, results, err := c.ReadHoldingRegisters(1, 10)
st := NewSerialTransporter("COM3")
st.Mode=serial.Mode{BaudRate: defaultBaudRate}
defer func() { _ = st.Close() }()
pk := NewRtuPackager(1)
c := NewClient(pk, st)
request, results, err := c.ReadHoldingRegisters(1, 10)
st := NewSerialTransporter("COM3")
st.Mode=serial.Mode{BaudRate: defaultBaudRate}
defer func() { _ = st.Close() }()
pk := NewAsciiPackager(1)
c := NewClient(pk, st)
request, results, err := c.ReadHoldingRegisters(1, 10)
st := NewTcpTransporter("127.0.0.1:502")
defer func() { _ = st.Close() }()
pk := NewRtuPackager(1)
c := NewClient(pk, st)
request, results, err := c.ReadHoldingRegisters(0, 10)
st := NewTcpTransporter("127.0.0.1:502")
defer func() { _ = st.Close() }()
pk := NewAsciiPackager(1)
c := NewClient(pk, st)
request, results, err := c.ReadHoldingRegisters(0, 10)