|
@ -123,15 +123,42 @@ void MainWindow::updatePage() { |
|
|
UPDATE(4); |
|
|
UPDATE(4); |
|
|
#undef UPDATE
|
|
|
#undef UPDATE
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
{ |
|
|
|
|
|
InternalSig src; |
|
|
|
|
|
uint32_t width; |
|
|
|
|
|
uint32_t offset; |
|
|
|
|
|
float duty; |
|
|
|
|
|
float freq; |
|
|
|
|
|
|
|
|
|
|
|
#define UPDATE(index) \
|
|
|
|
|
|
src = InternalSig(ui->LightSrcX_TriSrc_##index->currentText().toStdString()); \ |
|
|
|
|
|
width = ui->LightSrcX_TriggerModePluseWidth_##index->text().toUInt(); \ |
|
|
|
|
|
offset = ui->LightSrcX_TriggerModeFirstPluseOffset_##index->text().toUInt(); \ |
|
|
|
|
|
duty = ui->LightSrcX_LightIntensityDuty_##index->text().toFloat(); \ |
|
|
|
|
|
freq = ui->LightSrcX_LightDriverFreq_##index->text().toFloat(); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_setTriSrc(index, src)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_setTriggerModePluseWidth(index, width)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_setTriggerModeFirstPluseOffset(index, offset)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_setLightIntensityDuty(index, duty)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_setLightDriverFreq(index, freq)); |
|
|
|
|
|
|
|
|
|
|
|
UPDATE(1); |
|
|
|
|
|
UPDATE(2); |
|
|
|
|
|
UPDATE(3); |
|
|
|
|
|
UPDATE(4); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
void MainWindow::refreshReadonlyPage() { |
|
|
void MainWindow::refreshReadonlyPage() { |
|
|
zaf_error_code_t ecode; |
|
|
zaf_error_code_t ecode; |
|
|
|
|
|
|
|
|
|
|
|
if (!G_QTDataChannel.isOpen()) { |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
{ |
|
|
{ |
|
|
float TriOutSignalFreq; |
|
|
float TriOutSignalFreq; |
|
|
ecode = m_clstc->InterClk_readTriOutSignalFreq(TriOutSignalFreq); |
|
|
|
|
|
if (ecode != kaf_ec_success) return; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DO(m_clstc->InterClk_readTriOutSignalFreq(TriOutSignalFreq)); |
|
|
ui->InterClk_TriOutSignalFreq_Text->setText(QString::number(TriOutSignalFreq, 'f', 2)); |
|
|
ui->InterClk_TriOutSignalFreq_Text->setText(QString::number(TriOutSignalFreq, 'f', 2)); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -152,9 +179,32 @@ void MainWindow::refreshReadonlyPage() { |
|
|
|
|
|
|
|
|
#undef UPDATE
|
|
|
#undef UPDATE
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 刷新光源时序控制页面
|
|
|
|
|
|
{ |
|
|
|
|
|
float infreq; |
|
|
|
|
|
float outfreq; |
|
|
|
|
|
uint32_t state; |
|
|
|
|
|
|
|
|
|
|
|
#define UPDATE(index) \
|
|
|
|
|
|
DO(m_clstc->LightSrcX_readInSigFreqDetect(index, infreq)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_readOutSigFreqDetect(index, outfreq)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_readLightSrcErrorState(index, state)); \ |
|
|
|
|
|
ui->LightSrcX_InSigFreqDetect_##index->setText(QString::number(infreq, 'f', 2)); \ |
|
|
|
|
|
ui->LightSrcX_OutSigFreqDetect_##index->setText(QString::number(outfreq, 'f', 2)); \ |
|
|
|
|
|
ui->LightSrcX_LightSrcErrorState_##index->setText(QString::number(state)); |
|
|
|
|
|
|
|
|
|
|
|
UPDATE(1); |
|
|
|
|
|
UPDATE(2); |
|
|
|
|
|
UPDATE(3); |
|
|
|
|
|
UPDATE(4); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
void MainWindow::refreshPage() { |
|
|
void MainWindow::refreshPage() { |
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* 刷新内部触发源页面 * |
|
|
|
|
|
*******************************************************************************/ |
|
|
{ |
|
|
{ |
|
|
float Freq; |
|
|
float Freq; |
|
|
uint32_t PluseCnt; |
|
|
uint32_t PluseCnt; |
|
@ -171,7 +221,9 @@ void MainWindow::refreshPage() { |
|
|
ui->InterClk_SeqCtrlPluseCntMax_Text->setText(QString::number(SeqCtrlPluseCntMax)); |
|
|
ui->InterClk_SeqCtrlPluseCntMax_Text->setText(QString::number(SeqCtrlPluseCntMax)); |
|
|
ui->InterClk_TriOutSignalFreq_Text->setText(QString::number(TriOutSignalFreq, 'f', 2)); |
|
|
ui->InterClk_TriOutSignalFreq_Text->setText(QString::number(TriOutSignalFreq, 'f', 2)); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* 刷新外部触发源页面 * |
|
|
|
|
|
*******************************************************************************/ |
|
|
{ |
|
|
{ |
|
|
ExtTriggerSrcType src; |
|
|
ExtTriggerSrcType src; |
|
|
SigProcessMode mode; |
|
|
SigProcessMode mode; |
|
@ -210,6 +262,41 @@ void MainWindow::refreshPage() { |
|
|
|
|
|
|
|
|
#undef UPDATE
|
|
|
#undef UPDATE
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 刷新光源时序控制页面
|
|
|
|
|
|
{ |
|
|
|
|
|
InternalSig src; |
|
|
|
|
|
uint32_t width; |
|
|
|
|
|
uint32_t offset; |
|
|
|
|
|
float duty; |
|
|
|
|
|
float freq; |
|
|
|
|
|
uint32_t state; |
|
|
|
|
|
float infreq; |
|
|
|
|
|
float outfreq; |
|
|
|
|
|
|
|
|
|
|
|
#define UPDATE(index) \
|
|
|
|
|
|
DO(m_clstc->LightSrcX_getTriSrc(index, src)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_getTriggerModePluseWidth(index, width)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_getTriggerModeFirstPluseOffset(index, offset)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_getLightIntensityDuty(index, duty)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_getLightDriverFreq(index, freq)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_readLightSrcErrorState(index, state)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_readInSigFreqDetect(index, infreq)); \ |
|
|
|
|
|
DO(m_clstc->LightSrcX_readOutSigFreqDetect(index, outfreq)); \ |
|
|
|
|
|
ui->LightSrcX_TriSrc_##index->setCurrentText(QString::fromStdString(src.toString())); \ |
|
|
|
|
|
ui->LightSrcX_TriggerModePluseWidth_##index->setText(QString::number(width)); \ |
|
|
|
|
|
ui->LightSrcX_TriggerModeFirstPluseOffset_##index->setText(QString::number(offset)); \ |
|
|
|
|
|
ui->LightSrcX_LightIntensityDuty_##index->setText(QString::number(duty, 'f', 2)); \ |
|
|
|
|
|
ui->LightSrcX_LightDriverFreq_##index->setText(QString::number(freq, 'f', 2)); \ |
|
|
|
|
|
ui->LightSrcX_LightSrcErrorState_##index->setText(QString::number(state)); \ |
|
|
|
|
|
ui->LightSrcX_InSigFreqDetect_##index->setText(QString::number(infreq, 'f', 2)); \ |
|
|
|
|
|
ui->LightSrcX_OutSigFreqDetect_##index->setText(QString::number(outfreq, 'f', 2)); |
|
|
|
|
|
|
|
|
|
|
|
UPDATE(1); |
|
|
|
|
|
UPDATE(2); |
|
|
|
|
|
UPDATE(3); |
|
|
|
|
|
UPDATE(4); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
void MainWindow::constructUI() { |
|
|
void MainWindow::constructUI() { |
|
@ -374,6 +461,74 @@ void MainWindow::constructUI() { |
|
|
ui->TriInX_Mode_Val_4->addItem(QString::fromStdString(SigProcessMode(SigProcessMode::TRANSPARENT_MODE).toString())); |
|
|
ui->TriInX_Mode_Val_4->addItem(QString::fromStdString(SigProcessMode(SigProcessMode::TRANSPARENT_MODE).toString())); |
|
|
ui->TriInX_TriggerModeTriggerEdge_Val_4->addItem(QString::fromStdString(TriggerEdge(TriggerEdge::RISING).toString())); |
|
|
ui->TriInX_TriggerModeTriggerEdge_Val_4->addItem(QString::fromStdString(TriggerEdge(TriggerEdge::RISING).toString())); |
|
|
ui->TriInX_TriggerModeTriggerEdge_Val_4->addItem(QString::fromStdString(TriggerEdge(TriggerEdge::FALLING).toString())); |
|
|
ui->TriInX_TriggerModeTriggerEdge_Val_4->addItem(QString::fromStdString(TriggerEdge(TriggerEdge::FALLING).toString())); |
|
|
|
|
|
|
|
|
|
|
|
ui->TriInX_InSignalFreq_Val_1->setDisabled(true); |
|
|
|
|
|
ui->TriInX_InSignalFreq_Val_2->setDisabled(true); |
|
|
|
|
|
ui->TriInX_InSignalFreq_Val_3->setDisabled(true); |
|
|
|
|
|
ui->TriInX_InSignalFreq_Val_4->setDisabled(true); |
|
|
|
|
|
|
|
|
|
|
|
ui->TriInX_OutSignalFreq_Val_1->setDisabled(true); |
|
|
|
|
|
ui->TriInX_OutSignalFreq_Val_2->setDisabled(true); |
|
|
|
|
|
ui->TriInX_OutSignalFreq_Val_3->setDisabled(true); |
|
|
|
|
|
ui->TriInX_OutSignalFreq_Val_4->setDisabled(true); |
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* 光源时序配置 * |
|
|
|
|
|
*******************************************************************************/ |
|
|
|
|
|
|
|
|
|
|
|
QStringList LightSrcX_TriSrc_QStringList; |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::LOGIC0).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::LOGIC1).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::INTERNAL_TRIGGER).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::INTERNAL_TRIGGER_I1).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::INTERNAL_TRIGGER_I2).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::INTERNAL_TRIGGER_I3).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::INTERNAL_TRIGGER_I4).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_1).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_1_I1).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_1_I2).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_1_I3).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_1_I4).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_2).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_2_I1).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_2_I2).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_2_I3).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_2_I4).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_3).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_3_I1).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_3_I2).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_3_I3).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_3_I4).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_4).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_4_I1).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_4_I2).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_4_I3).toString())); |
|
|
|
|
|
LightSrcX_TriSrc_QStringList.append(QString::fromStdString(InternalSig(InternalSig::EXT_TRIGGER_4_I4).toString())); |
|
|
|
|
|
|
|
|
|
|
|
ui->LightSrcX_TriSrc_1->addItems(LightSrcX_TriSrc_QStringList); |
|
|
|
|
|
ui->LightSrcX_TriSrc_2->addItems(LightSrcX_TriSrc_QStringList); |
|
|
|
|
|
ui->LightSrcX_TriSrc_3->addItems(LightSrcX_TriSrc_QStringList); |
|
|
|
|
|
ui->LightSrcX_TriSrc_4->addItems(LightSrcX_TriSrc_QStringList); |
|
|
|
|
|
|
|
|
|
|
|
ui->LightSrcX_InSigFreqDetect_1->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_InSigFreqDetect_2->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_InSigFreqDetect_3->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_InSigFreqDetect_4->setDisabled(true); |
|
|
|
|
|
|
|
|
|
|
|
ui->LightSrcX_OutSigFreqDetect_1->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_OutSigFreqDetect_2->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_OutSigFreqDetect_3->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_OutSigFreqDetect_4->setDisabled(true); |
|
|
|
|
|
|
|
|
|
|
|
ui->LightSrcX_LightSrcErrorState_1->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_LightSrcErrorState_2->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_LightSrcErrorState_3->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_LightSrcErrorState_4->setDisabled(true); |
|
|
|
|
|
|
|
|
|
|
|
ui->LightSrcX_LightDriverFreq_1->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_LightDriverFreq_2->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_LightDriverFreq_3->setDisabled(true); |
|
|
|
|
|
ui->LightSrcX_LightDriverFreq_4->setDisabled(true); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { |
|
|
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { |
|
|