diff --git a/.vscode/settings.json b/.vscode/settings.json
index b4e875c..3b20dbb 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -82,7 +82,8 @@
"qcategoryaxis": "cpp",
"qaction": "cpp",
"qthread": "cpp",
- "qlineseries": "cpp"
+ "qlineseries": "cpp",
+ "qsplineseries": "cpp"
},
"files.autoGuessEncoding": true,
}
\ No newline at end of file
diff --git a/libxsync b/libxsync
index 66f7b45..5a72f42 160000
--- a/libxsync
+++ b/libxsync
@@ -1 +1 @@
-Subproject commit 66f7b456ad321d5c0d02472444e2a5a18001abc6
+Subproject commit 5a72f427d6aaeae4d1ebd58797c07e02275e5769
diff --git a/mainwindow.cpp b/mainwindow.cpp
index 82f4b74..ec36c08 100644
--- a/mainwindow.cpp
+++ b/mainwindow.cpp
@@ -322,8 +322,6 @@ void MainWindow::construct_reg_table() { //
push_reg(ui->gridLayoutWidget, regoff++, "record_sig_gen_ttlin_trigger_sig_source", reg::record_sig_gen_ttlin_trigger_sig_source, 0, kreg_val_type_decimal);
push_reg(ui->gridLayoutWidget, regoff++, "record_sig_gen_ttlin_trigger_level", reg::record_sig_gen_ttlin_trigger_level, 0, kreg_val_type_decimal);
- push_reg(ui->gridLayoutWidget, regoff++, "record_sig_gen_exposure_time", reg::record_sig_gen_exposure_time, 0, kreg_val_type_decimal);
- push_reg(ui->gridLayoutWidget, regoff++, "record_sig_gen_exposure_offset_time", reg::record_sig_gen_exposure_offset_time, 0, kreg_val_type_decimal);
push_reg(ui->gridLayoutWidget, regoff++, "record_sig_gen_manual_ctrl", reg::record_sig_gen_manual_ctrl, 0, kreg_val_type_decimal);
push_reg(ui->gridLayoutWidget, regoff++, "record_sig_gen_timecode_snapshot0", reg::record_sig_gen_timecode_snapshot0, 0, kreg_val_type_decimal);
push_reg(ui->gridLayoutWidget, regoff++, "record_sig_gen_timecode_snapshot1", reg::record_sig_gen_timecode_snapshot1, 0, kreg_val_type_decimal);
@@ -331,6 +329,11 @@ void MainWindow::construct_reg_table() { //
push_reg(ui->gridLayoutWidget, regoff++, "camera_sync_module", reg::camera_sync_module, 0, kreg_val_type_hex);
push_reg(ui->gridLayoutWidget, regoff++, "camera_sync_pulse_mode_valid_len", reg::camera_sync_pulse_mode_valid_len, 0, kreg_val_type_decimal);
+ push_reg(ui->gridLayoutWidget, regoff++, "delayer_module", reg::delayer_module, 0, kreg_val_type_hex);
+ push_reg(ui->gridLayoutWidget, regoff++, "delayer_delay_sig_index", reg::delayer_delay_sig_index, 0, kreg_val_type_decimal);
+ push_reg(ui->gridLayoutWidget, regoff++, "delayer_delay_us", reg::delayer_delay_us, 0, kreg_val_type_decimal);
+
+
auto qrect = ui->gridLayoutWidget->geometry();
qrect.setHeight(31 * regoff - 1);
@@ -381,6 +384,9 @@ void MainWindow::UI_TTLPageConstruct() {
list.push_back(QString::fromStdString(SignalType2Str(SIGNAL_SYS_TIMECODE_FREQ_OUTPUT)));
list.push_back(QString::fromStdString(SignalType2Str(SIGNAL_BUSINESS_RECORD_SIG)));
list.push_back(QString::fromStdString(SignalType2Str(SIGNAL_BUSINESS_RECORD_EXPOSURE_SIG)));
+ list.push_back(QString::fromStdString(SignalType2Str(SIGNAL_BUSINESS_RECORD_EN_RSING_EDGE)));
+ list.push_back(QString::fromStdString(SignalType2Str(SIGNAL_BUSINESS_RECORD_EN_FALLING_EDGE)));
+ list.push_back(QString::fromStdString(SignalType2Str(SIGNAL_BUSINESS_RECORD_EN_EDGE)));
ui->TTLOutputModule_SrcSigType_1->clear();
ui->TTLOutputModule_SrcSigType_1->addItems(list);
@@ -393,6 +399,26 @@ void MainWindow::UI_TTLPageConstruct() {
ui->TTLOutputModule_SrcSigType_4->clear();
ui->TTLOutputModule_SrcSigType_4->addItems(list);
+
+ ui->TTLOutputModule_TriggerEdge_1->clear();
+ ui->TTLOutputModule_TriggerEdge_1->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_RISING)));
+ ui->TTLOutputModule_TriggerEdge_1->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_FALLING)));
+ ui->TTLOutputModule_TriggerEdge_1->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_BOTH)));
+
+ ui->TTLOutputModule_TriggerEdge_2->clear();
+ ui->TTLOutputModule_TriggerEdge_2->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_RISING)));
+ ui->TTLOutputModule_TriggerEdge_2->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_FALLING)));
+ ui->TTLOutputModule_TriggerEdge_2->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_BOTH)));
+
+ ui->TTLOutputModule_TriggerEdge_3->clear();
+ ui->TTLOutputModule_TriggerEdge_3->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_RISING)));
+ ui->TTLOutputModule_TriggerEdge_3->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_FALLING)));
+ ui->TTLOutputModule_TriggerEdge_3->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_BOTH)));
+
+ ui->TTLOutputModule_TriggerEdge_4->clear();
+ ui->TTLOutputModule_TriggerEdge_4->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_RISING)));
+ ui->TTLOutputModule_TriggerEdge_4->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_FALLING)));
+ ui->TTLOutputModule_TriggerEdge_4->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_BOTH)));
}
void MainWindow::UI_GenlockPageConstruct() {
//
@@ -418,6 +444,11 @@ void MainWindow::UI_SysClockPageConstruct() {
ui->SysClock_Src->addItem(QString::fromStdString(SignalType2Str(SIGNAL_INTERNAL_CLOCK_SIG)));
ui->SysClock_Src->addItem(QString::fromStdString(SignalType2Str(SIGNAL_SYS_GENLOCK_OUTPUT)));
ui->SysClock_Src->addItem(QString::fromStdString(SignalType2Str(SIGNAL_SYS_TIMECODE_FREQ_OUTPUT)));
+
+ ui->SysClock_TriggerEdge->clear();
+ ui->SysClock_TriggerEdge->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_RISING)));
+ ui->SysClock_TriggerEdge->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_FALLING)));
+ ui->SysClock_TriggerEdge->addItem(QString::fromStdString(TriggerEdge2Str(TRIGGER_EDGE_BOTH)));
}
void MainWindow::UI_RecordSigGenConstruct() {
ui->RecordSigGenerator_ContrlMode->clear();
@@ -644,6 +675,9 @@ void MainWindow::on_tabWidget_currentChanged(int index) {
}
void MainWindow::on_TTLPage_Read_clicked() {
+ /*******************************************************************************
+ * TTL输入页面 *
+ *******************************************************************************/
{
float freq1 = 0;
float freq2 = 0;
@@ -662,107 +696,184 @@ void MainWindow::on_TTLPage_Read_clicked() {
ui->TTLinModule_ttl_freq_4->setText(QString::number(freq4, 'f', 2));
}
- SignalType_t source;
- uint32_t div;
- uint32_t multi;
- float infreq;
- float outfreq;
+ /*******************************************************************************
+ * TTL输出组件 *
+ *******************************************************************************/
+
+ SignalType_t source;
+ TriggerEdge_t edge;
+ uint32_t div;
+ uint32_t multi;
+
+ uint32_t PluseWidth;
+ uint32_t OffsetTime;
+ uint32_t outPolarity;
+
+ float infreq;
+ float outfreq;
{
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule1_getSrcSigType(source));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule1_getFreqDivision(div));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule1_getFreqMultiplication(multi));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule1_readInFreq(infreq));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule1_readOutFreq(outfreq));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getSrcSigType(1, source));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getTriggerEdge(1, edge));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getFreqDivision(1, div));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getFreqMultiplication(1, multi));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getPluseWidth(1, PluseWidth));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getOffsetTime(1, OffsetTime));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getPolarity(1, outPolarity));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_readInFreq(1, infreq));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_readOutFreq(1, outfreq));
ui->TTLOutputModule_SrcSigType_1->setCurrentText(QString::fromStdString(SignalType2Str(source)));
+ ui->TTLOutputModule_TriggerEdge_1->setCurrentText(QString::fromStdString(TriggerEdge2Str(edge)));
ui->TTLOutputModule_FreqDivision_1->setText(QString::number(div));
ui->TTLOutputModule_FreqMultiplication_1->setText(QString::number(multi));
+ ui->TTLOutputModule_PluseWidth_1->setText(QString::number(PluseWidth));
+ ui->TTLOutputModule_OffsetTime_1->setText(QString::number(OffsetTime));
+ ui->TTLOutputModule_Polarity_1->setText(QString::number(outPolarity));
+
ui->TTLOutputModule_InFreq_1->setText(QString::number(infreq, 'f', 2));
ui->TTLOutputModule_OutFreq_1->setText(QString::number(outfreq, 'f', 2));
}
{
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule2_getSrcSigType(source));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule2_getFreqDivision(div));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule2_getFreqMultiplication(multi));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule2_readInFreq(infreq));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule2_readOutFreq(outfreq));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getSrcSigType(2, source));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getTriggerEdge(2, edge));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getFreqDivision(2, div));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getFreqMultiplication(2, multi));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getPluseWidth(2, PluseWidth));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getOffsetTime(2, OffsetTime));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getPolarity(2, outPolarity));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_readInFreq(2, infreq));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_readOutFreq(2, outfreq));
ui->TTLOutputModule_SrcSigType_2->setCurrentText(QString::fromStdString(SignalType2Str(source)));
+ ui->TTLOutputModule_TriggerEdge_2->setCurrentText(QString::fromStdString(TriggerEdge2Str(edge)));
ui->TTLOutputModule_FreqDivision_2->setText(QString::number(div));
ui->TTLOutputModule_FreqMultiplication_2->setText(QString::number(multi));
+ ui->TTLOutputModule_PluseWidth_2->setText(QString::number(PluseWidth));
+ ui->TTLOutputModule_OffsetTime_2->setText(QString::number(OffsetTime));
+ ui->TTLOutputModule_Polarity_2->setText(QString::number(outPolarity));
+
ui->TTLOutputModule_InFreq_2->setText(QString::number(infreq, 'f', 2));
ui->TTLOutputModule_OutFreq_2->setText(QString::number(outfreq, 'f', 2));
}
{
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule3_getSrcSigType(source));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule3_getFreqDivision(div));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule3_getFreqMultiplication(multi));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule3_readInFreq(infreq));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule3_readOutFreq(outfreq));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getSrcSigType(3, source));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getTriggerEdge(3, edge));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getFreqDivision(3, div));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getFreqMultiplication(3, multi));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getPluseWidth(3, PluseWidth));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getOffsetTime(3, OffsetTime));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getPolarity(3, outPolarity));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_readInFreq(3, infreq));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_readOutFreq(3, outfreq));
ui->TTLOutputModule_SrcSigType_3->setCurrentText(QString::fromStdString(SignalType2Str(source)));
+ ui->TTLOutputModule_TriggerEdge_3->setCurrentText(QString::fromStdString(TriggerEdge2Str(edge)));
ui->TTLOutputModule_FreqDivision_3->setText(QString::number(div));
ui->TTLOutputModule_FreqMultiplication_3->setText(QString::number(multi));
+ ui->TTLOutputModule_PluseWidth_3->setText(QString::number(PluseWidth));
+ ui->TTLOutputModule_OffsetTime_3->setText(QString::number(OffsetTime));
+ ui->TTLOutputModule_Polarity_3->setText(QString::number(outPolarity));
+
ui->TTLOutputModule_InFreq_3->setText(QString::number(infreq, 'f', 2));
ui->TTLOutputModule_OutFreq_3->setText(QString::number(outfreq, 'f', 2));
}
{
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule4_getSrcSigType(source));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule4_getFreqDivision(div));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule4_getFreqMultiplication(multi));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule4_readInFreq(infreq));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule4_readOutFreq(outfreq));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getSrcSigType(4, source));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getTriggerEdge(4, edge));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getFreqDivision(4, div));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getFreqMultiplication(4, multi));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getPluseWidth(4, PluseWidth));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getOffsetTime(4, OffsetTime));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_getPolarity(4, outPolarity));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_readInFreq(4, infreq));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_readOutFreq(4, outfreq));
ui->TTLOutputModule_SrcSigType_4->setCurrentText(QString::fromStdString(SignalType2Str(source)));
+ ui->TTLOutputModule_TriggerEdge_4->setCurrentText(QString::fromStdString(TriggerEdge2Str(edge)));
ui->TTLOutputModule_FreqDivision_4->setText(QString::number(div));
ui->TTLOutputModule_FreqMultiplication_4->setText(QString::number(multi));
+ ui->TTLOutputModule_PluseWidth_4->setText(QString::number(PluseWidth));
+ ui->TTLOutputModule_OffsetTime_4->setText(QString::number(OffsetTime));
+ ui->TTLOutputModule_Polarity_4->setText(QString::number(outPolarity));
+
ui->TTLOutputModule_InFreq_4->setText(QString::number(infreq, 'f', 2));
ui->TTLOutputModule_OutFreq_4->setText(QString::number(outfreq, 'f', 2));
}
}
void MainWindow::on_TTLPage_Write_clicked() {
{
- auto source = Str2SignalType(ui->TTLOutputModule_SrcSigType_1->currentText().toStdString());
- auto div = ui->TTLOutputModule_FreqDivision_1->text().toUInt();
- auto multi = ui->TTLOutputModule_FreqMultiplication_1->text().toUInt();
-
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule1_setSrcSigType(source));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule1_setFreqDivision(div));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule1_setFreqMultiplication(multi));
+ auto source = Str2SignalType(ui->TTLOutputModule_SrcSigType_1->currentText().toStdString());
+ auto edge = Str2TriggerEdge(ui->TTLOutputModule_TriggerEdge_1->currentText().toStdString());
+ auto div = ui->TTLOutputModule_FreqDivision_1->text().toUInt();
+ auto multi = ui->TTLOutputModule_FreqMultiplication_1->text().toUInt();
+ auto PluseWidth = ui->TTLOutputModule_PluseWidth_1->text().toUInt();
+ auto OffsetTime = ui->TTLOutputModule_OffsetTime_1->text().toUInt();
+ auto outPolarity = ui->TTLOutputModule_Polarity_1->text().toUInt();
+
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setSrcSigType(1, source));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setTriggerEdge(1, edge));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setFreqDivision(1, div));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setFreqMultiplication(1, multi));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setPluseWidth(1, PluseWidth));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setOffsetTime(1, OffsetTime));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setPolarity(1, outPolarity));
}
{
- auto source = Str2SignalType(ui->TTLOutputModule_SrcSigType_2->currentText().toStdString());
- auto div = ui->TTLOutputModule_FreqDivision_2->text().toUInt();
- auto multi = ui->TTLOutputModule_FreqMultiplication_2->text().toUInt();
-
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule2_setSrcSigType(source));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule2_setFreqDivision(div));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule2_setFreqMultiplication(multi));
+ auto source = Str2SignalType(ui->TTLOutputModule_SrcSigType_2->currentText().toStdString());
+ auto edge = Str2TriggerEdge(ui->TTLOutputModule_TriggerEdge_2->currentText().toStdString());
+ auto div = ui->TTLOutputModule_FreqDivision_2->text().toUInt();
+ auto multi = ui->TTLOutputModule_FreqMultiplication_2->text().toUInt();
+ auto PluseWidth = ui->TTLOutputModule_PluseWidth_2->text().toUInt();
+ auto OffsetTime = ui->TTLOutputModule_OffsetTime_2->text().toUInt();
+ auto outPolarity = ui->TTLOutputModule_Polarity_2->text().toUInt();
+
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setSrcSigType(2, source));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setTriggerEdge(2, edge));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setFreqDivision(2, div));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setFreqMultiplication(2, multi));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setPluseWidth(2, PluseWidth));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setOffsetTime(2, OffsetTime));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setPolarity(2, outPolarity));
}
-
{
- auto source = Str2SignalType(ui->TTLOutputModule_SrcSigType_3->currentText().toStdString());
- auto div = ui->TTLOutputModule_FreqDivision_3->text().toUInt();
- auto multi = ui->TTLOutputModule_FreqMultiplication_3->text().toUInt();
-
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule3_setSrcSigType(source));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule3_setFreqDivision(div));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule3_setFreqMultiplication(multi));
+ auto source = Str2SignalType(ui->TTLOutputModule_SrcSigType_3->currentText().toStdString());
+ auto edge = Str2TriggerEdge(ui->TTLOutputModule_TriggerEdge_3->currentText().toStdString());
+ auto div = ui->TTLOutputModule_FreqDivision_3->text().toUInt();
+ auto multi = ui->TTLOutputModule_FreqMultiplication_3->text().toUInt();
+ auto PluseWidth = ui->TTLOutputModule_PluseWidth_3->text().toUInt();
+ auto OffsetTime = ui->TTLOutputModule_OffsetTime_3->text().toUInt();
+ auto outPolarity = ui->TTLOutputModule_Polarity_3->text().toUInt();
+
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setSrcSigType(3, source));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setTriggerEdge(3, edge));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setFreqDivision(3, div));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setFreqMultiplication(3, multi));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setPluseWidth(3, PluseWidth));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setOffsetTime(3, OffsetTime));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setPolarity(3, outPolarity));
}
{
- auto source = Str2SignalType(ui->TTLOutputModule_SrcSigType_4->currentText().toStdString());
- auto div = ui->TTLOutputModule_FreqDivision_4->text().toUInt();
- auto multi = ui->TTLOutputModule_FreqMultiplication_4->text().toUInt();
-
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule4_setSrcSigType(source));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule4_setFreqDivision(div));
- DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule4_setFreqMultiplication(multi));
+ auto source = Str2SignalType(ui->TTLOutputModule_SrcSigType_4->currentText().toStdString());
+ auto edge = Str2TriggerEdge(ui->TTLOutputModule_TriggerEdge_4->currentText().toStdString());
+ auto div = ui->TTLOutputModule_FreqDivision_4->text().toUInt();
+ auto multi = ui->TTLOutputModule_FreqMultiplication_4->text().toUInt();
+ auto PluseWidth = ui->TTLOutputModule_PluseWidth_4->text().toUInt();
+ auto OffsetTime = ui->TTLOutputModule_OffsetTime_4->text().toUInt();
+ auto outPolarity = ui->TTLOutputModule_Polarity_4->text().toUInt();
+
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setSrcSigType(4, source));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setTriggerEdge(4, edge));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setFreqDivision(4, div));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setFreqMultiplication(4, multi));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setPluseWidth(4, PluseWidth));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setOffsetTime(4, OffsetTime));
+ DO_XSYNC_FUNC(XsyncIns()->TTLOutputModule_setPolarity(4, outPolarity));
}
}
@@ -772,6 +883,11 @@ void MainWindow::on_GenlockPage_Read_clicked() {
DO_XSYNC_FUNC(XsyncIns()->InternalGenlock_getFormat(format));
ui->InternalGenlock_Format->setCurrentText(QString::fromStdString(GenlockFormatToStr(format)));
}
+ {
+ float freq;
+ DO_XSYNC_FUNC(XsyncIns()->InternalGenlock_readFreq(freq));
+ ui->InternalGenlock_Freq->setText(QString::number(freq, 'f', 2));
+ }
{
float freq;
@@ -811,6 +927,12 @@ void MainWindow::on_SysClockPage_Read_clicked() {
}
{
+ float freq;
+ DO_XSYNC_FUNC(XsyncIns()->InternalClock_readOutFreq(freq));
+ ui->InternalClock_OutFreq->setText(QString::number(freq, 'f', 2));
+ }
+
+ {
SignalType_t src;
DO_XSYNC_FUNC(XsyncIns()->SysClock_getSrc(src));
ui->SysClock_Src->setCurrentText(QString::fromStdString(SignalType2Str(src)));
@@ -839,6 +961,12 @@ void MainWindow::on_SysClockPage_Read_clicked() {
DO_XSYNC_FUNC(XsyncIns()->SysClock_readOutSigFreq(freq));
ui->SysClock_OutSigFreq->setText(QString::number(freq, 'f', 2));
}
+
+ {
+ TriggerEdge_t edge;
+ DO_XSYNC_FUNC(XsyncIns()->SysClock_getTriggerEdge(edge));
+ ui->SysClock_TriggerEdge->setCurrentText(QString::fromStdString(TriggerEdge2Str(edge)));
+ }
}
void MainWindow::on_SysClockPage_Wirte_clicked() {
{
@@ -860,6 +988,11 @@ void MainWindow::on_SysClockPage_Wirte_clicked() {
auto multi = ui->SysClock_FreqMultiplication->text().toUInt();
DO_XSYNC_FUNC(XsyncIns()->SysClock_setFreqMultiplication(multi));
}
+
+ {
+ TriggerEdge_t edge = Str2TriggerEdge(ui->SysClock_TriggerEdge->currentText().toStdString());
+ DO_XSYNC_FUNC(XsyncIns()->SysClock_setTriggerEdge(edge));
+ }
}
void MainWindow::on_RecordSigGen_Read_clicked() {
@@ -881,8 +1014,6 @@ void MainWindow::on_RecordSigGen_Read_clicked() {
DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_getTimecodeCtrlFlag(autoStart, autoStop));
DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_getExternalTTLTriggerSrc(ttlPortNum));
DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_getExternalTTLTriggerPolarity(polarity));
- DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_getRecordExposureTime(exposureTime));
- DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_getRecordExposureOffsetTime(exposureOffsetTime));
DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_getRecordState(state));
DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_readTimecodeSnapshot(timecode_snapshot));
@@ -893,21 +1024,21 @@ void MainWindow::on_RecordSigGen_Read_clicked() {
ui->RecordSigGenerator_TimecodeCtrlFlag1->setChecked(autoStop);
ui->RecordSigGenerator_ExternalTTLTriggerSrc->setCurrentText(QString::fromStdString(InputInterface2Str(ttlPortNum)));
ui->RecordSigGenerator_ExternalTTLTriggerPolarity->setText(QString::number(polarity));
- ui->RecordSigGenerator_RecordExposureTime->setText(QString::number(exposureTime));
- ui->RecordSigGenerator_RecordExposureOffsetTime->setText(QString::number(exposureOffsetTime));
+ // ui->RecordSigGenerator_RecordExposureTime->setText(QString::number(exposureTime));
+ // ui->RecordSigGenerator_RecordExposureOffsetTime->setText(QString::number(exposureOffsetTime));
ui->RecordSigGenerator_RecordState->setText(QString::number(state));
ui->RecordSigGenerator_TimecodeSnapshot->setText(QString(XsyncTimecodeToStr(timecode_snapshot).c_str()));
}
void MainWindow::on_RecordSigGen_Write_clicked() {
- ControlMode_t mode = Str2ControlMode(ui->RecordSigGenerator_ContrlMode->currentText().toStdString());
- XsyncTimecode_t autoStartTimecode = Str2XsyncTimecode(ui->RecordSigGenerator_AutoStartTimecode->text().toStdString());
- XsyncTimecode_t autoStopTimecode = Str2XsyncTimecode(ui->RecordSigGenerator_AutoStopTimecode->text().toStdString());
- uint32_t autoStart = ui->RecordSigGenerator_TimecodeCtrlFlag0->isChecked();
- uint32_t autoStop = ui->RecordSigGenerator_TimecodeCtrlFlag1->isChecked();
- InputInterface_t ttlPortNum = Str2InputInterface(ui->RecordSigGenerator_ExternalTTLTriggerSrc->currentText().toStdString());
- uint32_t polarity = ui->RecordSigGenerator_ExternalTTLTriggerPolarity->text().toUInt();
- uint32_t exposureTime = ui->RecordSigGenerator_RecordExposureTime->text().toUInt();
- uint32_t exposureOffsetTime = ui->RecordSigGenerator_RecordExposureOffsetTime->text().toUInt();
+ ControlMode_t mode = Str2ControlMode(ui->RecordSigGenerator_ContrlMode->currentText().toStdString());
+ XsyncTimecode_t autoStartTimecode = Str2XsyncTimecode(ui->RecordSigGenerator_AutoStartTimecode->text().toStdString());
+ XsyncTimecode_t autoStopTimecode = Str2XsyncTimecode(ui->RecordSigGenerator_AutoStopTimecode->text().toStdString());
+ uint32_t autoStart = ui->RecordSigGenerator_TimecodeCtrlFlag0->isChecked();
+ uint32_t autoStop = ui->RecordSigGenerator_TimecodeCtrlFlag1->isChecked();
+ InputInterface_t ttlPortNum = Str2InputInterface(ui->RecordSigGenerator_ExternalTTLTriggerSrc->currentText().toStdString());
+ uint32_t polarity = ui->RecordSigGenerator_ExternalTTLTriggerPolarity->text().toUInt();
+ // uint32_t exposureTime = ui->RecordSigGenerator_RecordExposureTime->text().toUInt();
+ // uint32_t exposureOffsetTime = ui->RecordSigGenerator_RecordExposureOffsetTime->text().toUInt();
// RecordSigGenerator_readTimecodeSnapshot
@@ -917,8 +1048,8 @@ void MainWindow::on_RecordSigGen_Write_clicked() {
DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_setTimecodeCtrlFlag(autoStart, autoStop));
DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_setExternalTTLTriggerSrc(ttlPortNum));
DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_setExternalTTLTriggerPolarity(polarity));
- DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_setRecordExposureTime(exposureTime));
- DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_setRecordExposureOffsetTime(exposureOffsetTime));
+ // DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_setRecordExposureTime(exposureTime));
+ // DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_setRecordExposureOffsetTime(exposureOffsetTime));
}
void MainWindow::on_RecordSigGenerator_manualStart_clicked() { DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_manualStart()); }
void MainWindow::on_RecordSigGenerator_manualStop_clicked() { DO_XSYNC_FUNC(XsyncIns()->RecordSigGenerator_manualStop()); }
@@ -960,3 +1091,23 @@ void MainWindow::on_Reboot_clicked() { DO_XSYNC_FUNC(XsyncIns()->reboot()); }
void MainWindow::on_InternalSigSrouce_start_clicked() { DO_XSYNC_FUNC(XsyncIns()->InternalSigSrouce_start()); }
void MainWindow::on_InternalSigSrouce_stop_clicked() { DO_XSYNC_FUNC(XsyncIns()->InternalSigSrouce_stop()); }
+
+void MainWindow::on_DelayContrl_Read_clicked() {
+ uint32_t DelayContrl_InputDelay;
+ uint32_t DelayContrl_OutputDelay;
+
+ DO_XSYNC_FUNC(XsyncIns()->DelayContrl_getInputDelay(DelayContrl_InputDelay));
+ DO_XSYNC_FUNC(XsyncIns()->DelayContrl_getOutputDelay(DelayContrl_OutputDelay));
+
+ ui->DelayContrl_InputDelay->setText(QString::number(DelayContrl_InputDelay));
+ ui->DelayContrl_OutputDelay->setText(QString::number(DelayContrl_OutputDelay));
+}
+
+void MainWindow::on_DelayContrl_Update_clicked() {
+ uint32_t DelayContrl_InputDelay = ui->DelayContrl_InputDelay->text().toUInt();
+ uint32_t DelayContrl_OutputDelay = ui->DelayContrl_OutputDelay->text().toUInt();
+
+ DO_XSYNC_FUNC(XsyncIns()->DelayContrl_setInputDelay(DelayContrl_InputDelay));
+ DO_XSYNC_FUNC(XsyncIns()->DelayContrl_setOutputDelay(DelayContrl_OutputDelay));
+
+}
diff --git a/mainwindow.h b/mainwindow.h
index f2a2942..01799c2 100644
--- a/mainwindow.h
+++ b/mainwindow.h
@@ -102,7 +102,9 @@ class MainWindow : public QMainWindow {
void on_tabWidget_currentChanged(int index);
-
+ void on_DelayContrl_Read_clicked();
+ void on_DelayContrl_Update_clicked();
+
void on_TTLPage_Read_clicked();
void on_TTLPage_Write_clicked();
@@ -127,7 +129,7 @@ class MainWindow : public QMainWindow {
void on_InternalSigSrouce_stop_clicked();
-signals:
+ signals:
void append_log_signal(QString str);
void updateUI_timeCodeInfo_signal(QString);
void updateUI_cameraSyncInfo_signal(QString);
diff --git a/mainwindow.ui b/mainwindow.ui
index 728f798..b9f0dc6 100644
--- a/mainwindow.ui
+++ b/mainwindow.ui
@@ -6,8 +6,8 @@
0
0
- 1135
- 897
+ 1314
+ 907
@@ -204,7 +204,7 @@
- 1
+ 6
@@ -366,744 +366,1112 @@
- 20
+ 10
210
- 401
- 211
+ 301
+ 341
TTL_OUT_1
-
-
-
- 20
- 30
- 61
- 31
-
-
-
- source
-
-
-
-
-
- 70
- 30
- 211
- 31
-
-
-
- -1
-
-
-
-
-
- 70
- 70
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 70
- 110
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 20
- 70
- 61
- 31
-
-
-
- 分频
-
-
-
-
-
- 20
- 110
- 61
- 31
-
-
-
- 倍频
-
-
-
-
-
- 110
- 160
- 61
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 320
- 160
- 61
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 20
- 160
- 81
- 31
-
-
-
- 输入信号频率
-
-
-
-
-
- 230
- 160
- 81
- 31
-
-
-
- 输出信号频率
-
-
-
-
-
-
- 440
- 210
- 401
- 211
-
-
-
- TTL_OUT_2
-
-
-
-
- 20
- 30
- 61
- 31
-
-
-
- source
-
-
-
-
-
- 70
- 30
- 211
- 31
-
-
-
- -1
-
-
-
-
-
- 70
- 70
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 70
- 110
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 20
- 70
- 61
- 31
-
-
-
- 分频
-
-
-
-
-
- 20
- 110
- 61
- 31
-
-
-
- 倍频
-
-
-
-
-
- 110
- 160
- 61
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 320
- 160
- 61
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 20
- 160
- 81
- 31
-
-
-
- 输入信号频率
-
-
-
-
-
- 230
- 160
- 81
- 31
-
-
-
- 输出信号频率
-
-
+
+ -
+
+
+ 倍频
+
+
+
+ -
+
+
+ OffsetTime
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ 输出信号频率
+
+
+
+ -
+
+
+ TriggerEdge
+
+
+
+ -
+
+
+ source
+
+
+
+ -
+
+
+ PluseWidth
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 输入信号频率
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 分频
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ OutPolarity
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+
-
+
- 20
- 430
- 401
- 211
+ 440
+ 30
+ 101
+ 31
-
- TTL_OUT_3
+
+ Read
-
-
-
- 20
- 30
- 61
- 31
-
-
-
- source
-
-
-
-
-
- 70
- 30
- 211
- 31
-
-
-
- -1
-
-
-
-
-
- 70
- 70
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 70
- 110
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 20
- 70
- 61
- 31
-
-
-
- 分频
-
-
-
-
-
- 20
- 110
- 61
- 31
-
-
-
- 倍频
-
-
-
-
-
- 110
- 160
- 61
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 320
- 160
- 61
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 20
- 160
- 81
- 31
-
-
-
- 输入信号频率
-
-
-
-
-
- 230
- 160
- 81
- 31
-
-
-
- 输出信号频率
-
-
-
+
+
+
+ 440
+ 70
+ 101
+ 31
+
+
+
+ Write
+
+
+
- 440
- 430
- 401
- 211
+ 330
+ 210
+ 301
+ 341
- TTL_OUT_4
+ TTL_OUT_2
-
-
-
- 20
- 30
- 61
- 31
-
-
-
- source
-
-
-
-
-
- 70
- 30
- 211
- 31
-
-
-
- -1
-
-
-
-
-
- 70
- 70
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 70
- 110
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 20
- 70
- 61
- 31
-
-
-
- 分频
-
-
-
-
-
- 20
- 110
- 61
- 31
-
-
-
- 倍频
-
-
-
-
-
- 110
- 160
- 61
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 320
- 160
- 61
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 20
- 160
- 81
- 31
-
-
-
- 输入信号频率
-
-
-
-
-
- 230
- 160
- 81
- 31
-
-
-
- 输出信号频率
-
-
+
+ -
+
+
+ 分频
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 输出信号频率
+
+
+
+ -
+
+
+ source
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+ 倍频
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ TriggerEdge
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ OffsetTime
+
+
+
+ -
+
+
+ 输入信号频率
+
+
+
+ -
+
+
+ PluseWidth
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ OutPolarity
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+
-
+
- 440
- 30
- 101
- 31
+ 650
+ 210
+ 301
+ 341
-
- Read
+
+ TTL_OUT_3
+
+ -
+
+
+ OffsetTime
+
+
+
+ -
+
+
+ PluseWidth
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 输入信号频率
+
+
+
+ -
+
+
+ 分频
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ TriggerEdge
+
+
+
+ -
+
+
+ 倍频
+
+
+
+ -
+
+
+ source
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ 输出信号频率
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ OutPolarity
+
+
+
+
-
+
- 440
- 70
- 101
- 31
+ 970
+ 210
+ 301
+ 341
-
- Write
+
+ TTL_OUT_4
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+ 输出信号频率
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ PluseWidth
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ 输入信号频率
+
+
+
+ -
+
+
+ TriggerEdge
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ OffsetTime
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+ source
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 倍频
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 分频
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ OutPolarity
+
+
+
+
@@ -1636,7 +2004,7 @@
20
30
261
- 91
+ 131
@@ -1668,6 +2036,41 @@
Format
+
+
+
+ 100
+ 80
+ 151
+ 31
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+
+
+ 20
+ 80
+ 41
+ 31
+
+
+
+ Freq
+
+
@@ -1675,7 +2078,7 @@
300
30
221
- 91
+ 131
@@ -1684,8 +2087,8 @@
- 20
- 20
+ 10
+ 80
41
31
@@ -1698,7 +2101,7 @@
60
- 20
+ 80
151
31
@@ -1721,7 +2124,7 @@
160
- 160
+ 200
271
121
@@ -1799,117 +2202,205 @@
- 130
- 170
- 401
- 211
+ 70
+ 210
+ 254
+ 187
SYS_CLK
-
-
-
- 20
- 30
- 61
- 31
-
-
-
- source
-
-
-
-
-
- 70
- 30
- 211
- 31
-
-
-
- -1
-
-
-
-
-
- 70
- 70
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 70
- 110
- 211
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 20
- 70
- 61
- 31
-
-
-
- 分频
-
-
-
+
+ -
+
+
+ source
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+ 分频
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 倍频
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 触发边沿
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ -1
+
+
+
+ -
+
+
+ 输入信号频率
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 输出信号频率
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+
+
+ 390
+ 40
+ 271
+ 121
+
+
+
+ 内部时钟发生器
+
+
- 20
- 110
- 61
+ 10
+ 20
+ 41
31
- 倍频
+ Freq
-
+
- 110
- 160
- 61
+ 90
+ 20
+ 151
31
@@ -1926,12 +2417,12 @@
false
-
+
- 320
- 160
- 61
+ 90
+ 60
+ 151
31
@@ -1948,78 +2439,17 @@
false
-
-
-
- 20
- 160
- 81
- 31
-
-
-
- 输入信号频率
-
-
-
-
-
- 230
- 160
- 81
- 31
-
-
-
- 输出信号频率
-
-
-
-
-
-
- 390
- 40
- 221
- 81
-
-
-
- 内部时钟发生器
-
-
+
10
- 20
- 41
- 31
-
-
-
- Freq
-
-
-
-
-
- 50
- 20
- 151
+ 60
+ 71
31
-
-
- 75
- true
-
-
-
-
-
- false
+ DetectFreq
@@ -2367,89 +2797,6 @@
-
-
-
- 430
- 20
- 271
- 111
-
-
-
- 曝光信号配置
-
-
-
-
- 20
- 20
- 81
- 31
-
-
-
- 曝光时间(us)
-
-
-
-
-
- 20
- 60
- 81
- 31
-
-
-
- 偏移时间(us)
-
-
-
-
-
- 110
- 60
- 141
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
-
-
- 110
- 20
- 141
- 31
-
-
-
-
- 75
- true
-
-
-
-
-
-
- false
-
-
-
@@ -2582,7 +2929,7 @@
0
0
- 1074
+ 1253
10000
@@ -2851,6 +3198,118 @@
InternalSigSrouce_stop
+
+
+
+ 510
+ 200
+ 231
+ 151
+
+
+
+ GroupBox
+
+
+ -
+
+
+ 输入延迟
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+
+ 75
+ true
+
+
+
+
+
+
+ false
+
+
+
+ -
+
+
+ 输出延迟
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ 读取数值
+
+
+
+ -
+
+
+
+ 0
+ 25
+
+
+
+ 写入数值
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+
+
@@ -2889,7 +3348,7 @@
0
0
- 1135
+ 1314
23