Commit 2b90d9475e5cea07406dff036b5e12f65d15e9e7

Authored by Peter M. Groen
1 parent 1bd935fb

implementing the RTU

src/connectionconfig.h
... ... @@ -48,6 +48,9 @@ public:
48 48 void setConnectionType( E_CONNECTIONTYPE type ) { m_conType = type; }
49 49 E_CONNECTIONTYPE getConnectionType() const { return m_conType; }
50 50  
  51 + void setPortName(const std::string &port_name) { m_portName = port_name; }
  52 + std::string getPortName() { return m_portName; }
  53 +
51 54 void setBaudRate( E_BAUDRATE baud_rate ) { m_baudRate = baud_rate; }
52 55 E_BAUDRATE getBaudRate() const { return m_baudRate; }
53 56  
... ... @@ -70,14 +73,15 @@ public:
70 73 int getFrameTimeout() const { return m_frameTimeOut; }
71 74  
72 75 private:
73   - E_CONNECTIONTYPE m_conType = E_CONNECTIONTYPE::UNKNOWN;
74   - E_BAUDRATE m_baudRate = E_BAUDRATE::R9600;
75   - E_PARITY m_parity = E_PARITY::NONE;
76   - int m_dataBits = 8;
77   - int m_stopBits = 1;
78   - std::string m_ipAddress{};
79   - unsigned int m_portNumber = 502;
80   - int m_frameTimeOut = -1;
  76 + E_CONNECTIONTYPE m_conType = E_CONNECTIONTYPE::UNKNOWN;
  77 + std::string m_portName;
  78 + E_BAUDRATE m_baudRate = E_BAUDRATE::R9600;
  79 + E_PARITY m_parity = E_PARITY::NONE;
  80 + int m_dataBits = 8;
  81 + int m_stopBits = 1;
  82 + std::string m_ipAddress{};
  83 + unsigned int m_portNumber = 502;
  84 + int m_frameTimeOut = -1;
81 85  
82 86 };
83 87  
... ...
src/modbusrtu.h
... ... @@ -13,6 +13,26 @@ namespace modbus {
13 13  
14 14 class ModbusRtu : public ModbusBase
15 15 {
  16 +public:
  17 + virtual bool Connect() override;
  18 + virtual bool Close() override;
  19 +
  20 + /*!
  21 + * \brief modbusSend
  22 + * \param to_send
  23 + * \param length
  24 + * \return
  25 + */
  26 + virtual int modbusSend(uint8_t *to_send, size_t length) override;
  27 +
  28 + /*!
  29 + * \brief modbusReceive
  30 + * \param buffer
  31 + * \return
  32 + */
  33 + virtual int modbusReceive(uint8_t *buffer) override;
  34 +
  35 +private:
16 36  
17 37 };
18 38  
... ...