Browse Source

update

master
zhaohe 1 year ago
parent
commit
2c0b0f3ce6
  1. 41
      src/app/syncbox16ch/syncbox16ch.cpp
  2. 7
      src/app/syncbox16ch/syncbox16ch.h
  3. 6
      src/app/syncbox16ch/syncbox16ch_sdk.cpp
  4. 8
      src/app_version.hpp
  5. 17
      src/protocol/zfpga_commander/zfpga_commander.cpp
  6. 13
      src/protocol/zfpga_commander/zfpga_commander.hpp
  7. 1
      src/zqui/version.h

41
src/app/syncbox16ch/syncbox16ch.cpp

@ -4,6 +4,8 @@
#include "syncbox16ch_sdk.hpp"
#include "ui_syncbox16ch.h"
#include "zqui/zqui/zqui.hpp"
//
#include "app_version.hpp"
using namespace iflytop;
using namespace syncbox16chsdk;
@ -13,30 +15,43 @@ using namespace syncbox16chsdk;
SyncBox16CH::SyncBox16CH(QWidget *parent) : QWidget(parent), ui(new Ui::SyncBox16CH) {
ui->setupUi(this);
ZLOGI(TAG,"Hello");
ZLOGI(TAG, "Hello");
{
//
// ui->StateGB->hide();
ui->OutputModeVal->addItems(QStringListValueOf(WorkModeStrList()));
// ui->OutputPluseTypeVal->addItem(outputPluseType2Str(koutput_pluse_type_custom));
// ui->OutputPluseTypeVal->addItem(outputPluseType2Str(koutput_pluse_type_square_wave));
ui->OutputPluseWidthVal->setText("1");
ui->OutputPluseNumVal->setText("1");
ui->OutputPluseFreqVal->setText("1000");
}
SDK->getCmder()->regStateCbFn([this](bool connect) {
if (connect) {
ZQUI::ins()->setDeviceConnectedStatus(true);
} else {
ZQUI::ins()->setDeviceConnectedStatus(false);
}
});
SDK->getCmder()->regStateCbFn([this](bool connect) { onSubDeviceConnected(connect); });
SDK->initialize();
m_wq.startSchedule();
ZQUI::ins()->doinui([]() {
Version appv(APP_VERSION_MAIN, APP_VERSION_SUB, APP_VERSION_FIX);
ZQUI::ins()->mainW()->setVersionInfo(1, " APP_VER:", appv.toString().c_str());
});
// ZQUI::ins()->mainW()->setVersionInfo(1, "APP_VERSION", "1.0.0");
}
void SyncBox16CH::onSubDeviceConnected(bool connected) {
if (connected) {
ZQUI::ins()->setDeviceConnectedStatus(true);
m_wq.push([]() {
Version stm32v;
Version fpgav;
SDK->getCmder()->readStm32Version(stm32v);
SDK->getCmder()->readFPGAVersion(fpgav);
ZQUI::ins()->doinui([stm32v, fpgav]() {
ZQUI::ins()->mainW()->setVersionInfo(2, "STM32_VER:", stm32v.toString().c_str());
ZQUI::ins()->mainW()->setVersionInfo(3, " FPGA_VER:", fpgav.toString().c_str());
});
});
} else {
ZQUI::ins()->setDeviceConnectedStatus(false);
}
}
SyncBox16CH::~SyncBox16CH() { delete ui; }

7
src/app/syncbox16ch/syncbox16ch.h

