2024-02-01 14:27:06 +03:00
|
|
|
|
#ifndef BLUETOOTH1D801_H
|
|
|
|
|
#define BLUETOOTH1D801_H
|
|
|
|
|
|
|
|
|
|
#include <QObject>
|
|
|
|
|
#include <QListWidget>
|
|
|
|
|
#include <QDebug>
|
|
|
|
|
|
|
|
|
|
#include <QBluetoothDeviceDiscoveryAgent>
|
|
|
|
|
#include <QBluetoothServiceDiscoveryAgent>
|
|
|
|
|
#include <QBluetoothDeviceInfo>
|
|
|
|
|
#include <QBluetoothSocket>
|
|
|
|
|
#include <QBluetoothLocalDevice>
|
|
|
|
|
|
|
|
|
|
|
2024-02-05 10:21:28 +03:00
|
|
|
|
#include <QtCore/qmetaobject.h>
|
|
|
|
|
#include <QLatin1StringView>
|
2024-02-01 14:27:06 +03:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-02-05 10:21:28 +03:00
|
|
|
|
///прописать статус
|
|
|
|
|
/// перечисление статусов
|
|
|
|
|
/// сигнал статусИзменен
|
|
|
|
|
|
|
|
|
|
|
2024-02-01 14:27:06 +03:00
|
|
|
|
class Bluetooth1d801 : public QObject
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
explicit Bluetooth1d801(QObject *parent = nullptr); // туду сюда вкорячить из конструктора мэйна
|
|
|
|
|
~Bluetooth1d801(); // туду сделать деструктор. Мы же не быдлокодеры!!!
|
|
|
|
|
|
|
|
|
|
public slots:
|
|
|
|
|
void startDiscovery(); //запускаем bluetooth поиск
|
|
|
|
|
void stopDiscovery(); //прерываем его
|
2024-02-05 10:21:28 +03:00
|
|
|
|
void connectTo(QListWidgetItem *item); // подключится к сервису
|
2024-02-01 14:27:06 +03:00
|
|
|
|
|
|
|
|
|
//команды для модуля в первородном виде
|
|
|
|
|
void GetParam(); //получить параметры измерения
|
|
|
|
|
void SetParam(); // запись параметров измерения
|
|
|
|
|
void GetMeas(); //Чтение измеренных значений
|
|
|
|
|
void GetWave(); //Чтение временного сигнала виброускорения /виброскорости /виброперемещения
|
|
|
|
|
void GetSpectrum();//Чтение спектра виброускорения /виброскорости /виброперемещения
|
|
|
|
|
void GetStatus();//Cтатус прибора
|
|
|
|
|
void SetTime();//Синхронизация часов
|
|
|
|
|
void GetSpectrumEnv(); //Чтение спектра огибающей виброускорения
|
|
|
|
|
void GetWaveEnv();//Чтение сигнала огибающей виброускорения
|
|
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
|
void serviceDiscovered(const QBluetoothServiceInfo &serviceInfo); //отрабатываю сигнал обнаруженного сервиса
|
|
|
|
|
void readSocket(); //отработка сигнала прибывших данных
|
|
|
|
|
void connected(); // отработка подключения
|
|
|
|
|
void onSocketErrorOccurred(QBluetoothSocket::SocketError error);//отработка ошибки
|
2024-02-05 10:21:28 +03:00
|
|
|
|
void discoveryFinished();
|
2024-02-01 14:27:06 +03:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
signals:
|
2024-02-05 10:21:28 +03:00
|
|
|
|
void discoveryResult(QListWidgetItem *res_p); //возвращаем обнаруженные сервисы
|
|
|
|
|
//void MainWindow::addDiscoveryResult(QListWidgetItem *res_p)
|
|
|
|
|
//ui->listWidgetDevice->addItem(res_p);
|
2024-02-01 14:27:06 +03:00
|
|
|
|
void rawDataRecived(QByteArray); // прилетели какие то данные!
|
2024-02-05 10:21:28 +03:00
|
|
|
|
void disconnected(); // отключилось устройство
|
|
|
|
|
void socketErrorOccurred(const QString &errorString);
|
|
|
|
|
void connected(const QString &name); // отработка подключения
|
|
|
|
|
|
2024-02-01 14:27:06 +03:00
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
QBluetoothSocket *socket = nullptr; // объект сокета для порта
|
|
|
|
|
QBluetoothLocalDevice localDevice; // обьект локального устройства
|
|
|
|
|
QString localDeviceName; // имя свистка
|
|
|
|
|
QMap<QListWidgetItem *, QBluetoothServiceInfo> discoveredServices; // обнаруженные сервисы
|
|
|
|
|
QBluetoothServiceDiscoveryAgent *discoveryAgent;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif // BLUETOOTH1D801_H
|