| 1234567891011121314151617181920212223242526272829303132333435363738 |
- #ifndef SERIALTHREAD_H
- #define SERIALTHREAD_H
- #include <QFile>
- #include <QObject>
- #include <QSerialPort>
- #include <QTextStream>
- class SerialThread : public QObject
- {
- Q_OBJECT
- public:
- explicit SerialThread(QObject *parent = nullptr);
- ~SerialThread();
- void openSerial(const QString& portname);
- private:
- bool parseFrame(const QByteArray &frame);
- void initCsv();
- void writeCsv(const QVector<double>& values);
- public slots:
- void onReadyRead();
- signals:
- void sigMessage(const QString& msg);
- void sigTemperature(QVector<double> values);
- private:
- QString m_portName;
- QSerialPort *m_port = nullptr;
- QByteArray m_buffer; // 接收缓冲区
- QFile m_csvFile;
- QTextStream m_csvStream;
- };
- #endif // SERIALTHREAD_H
|