@ -3,6 +3,8 @@
#include <QWidget>
#include "zqui/base/zworkqueue.hpp"
namespace Ui {
class SyncBox16CH;
}
@ -10,6 +12,8 @@ class SyncBox16CH;
class SyncBox16CH : public QWidget {
Q_OBJECT
iflytop::ZWorkQueue m_wq;
public:
explicit SyncBox16CH(QWidget *parent = nullptr);
~SyncBox16CH();
@ -21,7 +25,8 @@ class SyncBox16CH : public QWidget {
private:
Ui::SyncBox16CH *ui;
void onModeChange();
void onModeChange();
void onSubDeviceConnected(bool connected);
};
#endif // SYNCBOX16CH_H

6
src/app/syncbox16ch/syncbox16ch_sdk.cpp

@ -29,8 +29,4 @@ WorkMode_t WorkModeValueOf(QString str) { return WorkModeValueOf(str.toStdStri
***********************************************************************************************************************/
using namespace iflytop;
using namespace syncbox16chsdk;
void SyncBox16ChSDK::initialize() {
ZFPGACommander::ins()->initialize();
}
void SyncBox16ChSDK::initialize() { ZFPGACommander::ins()->initialize(); }

8
src/app_version.hpp

@ -0,0 +1,8 @@
#pragma once
#include "zfpga_basic_protocol\zaf_protocol.h"
#define APP_VERSION VERSION(1, 0, 0)
#define APP_VERSION_MAIN VERSION_MAIN(APP_VERSION)
#define APP_VERSION_SUB VERSION_SUB(APP_VERSION)
#define APP_VERSION_FIX VERSION_FIX(APP_VERSION)

17
src/protocol/zfpga_commander/zfpga_commander.cpp

@ -76,7 +76,11 @@ void ZFPGACommander::initialize() {
}));
m_online_detect_thread.reset(new thread([this]() {
while (true) {
this_thread::sleep_for(chrono::milliseconds(500));
if (!isconnected) {
this_thread::sleep_for(chrono::milliseconds(100));
} else {
this_thread::sleep_for(chrono::milliseconds(3000));
}
bool tostate = false;
if (ping()) {
tostate = true;
@ -214,7 +218,6 @@ shared_ptr<Receipt> ZFPGACommander::sendPacket(zaf_packet_header_t *packet, uint
void ZFPGACommander::writeReg(uint32_t regadd, uint32_t regvalue, uint32_t &regbackvalue, int32_t overtime_ms) {
lock_guard<recursive_mutex> lock(m_tx_lock);
Reginfo *reg = GetRegInfo(regadd);
if (reg->flag & kreg_flag_force_write) {
@ -229,8 +232,7 @@ void ZFPGACommander::writeReg(uint32_t regadd, uint32_t regvalue, uint32_t &regb
return;
}
void ZFPGACommander::readReg(uint32_t regadd, uint32_t &regvalue, int32_t overtime_ms) {
lock_guard<recursive_mutex> lock(m_tx_lock);
lock_guard<recursive_mutex> lock(m_tx_lock);
Reginfo *reg = GetRegInfo(regadd);
@ -326,10 +328,16 @@ void ZFPGACommander::RegInfo_Reset() {
void ZFPGACommander::readFPGAVersion(Version &version) {
uint32_t version32;
readReg(kreg_fpga_version, version32, 100);
version.main = VERSION_MAIN(version32);
version.sub = VERSION_SUB(version32);
version.fix = VERSION_FIX(version32);
}
void ZFPGACommander::readStm32Version(Version &version) {
uint32_t version32;
readReg(kreg_software_version, version32, 10);
version.main = VERSION_MAIN(version32);
version.sub = VERSION_SUB(version32);
version.fix = VERSION_FIX(version32);
}
bool ZFPGACommander::ping() {
@ -344,7 +352,6 @@ bool ZFPGACommander::ping() {
void ZFPGACommander::callcmd(uint32_t cmd, uint32_t delayms) {
lock_guard<recursive_mutex> lock(m_tx_lock);
uint8_t txdata[128] = {0};
zaf_packet_header_t *txpacket = (zaf_packet_header_t *)txdata;

13
src/protocol/zfpga_commander/zfpga_commander.hpp

@ -74,6 +74,19 @@ class Version {
uint32_t main;
uint32_t sub;
uint32_t fix;
public:
Version() {}
Version(uint32_t main, uint32_t sub, uint32_t fix) : main(main), sub(sub), fix(fix) {}
string toString() const {
stringstream ss;
ss << main << "." << sub << "." << fix;
return ss.str();
}
};
class ZFPGACommander {

1
src/zqui/version.h

@ -1 +0,0 @@
#pragma once
Loading…
Cancel
Save