UniSet  2.6.0
ModbusHelpers.h
1 // -------------------------------------------------------------------------
2 #ifndef ModbusHelpers_H_
3 #define ModbusHelpers_H_
4 // -------------------------------------------------------------------------
5 #include <string>
6 #include "ModbusTypes.h"
7 #include "ComPort.h"
8 // -------------------------------------------------------------------------
9 namespace uniset
10 {
11  // -------------------------------------------------------------------------
12  class ModbusRTUMaster;
13  // -------------------------------------------------------------------------
14  namespace ModbusHelpers
15  {
16  ModbusRTU::ModbusAddr autodetectSlave( ModbusRTUMaster* m,
17  ModbusRTU::ModbusAddr beg = 0,
18  ModbusRTU::ModbusAddr end = 255,
19  ModbusRTU::ModbusData reg = 0,
20  ModbusRTU::SlaveFunctionCode fn = ModbusRTU::fnReadInputRegisters
21  ); // throw uniset::TimeOut();
22 
23  ModbusRTU::ModbusAddr autodetectSlave( std::string dev,
24  ComPort::Speed s, int tout = 1000,
25  ModbusRTU::ModbusAddr beg = 0,
26  ModbusRTU::ModbusAddr end = 255,
27  ModbusRTU::ModbusData reg = 0,
28  ModbusRTU::SlaveFunctionCode fn = ModbusRTU::fnReadInputRegisters
29  ); // throw uniset::TimeOut();
30 
31  ComPort::Speed autodetectSpeed( ModbusRTUMaster* m, ModbusRTU::ModbusAddr slave,
32  ModbusRTU::ModbusData reg = 0,
33  ModbusRTU::SlaveFunctionCode fn = ModbusRTU::fnReadInputRegisters
34  ); // throw uniset::TimeOut();
35 
36  ComPort::Speed autodetectSpeed( std::string dev,
37  ModbusRTU::ModbusAddr slave,
38  int timeout_msec = 1000,
39  ModbusRTU::ModbusData reg = 0,
40  ModbusRTU::SlaveFunctionCode fn = ModbusRTU::fnReadInputRegisters
41  ); // throw uniset::TimeOut();
42 
43  } // end of namespace ModbusHelpers
44  // ---------------------------------------------------------------------------
45 } // end of namespace uniset
46 // ---------------------------------------------------------------------------
47 #endif // ModbusHelpers_H_
48 // ---------------------------------------------------------------------------