fix: 调整时间间隔框样式,修复线程问题

pull/6/head
cbwu 7 months ago
parent e65ea9bc03
commit 9c694fa004

@ -1,56 +1,54 @@
#include "encodemodelcamera.h" #include "encodemodelcamera.h"
#include "global.h" #include "global.h"
EncodeModelCamera::EncodeModelCamera(QObject *parent) EncodeModelCamera::EncodeModelCamera(QObject *parent) : QObject{parent} {
: QObject{parent} cameraUDP = new QUdpSocket(this);
{ cameraUDP->bind(QHostAddress("127.0.0.1"), 8899);
cameraUDP = new QUdpSocket(this);
cameraUDP->bind(QHostAddress("127.0.0.1"),8899);
cmdArray.insert(0,0xFA); cmdArray.insert(0, 0xFA);
cmdArray.insert(1,0xFA); cmdArray.insert(1, 0xFA);
connect(cameraUDP,SIGNAL(readyRead()),this,SLOT(ReadData())); connect(cameraUDP, SIGNAL(readyRead()), this, SLOT(ReadData()));
} }
/** /**
* @brief * @brief
* @param cmdDataArray ID * @param cmdDataArray ID
*/ */
void EncodeModelCamera::SendCMD(QByteArray cmdDataArray) void EncodeModelCamera::SendCMD(QByteArray cmdDataArray) {
{ cmdArray.clear();
cmdArray.clear(); cmdArray.insert(0, 0xFA);
cmdArray.insert(0,0xFA); cmdArray.insert(1, 0xFA);
cmdArray.insert(1,0xFA);
cmdArray.append(cmdDataArray); cmdArray.append(cmdDataArray);
uint8_t* data = reinterpret_cast<uint8_t*>(cmdArray.data()); uint8_t *data = reinterpret_cast<uint8_t *>(cmdArray.data());
uint16_t crc16 = calCRC16(data,cmdArray.size()); uint16_t crc16 = calCRC16(data, cmdArray.size());
QByteArray byteArray; QByteArray byteArray;
QDataStream stream(&byteArray, QIODevice::WriteOnly); QDataStream stream(&byteArray, QIODevice::WriteOnly);
stream.setByteOrder(QDataStream::BigEndian); stream.setByteOrder(QDataStream::BigEndian);
stream << crc16; stream << crc16;
cmdArray.append(byteArray); cmdArray.append(byteArray);
cameraUDP->writeDatagram(cmdArray,QHostAddress("127.0.0.1"),8181); cameraUDP->writeDatagram(cmdArray, QHostAddress("127.0.0.1"), 8181);
} }
//upd socket收到数据 // upd socket收到数据
void EncodeModelCamera::ReadData(){ void EncodeModelCamera::ReadData() {
QByteArray array; QByteArray array;
QHostAddress address; QHostAddress address;
quint16 port; quint16 port;
array.resize(cameraUDP->bytesAvailable());//根据可读数据来设置空间大小 array.resize(cameraUDP->bytesAvailable()); // 根据可读数据来设置空间大小
cameraUDP->readDatagram(array.data(),array.size(),&address,&port); //读取数据 cameraUDP->readDatagram(array.data(), array.size(), &address,
//校验 &port); // 读取数据
int len = array.size(); // 校验
if(len<=2){ int len = array.size();
return; if (len <= 2) {
} return;
uint8_t* data = reinterpret_cast<uint8_t*>(array.data()); }
uint16_t crc16 = calCRC16(data, array.size()-2); uint8_t *data = reinterpret_cast<uint8_t *>(array.data());
uint16_t Rcrc = (array[len-2]<<8) | array[len-1]; uint16_t crc16 = calCRC16(data, array.size() - 2);
if(crc16==Rcrc){ uint16_t Rcrc = (array[len - 2] << 8) | array[len - 1];
emit UDP_Receive(array); if (crc16 == Rcrc) {
} emit UDP_Receive(array);
}
} }

