25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

33 lines
743 B

  1. #ifndef MYMODBUS_H
  2. #define MYMODBUS_H
  3. #include <QByteArray>
  4. #include <QVector>
  5. #include <QString>
  6. #include "crc.h"
  7. class MyModbus
  8. {
  9. private:
  10. quint16 stationAddress_;
  11. quint16 functionCode_;
  12. quint16 startAdress_;
  13. quint16 length_;
  14. QByteArray sendCommand_;
  15. QByteArray receive_;
  16. public:
  17. MyModbus();
  18. void Set(quint16 stationAddress_,quint16 functionCode_,quint16 startAdress_,quint16 length_);
  19. void ReadCoilAndReg();
  20. void WriteCoil(QVector<bool> &coils);
  21. void WriteRegister(QVector<quint16> &values);
  22. QByteArray SendCommand();
  23. QByteArray Receive(const QByteArray &revMessage);
  24. int ErrorCheck();
  25. QVector<bool> AnalReadCoil();
  26. QVector<quint16> AnalReadReg();
  27. };
  28. #endif // MYMODBUS_H