@ -1,24 +1,25 @@
#ifndef ENCODEMODELCAMERA_H #ifndef ENCODEMODELCAMERA_H
#define ENCODEMODELCAMERA_H #define ENCODEMODELCAMERA_H
#include <QObject>
#include <QUdpSocket>
#include <QByteArray> #include <QByteArray>
#include <QDataStream> #include <QDataStream>
#include <QObject>
#include <QUdpSocket>
class EncodeModelCamera : public QObject class EncodeModelCamera : public QObject {
{ Q_OBJECT
Q_OBJECT
public: public:
explicit EncodeModelCamera(QObject *parent = nullptr); explicit EncodeModelCamera(QObject *parent = nullptr);
// ~EncodeModelCamera();
private: private:
QByteArray cmdArray; QByteArray cmdArray;
QUdpSocket* cameraUDP; QUdpSocket *cameraUDP;
public slots: public slots:
void SendCMD(QByteArray cmdDataArray); void SendCMD(QByteArray cmdDataArray);
void ReadData(); void ReadData();
signals: signals:
void UDP_Receive(QByteArray cmdDataArray); void UDP_Receive(QByteArray cmdDataArray);
}; };
#endif // ENCODEMODELCAMERA_H #endif // ENCODEMODELCAMERA_H

@ -2,368 +2,349 @@
#include "ui_modelcameradlg.h" #include "ui_modelcameradlg.h"
ModelCameraDlg::ModelCameraDlg(QWidget *parent) ModelCameraDlg::ModelCameraDlg(QWidget *parent)
: QDialog(parent) : QDialog(parent), ui(new Ui::ModelCameraDlg) {
, ui(new Ui::ModelCameraDlg) ui->setupUi(this);
{
ui->setupUi(this); InitialComboBox();
InitialComboBox(); cameraCMDThread = new QThread();
encodeModelCamera = new EncodeModelCamera();
cameraCMDThread = new QThread(this); encodeModelCamera->moveToThread(cameraCMDThread);
encodeModelCamera = new EncodeModelCamera(this); cameraCMDThread->start();
encodeModelCamera->moveToThread(cameraCMDThread); connect(this, &ModelCameraDlg::on_sendCmdData_signal, encodeModelCamera,
cameraCMDThread->start(); &EncodeModelCamera::SendCMD);
connect(this,&ModelCameraDlg::on_sendCmdData_signal,encodeModelCamera,&EncodeModelCamera::SendCMD); connect(encodeModelCamera, &EncodeModelCamera::UDP_Receive, this,
connect(encodeModelCamera,&EncodeModelCamera::UDP_Receive,this, &ModelCameraDlg::on_receiveUDP); &ModelCameraDlg::on_receiveUDP);
} }
ModelCameraDlg::~ModelCameraDlg() ModelCameraDlg::~ModelCameraDlg() {
{ delete ui;
delete ui; if (cameraCMDThread != nullptr) {
if(encodeModelCamera!=nullptr) delete encodeModelCamera; cameraCMDThread->quit();
if(cameraCMDThread!=nullptr) cameraCMDThread->wait();
{ encodeModelCamera->deleteLater();
cameraCMDThread->quit(); cameraCMDThread->deleteLater();
cameraCMDThread->wait(); }
}
} }
void ModelCameraDlg::InitialComboBox() void ModelCameraDlg::InitialComboBox() {
{ ui->photoTimeDbSpinBox->setSuffix("s");
ui->photoTimeDbSpinBox->setSuffix("s");
// 快门速度
//快门速度 ui->SSComboBox->insertItem(0, "1/100");
ui->SSComboBox->insertItem(0,"1/100"); ui->SSComboBox->insertItem(1, "1/125");
ui->SSComboBox->insertItem(1,"1/125"); ui->SSComboBox->insertItem(2, "1/160");
ui->SSComboBox->insertItem(2,"1/160"); ui->SSComboBox->insertItem(3, "1/200");
ui->SSComboBox->insertItem(3,"1/200"); ui->SSComboBox->insertItem(4, "1/250");
ui->SSComboBox->insertItem(4,"1/250"); ui->SSComboBox->insertItem(5, "1/320");
ui->SSComboBox->insertItem(5,"1/320"); ui->SSComboBox->insertItem(6, "1/400");
ui->SSComboBox->insertItem(6,"1/400"); ui->SSComboBox->insertItem(7, "1/500");
ui->SSComboBox->insertItem(7,"1/500"); ui->SSComboBox->insertItem(8, "1/640");
ui->SSComboBox->insertItem(8,"1/640"); ui->SSComboBox->insertItem(9, "1/800");
ui->SSComboBox->insertItem(9,"1/800"); ui->SSComboBox->insertItem(10, "1/1000");
ui->SSComboBox->insertItem(10,"1/1000"); ui->SSComboBox->insertItem(11, "1/1250");
ui->SSComboBox->insertItem(11,"1/1250"); ui->SSComboBox->insertItem(12, "1/1600");
ui->SSComboBox->insertItem(12,"1/1600"); ui->SSComboBox->insertItem(13, "1/2000");
ui->SSComboBox->insertItem(13,"1/2000");
// ISO
//ISO ui->ISOComboBox->insertItem(0, "50~800");
ui->ISOComboBox->insertItem(0,"50~800"); ui->ISOComboBox->insertItem(1, "50~1600");
ui->ISOComboBox->insertItem(1,"50~1600"); ui->ISOComboBox->insertItem(2, "50");
ui->ISOComboBox->insertItem(2,"50"); ui->ISOComboBox->insertItem(3, "100");
ui->ISOComboBox->insertItem(3,"100"); ui->ISOComboBox->insertItem(4, "125");
ui->ISOComboBox->insertItem(4,"125"); ui->ISOComboBox->insertItem(5, "160");
ui->ISOComboBox->insertItem(5,"160"); ui->ISOComboBox->insertItem(6, "200");
ui->ISOComboBox->insertItem(6,"200"); ui->ISOComboBox->insertItem(7, "250");
ui->ISOComboBox->insertItem(7,"250"); ui->ISOComboBox->insertItem(8, "320");
ui->ISOComboBox->insertItem(8,"320"); ui->ISOComboBox->insertItem(9, "400");
ui->ISOComboBox->insertItem(9,"400"); ui->ISOComboBox->insertItem(10, "500");
ui->ISOComboBox->insertItem(10,"500"); ui->ISOComboBox->insertItem(11, "640");
ui->ISOComboBox->insertItem(11,"640"); ui->ISOComboBox->insertItem(12, "800");
ui->ISOComboBox->insertItem(12,"800"); ui->ISOComboBox->insertItem(13, "1000");
ui->ISOComboBox->insertItem(13,"1000"); ui->ISOComboBox->insertItem(14, "1250");
ui->ISOComboBox->insertItem(14,"1250"); ui->ISOComboBox->insertItem(15, "1600");
ui->ISOComboBox->insertItem(15,"1600");
// AWB
//AWB ui->AWBComboBox->insertItem(0, "自动");
ui->AWBComboBox->insertItem(0,"自动"); ui->AWBComboBox->insertItem(1, "日光");
ui->AWBComboBox->insertItem(1,"日光");
// 相机模式
//相机模式 ui->cameraModelComboBox->insertItem(0, "拍照模式");
ui->cameraModelComboBox->insertItem(0,"拍照模式"); ui->cameraModelComboBox->insertItem(1, "录像模式");
ui->cameraModelComboBox->insertItem(1,"录像模式");
// 色彩模式
//色彩模式 ui->ColorModelComboBox->insertItem(0, "艳丽");
ui->ColorModelComboBox->insertItem(0,"艳丽"); ui->ColorModelComboBox->insertItem(1, "标准");
ui->ColorModelComboBox->insertItem(1,"标准");
} }
//解析通过校验的udp数据、界面刷新显示 // 解析通过校验的udp数据、界面刷新显示
void ModelCameraDlg::on_receiveUDP(QByteArray arrdata){ void ModelCameraDlg::on_receiveUDP(QByteArray arrdata) {
int picNum = (arrdata[3]<<8)|arrdata[4]; //照片数量(某一个视角) int picNum = (arrdata[3] << 8) | arrdata[4]; // 照片数量(某一个视角)
QString str = QString::number(picNum); QString str = QString::number(picNum);
ui->lineEdit_2->setText(QString::number(picNum*5)); ui->lineEdit_2->setText(QString::number(picNum * 5));
ui->lineEdit_3->setText(str); ui->lineEdit_3->setText(str);
ui->lineEdit_4->setText(str); ui->lineEdit_4->setText(str);
ui->lineEdit_5->setText(str); ui->lineEdit_5->setText(str);
ui->lineEdit_6->setText(str); ui->lineEdit_6->setText(str);
ui->lineEdit_7->setText(str); ui->lineEdit_7->setText(str);
int shutterSpd = (arrdata[7]<<8)|arrdata[8]; //快门速度(倒数) int shutterSpd = (arrdata[7] << 8) | arrdata[8]; // 快门速度(倒数)
ui->lineEdit_10->setText(QString("1/%1").arg(shutterSpd)); ui->lineEdit_10->setText(QString("1/%1").arg(shutterSpd));
int iso = (arrdata[9]<<8)|arrdata[10]; //iso固定值 -1表示50~1600-2表示50~800 int iso =
if (iso==-1){ (arrdata[9] << 8) | arrdata[10]; // iso固定值 -1表示50~1600-2表示50~800
ui->lineEdit_14->setText("50~1600"); if (iso == -1) {
} ui->lineEdit_14->setText("50~1600");
else if(iso==-2){ } else if (iso == -2) {
ui->lineEdit_14->setText("50~800"); ui->lineEdit_14->setText("50~800");
} } else {
else{ QString qstr = QString("%1").arg(iso);
QString qstr = QString("%1").arg(iso); ui->lineEdit_14->setText(qstr);
ui->lineEdit_14->setText(qstr); }
}
int awb =
int awb = (arrdata[11]<<8)|arrdata[12]; //白平衡值 0x0001自动0x0002日光 (arrdata[11] << 8) | arrdata[12]; // 白平衡值 0x0001自动0x0002日光
if(awb==1){ if (awb == 1) {
ui->lineEdit_9->setText("自动"); ui->lineEdit_9->setText("自动");
} } else if (awb == 2) {
else if(awb==2){ ui->lineEdit_9->setText("日光");
ui->lineEdit_9->setText("日光"); }
}
int colorMode =
int colorMode = (arrdata[13]<<8)|arrdata[14]; //色彩模式 0x0001艳丽0x0002标准 (arrdata[13] << 8) | arrdata[14]; // 色彩模式 0x0001艳丽0x0002标准
if(colorMode==1){ if (colorMode == 1) {
ui->lineEdit_12->setText("艳丽"); ui->lineEdit_12->setText("艳丽");
} } else if (colorMode == 2) {
else if(colorMode==2){ ui->lineEdit_12->setText("标准");
ui->lineEdit_12->setText("标准"); }
}
} }
//开始拍照点击事件 // 开始拍照点击事件
void ModelCameraDlg::on_startPhotoBtn_clicked() void ModelCameraDlg::on_startPhotoBtn_clicked() {
{ quint8 photoTime = ui->photoTimeDbSpinBox->value() * 10;
quint8 photoTime = ui->photoTimeDbSpinBox->value() * 10;
cmdDataArray.clear();
cmdDataArray.clear(); cmdDataArray.insert(0, 0x02);
cmdDataArray.insert(0,0x02); cmdDataArray.insert(1, 0xA1);
cmdDataArray.insert(1,0xA1); cmdDataArray.insert(2, 0x03);
cmdDataArray.insert(2,0x03); cmdDataArray.insert(3, 0x01);
cmdDataArray.insert(3,0x01); cmdDataArray.insert(4, photoTime);
cmdDataArray.insert(4,photoTime); emit on_sendCmdData_signal(cmdDataArray);
emit on_sendCmdData_signal(cmdDataArray);
} }
//停止拍照 // 停止拍照
void ModelCameraDlg::on_stopPhotoBtn_clicked() void ModelCameraDlg::on_stopPhotoBtn_clicked() {
{ cmdDataArray.clear();
cmdDataArray.clear(); cmdDataArray.insert(0, 0x01);
cmdDataArray.insert(0,0x01); cmdDataArray.insert(1, 0xA1);
cmdDataArray.insert(1,0xA1); cmdDataArray.insert(2, 0x03);
cmdDataArray.insert(2,0x03); cmdDataArray.insert(3, QByteArray(1, char(0x00)));
cmdDataArray.insert(3,QByteArray(1, char(0x00))); emit on_sendCmdData_signal(cmdDataArray);
emit on_sendCmdData_signal(cmdDataArray);
} }
//开机 // 开机
void ModelCameraDlg::on_ONBtn_clicked() void ModelCameraDlg::on_ONBtn_clicked() {
{ cmdDataArray.clear();
cmdDataArray.clear(); cmdDataArray.insert(0, 0x01);
cmdDataArray.insert(0,0x01); cmdDataArray.insert(1, 0xA1);
cmdDataArray.insert(1,0xA1); cmdDataArray.insert(2, 0x01);
cmdDataArray.insert(2,0x01); cmdDataArray.insert(3, 0x01);
cmdDataArray.insert(3,0x01); emit on_sendCmdData_signal(cmdDataArray);
emit on_sendCmdData_signal(cmdDataArray);
} }
//关机 // 关机
void ModelCameraDlg::on_OFFBtn_clicked() void ModelCameraDlg::on_OFFBtn_clicked() {
{ cmdDataArray.clear();
cmdDataArray.clear(); cmdDataArray.insert(0, 0x01);
cmdDataArray.insert(0,0x01); cmdDataArray.insert(1, 0xA1);
cmdDataArray.insert(1,0xA1); cmdDataArray.insert(2, 0x01);
cmdDataArray.insert(2,0x01); cmdDataArray.insert(3, QByteArray(1, char(0x00)));
cmdDataArray.insert(3,QByteArray(1, char(0x00))); emit on_sendCmdData_signal(cmdDataArray);
emit on_sendCmdData_signal(cmdDataArray);
} }
//播放视频 // 播放视频
void ModelCameraDlg::on_pushButton_5_clicked() void ModelCameraDlg::on_pushButton_5_clicked() {
{ QString str = ui->pushButton_5->text();
QString str = ui->pushButton_5->text(); if (str == "播放视频") {
if(str == "播放视频") QString ip = ui->videoIPLineEdit->text();
{ ui->cameraVideoWidget->play();
QString ip = ui->videoIPLineEdit->text(); ui->cameraVideoWidget->setUrl(ip);
ui->cameraVideoWidget->play(); ui->pushButton_5->setText("暂停播放");
ui->cameraVideoWidget->setUrl(ip); } else {
ui->pushButton_5->setText("暂停播放"); ui->cameraVideoWidget->stop();
} ui->pushButton_5->setText("播放视频");
else }
{
ui->cameraVideoWidget->stop();
ui->pushButton_5->setText("播放视频");
}
} }
//快门速度 // 快门速度
void ModelCameraDlg::on_SSComboBox_activated(int index) void ModelCameraDlg::on_SSComboBox_activated(int index) {
{ QString tmp = ui->SSComboBox->itemText(index);
QString tmp = ui->SSComboBox->itemText(index); QString strSS = tmp.right(tmp.length() - 2);
QString strSS = tmp.right(tmp.length()-2); qint16 hexValue = strSS.toShort(); //
qint16 hexValue = strSS.toShort();//
cmdDataArray.clear();
cmdDataArray.clear(); cmdDataArray.insert(0, 0x04);
cmdDataArray.insert(0,0x04); cmdDataArray.insert(1, 0xA2);
cmdDataArray.insert(1,0xA2); cmdDataArray.insert(2, 0x01);
cmdDataArray.insert(2,0x01); cmdDataArray.insert(3, 0x01);
cmdDataArray.insert(3,0x01);
QByteArray byteArray;
QByteArray byteArray; byteArray.resize(2);
byteArray.resize(2); qToBigEndian(hexValue, (char *)byteArray.data());
qToBigEndian(hexValue, (char*)byteArray.data());
cmdDataArray.append(byteArray);
cmdDataArray.append(byteArray); cmdDataArray.insert(6, 0xFF);
cmdDataArray.insert(6,0xFF); emit on_sendCmdData_signal(cmdDataArray);
emit on_sendCmdData_signal(cmdDataArray);
} }
//ISO // ISO
void ModelCameraDlg::on_ISOComboBox_activated(int index) void ModelCameraDlg::on_ISOComboBox_activated(int index) {
{ QString strSS = ui->ISOComboBox->itemText(index);
QString strSS = ui->ISOComboBox->itemText(index); if (index == 0)
if(index == 0) strSS = "-2"; strSS = "-2";
else if(index == 1) strSS = "-1"; else if (index == 1)
qint16 hexValue = strSS.toShort();// strSS = "-1";
qint16 hexValue = strSS.toShort(); //
cmdDataArray.clear();
cmdDataArray.insert(0,0x04); cmdDataArray.clear();
cmdDataArray.insert(1,0xA2); cmdDataArray.insert(0, 0x04);
cmdDataArray.insert(2,0x02); cmdDataArray.insert(1, 0xA2);
cmdDataArray.insert(3,0x01); cmdDataArray.insert(2, 0x02);
cmdDataArray.insert(3, 0x01);
QByteArray byteArray;
byteArray.resize(2); QByteArray byteArray;
qToBigEndian(hexValue, (char*)byteArray.data()); byteArray.resize(2);
qToBigEndian(hexValue, (char *)byteArray.data());
cmdDataArray.append(byteArray);
cmdDataArray.insert(6,0xFF); cmdDataArray.append(byteArray);
cmdDataArray.insert(6, 0xFF);
emit on_sendCmdData_signal(cmdDataArray);
emit on_sendCmdData_signal(cmdDataArray);
} }
//AWB白平衡 // AWB白平衡
void ModelCameraDlg::on_AWBComboBox_activated(int index) void ModelCameraDlg::on_AWBComboBox_activated(int index) {
{ quint16 hexValue = index + 1; //
quint16 hexValue = index + 1;//
cmdDataArray.clear();
cmdDataArray.insert(0,0x04);
cmdDataArray.insert(1,0xA2);
cmdDataArray.insert(2,0x06);
cmdDataArray.insert(3,0x01);
QByteArray byteArray; cmdDataArray.clear();
byteArray.resize(2); cmdDataArray.insert(0, 0x04);
qToBigEndian(hexValue, (uchar*)byteArray.data()); cmdDataArray.insert(1, 0xA2);
cmdDataArray.insert(2, 0x06);
cmdDataArray.insert(3, 0x01);
cmdDataArray.append(byteArray); QByteArray byteArray;
cmdDataArray.insert(6,0xFF); byteArray.resize(2);
qToBigEndian(hexValue, (uchar *)byteArray.data());
emit on_sendCmdData_signal(cmdDataArray); cmdDataArray.append(byteArray);
} cmdDataArray.insert(6, 0xFF);
//相机模式 emit on_sendCmdData_signal(cmdDataArray);
void ModelCameraDlg::on_cameraModelComboBox_activated(int index)
{
// quint16 hexValue = index + 1;//
cmdDataArray.clear();
cmdDataArray.insert(0,0x01);
cmdDataArray.insert(1,0xA1);
cmdDataArray.insert(2,0x02);
if(index == 0)
cmdDataArray.insert(3,QByteArray(1, char(0x00)));
else if(index == 1)
cmdDataArray.insert(3,0x01);
emit on_sendCmdData_signal(cmdDataArray);
} }
//色彩模式 // 相机模式
void ModelCameraDlg::on_ColorModelComboBox_activated(int index) void ModelCameraDlg::on_cameraModelComboBox_activated(int index) {
{ // quint16 hexValue = index + 1;//
quint16 hexValue = index + 1;//
cmdDataArray.clear(); cmdDataArray.clear();
cmdDataArray.insert(0,0x04); cmdDataArray.insert(0, 0x01);
cmdDataArray.insert(1,0xA2); cmdDataArray.insert(1, 0xA1);
cmdDataArray.insert(2,0x08); cmdDataArray.insert(2, 0x02);
cmdDataArray.insert(3,0x01); if (index == 0)
cmdDataArray.insert(3, QByteArray(1, char(0x00)));
else if (index == 1)
cmdDataArray.insert(3, 0x01);
QByteArray byteArray; emit on_sendCmdData_signal(cmdDataArray);
byteArray.resize(2); }
qToBigEndian(hexValue, (uchar*)byteArray.data());
cmdDataArray.append(byteArray); // 色彩模式
cmdDataArray.insert(6,0xFF); void ModelCameraDlg::on_ColorModelComboBox_activated(int index) {
quint16 hexValue = index + 1; //
emit on_sendCmdData_signal(cmdDataArray); cmdDataArray.clear();
} cmdDataArray.insert(0, 0x04);
cmdDataArray.insert(1, 0xA2);
cmdDataArray.insert(2, 0x08);
cmdDataArray.insert(3, 0x01);
//获取开关机状态 QByteArray byteArray;
void ModelCameraDlg::quireOnorOff(){ byteArray.resize(2);
cmdDataArray.clear(); qToBigEndian(hexValue, (uchar *)byteArray.data());
cmdDataArray.insert(0,0x01);
cmdDataArray.insert(1,0xA1);
cmdDataArray.insert(2,0x01);
cmdDataArray.insert(3,0xFF);
emit on_sendCmdData_signal(cmdDataArray);
}
//查询图传状态 cmdDataArray.append(byteArray);
void ModelCameraDlg::quirePictranStatus(){ cmdDataArray.insert(6, 0xFF);
emit on_sendCmdData_signal(cmdDataArray);
} }
//查询快门速度
void ModelCameraDlg::quireShutterSpeed(){
cmdDataArray.clear();
cmdDataArray.insert(0,0x02);
cmdDataArray.insert(1,0xA2);
cmdDataArray.insert(2,0x01);
cmdDataArray.insert(3,0xFF);
cmdDataArray.insert(4,0xFF);
emit on_sendCmdData_signal(cmdDataArray);
// 获取开关机状态
void ModelCameraDlg::quireOnorOff() {
cmdDataArray.clear();
cmdDataArray.insert(0, 0x01);
cmdDataArray.insert(1, 0xA1);
cmdDataArray.insert(2, 0x01);
cmdDataArray.insert(3, 0xFF);
emit on_sendCmdData_signal(cmdDataArray);
} }
//查询ISO
void ModelCameraDlg::quireISO(){ // 查询图传状态
cmdDataArray.clear(); void ModelCameraDlg::quirePictranStatus() {}
cmdDataArray.insert(0,0x02); // 查询快门速度
cmdDataArray.insert(1,0xA2); void ModelCameraDlg::quireShutterSpeed() {
cmdDataArray.insert(2,0x02); cmdDataArray.clear();
cmdDataArray.insert(3,0xFF); cmdDataArray.insert(0, 0x02);
cmdDataArray.insert(4,0xFF); cmdDataArray.insert(1, 0xA2);
emit on_sendCmdData_signal(cmdDataArray); cmdDataArray.insert(2, 0x01);
cmdDataArray.insert(3, 0xFF);
cmdDataArray.insert(4, 0xFF);
emit on_sendCmdData_signal(cmdDataArray);
} }
//查询白平衡 // 查询ISO
void ModelCameraDlg::quireAWB(){ void ModelCameraDlg::quireISO() {
cmdDataArray.clear(); cmdDataArray.clear();
cmdDataArray.insert(0,0x02); cmdDataArray.insert(0, 0x02);
cmdDataArray.insert(1,0xA2); cmdDataArray.insert(1, 0xA2);
cmdDataArray.insert(2,0x06); cmdDataArray.insert(2, 0x02);
cmdDataArray.insert(3,0xFF); cmdDataArray.insert(3, 0xFF);
cmdDataArray.insert(4,0xFF); cmdDataArray.insert(4, 0xFF);
emit on_sendCmdData_signal(cmdDataArray); emit on_sendCmdData_signal(cmdDataArray);
} }
//查询相机模式 // 查询白平衡
void ModelCameraDlg::quireCameraMode(){ void ModelCameraDlg::quireAWB() {
cmdDataArray.clear(); cmdDataArray.clear();
cmdDataArray.insert(0,0x01); cmdDataArray.insert(0, 0x02);
cmdDataArray.insert(1,0xA1); cmdDataArray.insert(1, 0xA2);
cmdDataArray.insert(2,0x02); cmdDataArray.insert(2, 0x06);
cmdDataArray.insert(3,0xFF); cmdDataArray.insert(3, 0xFF);
emit on_sendCmdData_signal(cmdDataArray); cmdDataArray.insert(4, 0xFF);
emit on_sendCmdData_signal(cmdDataArray);
} }
//查询色彩(饱和度)模式 // 查询相机模式
void ModelCameraDlg::quireColorMode(){ void ModelCameraDlg::quireCameraMode() {
cmdDataArray.clear(); cmdDataArray.clear();
cmdDataArray.insert(0,0x01); cmdDataArray.insert(0, 0x01);
cmdDataArray.insert(1,0xA2); cmdDataArray.insert(1, 0xA1);
cmdDataArray.insert(2,0x08); cmdDataArray.insert(2, 0x02);
cmdDataArray.insert(3,0xFF); cmdDataArray.insert(3, 0xFF);
cmdDataArray.insert(4,0xFF); emit on_sendCmdData_signal(cmdDataArray);
emit on_sendCmdData_signal(cmdDataArray);
} }
//查询温度 // 查询色彩(饱和度)模式
void ModelCameraDlg::quireTempe(){ void ModelCameraDlg::quireColorMode() {
cmdDataArray.clear();
cmdDataArray.insert(0, 0x01);
cmdDataArray.insert(1, 0xA2);
cmdDataArray.insert(2, 0x08);
cmdDataArray.insert(3, 0xFF);
cmdDataArray.insert(4, 0xFF);
emit on_sendCmdData_signal(cmdDataArray);
} }
//查询照片总数,以及各个视角的照片数量 // 查询温度
void ModelCameraDlg::quirePicNumAll(){ void ModelCameraDlg::quireTempe() {}
cmdDataArray.clear(); // 查询照片总数,以及各个视角的照片数量
cmdDataArray.insert(0,0x01); void ModelCameraDlg::quirePicNumAll() {
cmdDataArray.insert(1,0xA1); cmdDataArray.clear();
cmdDataArray.insert(2,0x07); cmdDataArray.insert(0, 0x01);
cmdDataArray.insert(3,0xFF); cmdDataArray.insert(1, 0xA1);
emit on_sendCmdData_signal(cmdDataArray); cmdDataArray.insert(2, 0x07);
cmdDataArray.insert(3, 0xFF);
emit on_sendCmdData_signal(cmdDataArray);
} }

@ -70,7 +70,7 @@
</property> </property>
<layout class="QHBoxLayout" name="horizontalLayout_2" stretch="2,2,5"> <layout class="QHBoxLayout" name="horizontalLayout_2" stretch="2,2,5">
<property name="spacing"> <property name="spacing">
<number>2</number> <number>8</number>
</property> </property>
<property name="leftMargin"> <property name="leftMargin">
<number>2</number> <number>2</number>
@ -146,7 +146,7 @@
</sizepolicy> </sizepolicy>
</property> </property>
<property name="buttonSymbols"> <property name="buttonSymbols">
<enum>QAbstractSpinBox::ButtonSymbols::UpDownArrows</enum> <enum>QAbstractSpinBox::ButtonSymbols::NoButtons</enum>
</property> </property>
<property name="decimals"> <property name="decimals">
<number>1</number> <number>1</number>

@ -243,4 +243,7 @@ QTableWidget::verticalHeader
border-right: 1px solid #DADADA; border-right: 1px solid #DADADA;
} }
QDoubleSpinBox
{
color:white;
}

Loading…
Cancel
Save