diff --git a/developHw.pro.user b/developHw.pro.user index 68ed03c..0825035 100644 --- a/developHw.pro.user +++ b/developHw.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId diff --git a/include/model/hardware/core/TrxBoard.h b/include/model/hardware/core/TrxBoard.h index 1ba9c4d..be59ae7 100644 --- a/include/model/hardware/core/TrxBoard.h +++ b/include/model/hardware/core/TrxBoard.h @@ -130,6 +130,7 @@ private: * scenParams; + void fpgaProgram(const QString path) const; void setScenario(ScenGenHardwareParam* scenParams); void sramClear (eSramClear clearMode); @@ -140,7 +141,7 @@ private: void scenParamsFilling(eScenParams cmd); //QList signedVector2unsignedList(QVector& sgnVec); - void afeAdcsSync (void) const; + void afeAdcsSync(void) const; template QByteArray uintLittleEndian2ByteArray(T& data) const; @@ -150,8 +151,8 @@ private: signals: void sendFramePacket(QByteArray newPacket); - void sramBinaryCreateFlag (void); - void registerCsvCompareFlag (void); + void sramBinaryCreateFlag(void); + void registerCsvCompareFlag(void); void sramVerifyMessage(QString message); public: @@ -174,8 +175,8 @@ public: void setStbCoefficient(QVector& stbLut); void setDtgcLut(QVector& dtgcLut); - void scenPlayerStart(void); - void scenPlayerStop(void); + void scenPlayerStart(bool afeHvPwrOn = false); + void scenPlayerStop(bool afeHvPwrOff = false); //void scenPlayerPause (bool pause) const; void setFramesMetaData(const QByteArray &metaData) const; @@ -235,7 +236,6 @@ public: /////////////////////////////// DMA Data Packet //////////////////////////////////// void readData(); - }; #endif //TRXBOARD_H diff --git a/include/model/hardware/core/TrxBoardUtils/PreProcessorDef.h b/include/model/hardware/core/TrxBoardUtils/PreProcessorDef.h index fd35bb7..2063672 100644 --- a/include/model/hardware/core/TrxBoardUtils/PreProcessorDef.h +++ b/include/model/hardware/core/TrxBoardUtils/PreProcessorDef.h @@ -2,9 +2,6 @@ #define PREPROCESSORDEF_H #define MPS_BOARD -#undef MPS_BOARD - -#define DEVELOP_UI -//#undef DEVELOP_UI +//#define DEVELOP_UI #endif //PREPROCESSORDEF_H diff --git a/mainwindow.cpp b/mainwindow.cpp index d8df0a7..039b2d5 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -38,20 +38,7 @@ MainWindow::MainWindow(QWidget* parent) ui->plot_2->xAxis->setLabel("Line"); ui->plot_2->yAxis->setLabel("Point"); - //ui->prg_adcSim->setVisible(false); - //ui->prg_scenarioUpload->setVisible(false); - //ui->prg_txDacUpload->setVisible(false); - //ui->prg_fpgaProgram->setVisible(false); - //ui->prg_adcLoggerFileWr->setVisible(false); - - //ui->tb_scenarioFile->setReadOnly(true); - //ui->tb_paramFile->setReadOnly(true); - //ui->tb_txDacFile->setReadOnly(true); ui->tb_fpgaBit->setReadOnly(true); - - //ui->tb_scenarioFile->setText(_settings->value(SCENARIO_FILE_PATH).value()); - //ui->tb_paramFile->setText(_settings->value(PARAM_FILE_PATH).value()); - //ui->tb_txDacFile->setText(_settings->value(TX_DAC_FILE_PATH).value()); ui->rbtn_reg->setChecked(_settings->value(REG_ACCESS_SEL).value()); ui->rbtn_offset->setChecked(!_settings->value(REG_ACCESS_SEL).value()); ui->tb_fpgaBit->setText(_settings->value(FPGA_FILE_PATH).value()); @@ -65,19 +52,7 @@ MainWindow::MainWindow(QWidget* parent) ui->tb_prbCtrlRomInfo->setPlaceholderText("info"); ui->tb_prbRomIdRead->setPlaceholderText("id(hex)"); ui->tb_prbRomImpulseRead->setPlaceholderText("impulse"); - - //connect(this, &MainWindow::updateBlockProgressValue, this, - //&MainWindow::newBlockProgressValue); - //connect(this, &MainWindow::updateFpgaProgressValue, this, &MainWindow::newFpgaProgressValue); - //connect(this, &MainWindow::updateBlockProgressVisibility, this, - //&MainWindow::newBlockProgressVisibility); - //connect(this, &MainWindow::updateFpgaProgressVisibility, this, - //&MainWindow::newFpgaProgressVisibility); - - //connect(this, &MainWindow::updateAdcLoggerProgressValue, this, - //&MainWindow::newAdcLoggerProgressValue); - //connect(this, &MainWindow::updateAdcLoggerProgressVisibility, this, - //&MainWindow::newAdcLoggerProgressVisibility); + ui->tb_scenInfo->setPlaceholderText("Scenario Information"); connect(ui->action_Exit, &QAction::triggered, this, &MainWindow::exitApp); connect(this, &MainWindow::showMessage, this, &MainWindow::newMessage); @@ -117,7 +92,10 @@ MainWindow::MainWindow(QWidget* parent) _dmaLog = false; _dmaRun = false; + _fpsFlag = false; _dmaShow = false; + _getPacket = false; + _frameCount = 0; setAfeConfig(); @@ -354,6 +332,16 @@ MainWindow::~MainWindow() /*************************************************************************************************/ void MainWindow::timeout() { + fps =static_cast(float_t(_frameCount)/(float_t(_timeout->interval())/1000.0f)); + if (ui->chk_continuousShowing->isChecked() || _fpsFlag) + { + ui->l_frameTime->setText(QString::number(fpsBuf,'g',3) + " fps"); + } + else + ui->l_frameTime->setText(QString::number(fps,'g',3) + " fps"); + _frameCount=0; + _fpsFlag = false; + auto pcie_pid = _trx.deviceId(); auto pcie_vid = _trx.vendorId(); auto pcie_id = (pcie_pid << 16) | pcie_vid; @@ -551,6 +539,7 @@ void MainWindow::timeout() color = probeDetChanInterrupt ? Qt::red : Qt::green; changeLabelTextColor(ui->l_prbDetChg, color); + if(probeDetChanInterrupt) { emit connectedPrbChange(); @@ -936,7 +925,7 @@ void MainWindow::on_btn_fpgaProgram_clicked() { auto path = ui->tb_fpgaBit->text(); - //emit programmingGif(); + //QtConcurrent::run(this, &MainWindow::gifActive); QString str = "doing"; QColor color = Qt::red; @@ -951,6 +940,10 @@ void MainWindow::on_btn_fpgaProgram_clicked() //ui->l_programming->hide(); } +void MainWindow::gifActive() +{ + //emit programmingGif(); +} /*************************************************************************************************/ void MainWindow::newMessage(QString message) { @@ -1192,11 +1185,51 @@ void MainWindow::getFramePacket(QByteArray packet) _dmaBuffer.push_back(packet); _lastBuffer = packet; _mutex.unlock(); + + quint16 batchId = ((static_cast(_lastBuffer[128])) & 0x00FF) | + (((static_cast(_lastBuffer[129])) << 8) & 0xFF00); + quint8 subBatchId = (static_cast(_lastBuffer[130])); +// quint8 frmType = (static_cast(_lastBuffer[131])); +// quint8 cri = (static_cast(_lastBuffer[132])); + +// quint16 bLine = ((static_cast(_lastBuffer[136])) & 0x00FF) | +// (((static_cast(_lastBuffer[137])) << 8) & 0xFF00); +// quint16 bPoint = ((static_cast(_lastBuffer[138])) & 0x00FF) | +// (((static_cast(_lastBuffer[139])) << 8) & 0xFF00); +// quint8 mLine = (static_cast(_lastBuffer[140])); +// quint16 mPoint = ((static_cast(_lastBuffer[141])) & 0x00FF) | +// (((static_cast(_lastBuffer[142])) << 8) & 0xFF00); + + if (subBatchId == 0) + { + _frameCount++; + if (_getPacket) + { + if (_batchIdBuff == batchId && (batchId - _batchIdBuff) > 1) + MESSAGE_BOX("The batch id error is happened."); + } + _batchIdBuff = batchId; + _getPacket = true; + } + +// if(batchId < 3) +// { +// qDebug() << "batchId" << batchId; +// qDebug() << "subBatchId" << subBatchId; +// qDebug() << "bLine" << bLine; +// qDebug() << "bPoint" << bPoint; +// qDebug() << "frmType" << frmType; +// qDebug() << "cri" << cri; +// qDebug() << "mLine" << mLine; +// qDebug() << "mPoint" << mPoint; +// } } /*************************************************************************************************/ void MainWindow::on_chk_continuousShowing_clicked() { + fpsBuf = fps; + _fpsFlag = true; if(_dmaRun && ui->chk_continuousShowing->isChecked()) { QtConcurrent::run(this, &MainWindow::on_btn_dmaShow_clicked); @@ -1221,6 +1254,7 @@ void MainWindow::fillRam(QString path) /*************************************************************************************************/ void MainWindow::on_btn_scenStart_clicked() { + _frameCount=0; try { auto str = ui->btn_scenStart->text(); @@ -1229,7 +1263,7 @@ void MainWindow::on_btn_scenStart_clicked() ui->btn_scenStart->setText("Scenario Stop"); ui->btn_emulator->setText("Emulator Start"); ui->btn_dmaLogLast->setVisible(true); - _trx.scenPlayerStart(); + _trx.scenPlayerStart(true); _dmaLog = true; _dmaRun = true; //flag _dmaBuffer.clear(); @@ -1243,7 +1277,7 @@ void MainWindow::on_btn_scenStart_clicked() ui->btn_dmaLogLast->setHidden(true); _dmaLog = false; _dmaRun = false; - _trx.scenPlayerStop(); + _trx.scenPlayerStop(true); } } catch(SonoException& e) @@ -1284,7 +1318,7 @@ void MainWindow::on_btn_emulator_clicked() _emul->transferLength = TRANSFER_LENGTH; _emul->ramBufAddress = RAM_BUFFER_OFFSET; _emul->transferRate = TRANSFER_RATE; - _emul->emulOption = functionality; + _emul->emulOption = performance; _emul->emulMode = dynamically; _trx.emulatorInit(_emul); ui->btn_emulator->setText("Emulator Stop"); @@ -1294,7 +1328,6 @@ void MainWindow::on_btn_emulator_clicked() _dmaLog = true; _dmaRun = true; _dmaBuffer.clear(); - //QtConcurrent::run(this, &MainWindow::logPcie); } else { @@ -1369,7 +1402,7 @@ void MainWindow::logPcie() QFile file(path); file.open(QIODevice::WriteOnly); - //file.write(temp); + file.write(temp); file.close(); emit sendLogCount(_dmaLogCount, progress); @@ -1455,7 +1488,7 @@ void MainWindow::show3d() quint8 mLine = (static_cast(temp[140])); quint16 mPoint = ((static_cast(temp[141])) & 0x00FF) | (((static_cast(temp[142])) << 8) & 0xFF00); - if(bLine > 256) + if(bLine > 256*8) { qDebug() << "ERROR :: (B Line)" << bLine; @@ -1474,6 +1507,7 @@ void MainWindow::show3d() return; } + qDebug() << "batchId" << batchId; qDebug() << "subBatchId" << subBatchId; qDebug() << "bLine" << bLine; @@ -1513,7 +1547,7 @@ void MainWindow::show3d() } //qDebug() << "indx" << indx; //qDebug() << "max" << max; - qDebug() << ui->plot_2->plotLayout()->hasElement(0, 1); + //qDebug() << ui->plot_2->plotLayout()->hasElement(0, 1); if(!ui->plot_2->plotLayout()->hasElement(0, 1)) { @@ -2559,9 +2593,31 @@ void MainWindow::on_btn_scenBrowse_clicked() auto selectedPath = fileDialog.selectedFiles()[0]; ui->tb_scenFilesPath->setText(selectedPath); _settings->setValue(SCENARIO_FILE_PATH, selectedPath); + ui->tb_scenInfo->clear(); } } +/*************************************************************************************************/ +void MainWindow::on_btn_scenInfo_clicked() +{ + QString scenInfo = "/hardware/systemCheckParam.csv"; + QString path = ui->tb_scenFilesPath->text() + scenInfo; + + QFile sysFile(path); + if(sysFile.fileName().isEmpty()) + { + throw SonoException("No file is selected"); + } + if(!sysFile.open(QIODevice::ReadOnly)) + { + throw SonoException("Couldn't open system check param file programming"); + } + + QTextStream checkParam(&sysFile); + QString systemStr = checkParam.readAll(); + ui->tb_scenInfo->setPlainText(systemStr); +} + /*************************************************************************************************/ void MainWindow::on_btn_setAtgcMode_clicked() { @@ -3108,5 +3164,8 @@ void MainWindow::setAfeConfig() /*************************************************************************************************/ void MainWindow::exitApp() { + auto str = ui->btn_scenStart->text(); + if(str == "Scenario Stop") + on_btn_scenStart_clicked(); this->QWidget::close(); } diff --git a/mainwindow.h b/mainwindow.h index 98d3ad8..1a02a04 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -20,6 +20,7 @@ #include #include #include +#include #include "qcustomplot.h" #include "include/model/hardware/core/TrxBoard.h" @@ -57,11 +58,11 @@ #define ENABLE "Enable" #define DISABLE "Disable" -#define TRANSFER_LENGTH 4 * 1024 * 1024 +#define TRANSFER_LENGTH 128 * 1024 #define TRANSFER_RATE 30.0f #define RAM_BUFFER_OFFSET 0U -#define ULTIMATE_LOG_COUNT 100000 +#define ULTIMATE_LOG_COUNT 50 QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } @@ -117,7 +118,7 @@ private: PrbCase* _prb; - AfeConfig _afeConfig; + AfeConfig _afeConfig; void setScenarioCompare(const QString& scenPath); @@ -147,21 +148,29 @@ private: void getProbeColor (const QBrush brush, const int item); + void gifActive(void); + QString _logFolder = "/home/hasis/Desktop/TrxBoardFile/_log/dma/"; QString _emulFolder = "/home/hasis/Desktop/Develop_HardwareTest/developHw/sram_frame.bin"; QVector _dmaBuffer; QByteArray _lastBuffer; qint32 _dmaLogCount; + quint16 _frameCount; + quint16 _batchIdBuff; + double_t fps; + double_t fpsBuf; bool _dmaLog; bool _dmaRun; bool _dmaShow; + bool _getPacket; + bool _fpsFlag; // QString _adcloggerFolder = "/home/hasis/Desktop/TrxBoardFile/_log/adc/"; // bool _csvReadStopFlag = false; // bool _adcLoggerDone = false; // bool _adcLoggerTrnsDone = false; - +// uncrustify off private slots: void exitApp(); @@ -359,6 +368,8 @@ private slots: void on_btn_prbRomIdRead_clicked(); + void on_btn_scenInfo_clicked(); + signals: // void updateBlockProgressValue(int percentage, QProgressBar* prg); // void updateFpgaProgressValue(int percentage); diff --git a/mainwindow.ui b/mainwindow.ui index 4016ac5..b1d371f 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -23,13 +23,25 @@ 331 + + + 75 + true + true + false + false + + + + ArrowCursor + - 2 + 4 - + Manual Operation @@ -60,6 +72,15 @@ 135 + + + 50 + true + false + false + false + + Register Rd/Wr @@ -107,7 +128,7 @@ 550 70 - 175 + 187 27 @@ -320,8 +341,11 @@ 50 + true false false + false + false @@ -391,6 +415,12 @@ 23 + + + 75 + true + + Program @@ -410,7 +440,7 @@ - + Scen Player @@ -418,11 +448,20 @@ 440 - 190 + 200 351 101 + + + 50 + true + false + false + false + + Manual ATgc @@ -500,11 +539,20 @@ 0 - 190 + 200 321 101 + + + 50 + true + false + false + false + + Afe Regs Ctrl @@ -588,7 +636,7 @@ 0 10 791 - 171 + 181 @@ -612,8 +660,11 @@ 50 + true false false + false + false @@ -651,15 +702,25 @@ - 690 + 680 70 - 92 + 100 52 + + + 75 + true + true + false + false + false + + Set Scenario @@ -688,15 +749,25 @@ - 460 + 440 70 - 222 + 235 102 + + + 50 + true + false + false + false + false + + Scenario Verification @@ -837,6 +908,37 @@ + + Scen Info + + + + + 10 + 20 + 153 + 23 + + + + Scenario Information + + + + + + 170 + 20 + 331 + 241 + + + + true + + + + Frame @@ -849,6 +951,15 @@ 25 + + + 50 + true + false + false + false + + InstantLog @@ -862,6 +973,15 @@ 21 + + + 50 + true + false + false + false + + <html><head/><body><p><span style=" font-size:8pt; font-weight:600; font-style:italic;">3D as default</span></p></body></html> @@ -874,7 +994,7 @@ 670 220 - 101 + 112 23 @@ -897,7 +1017,7 @@ 670 10 - 101 + 110 23 @@ -914,6 +1034,15 @@ 25 + + + 50 + true + false + false + false + + Show @@ -927,6 +1056,15 @@ 25 + + + 50 + true + false + false + false + + Log Browse @@ -934,12 +1072,21 @@ - 660 + 670 250 - 121 + 114 23 + + + 50 + true + false + false + false + + Emulator Browse @@ -953,6 +1100,15 @@ 21 + + + 50 + true + false + false + false + + <html><head/><body><p><span style=" font-size:7pt; font-weight:600; font-style:italic;">Continuous Frame Represent</span></p></body></html> @@ -961,7 +1117,7 @@ - + E2PROMs @@ -2036,7 +2192,7 @@ 720 - 40 + 50 91 109 @@ -2091,6 +2247,22 @@ + + + + 740 + 30 + 61 + 16 + + + + <html><head/><body><p><span style=" font-size:7pt; font-weight:600; font-style:italic;">Frame per second</span></p></body></html> + + + FPS + + diff --git a/src/model/hardware/core/TrxBoard.cpp b/src/model/hardware/core/TrxBoard.cpp index 960c194..a3a9bdf 100644 --- a/src/model/hardware/core/TrxBoard.cpp +++ b/src/model/hardware/core/TrxBoard.cpp @@ -24,7 +24,7 @@ T TrxBoard::byteArray2UintLittleEndian(QByteArray& byte) const void TrxBoard::readData() { - _swCounter = 0; + _swCounter = _device.getCounter(); while(_run) { auto cnt = _device.getCounter(); @@ -49,11 +49,9 @@ void TrxBoard::readData() auto temp = QByteArray::fromRawData(_device.getBufferPtr(_swCounter), BUFFER_SIZE); #ifdef DEVELOP_UI - //packetEngine.newData(temp); emit sendFramePacket(temp); #else packetEngine.newData(temp); - //emit sendFramePacket(temp); #endif _swCounter++; @@ -281,6 +279,33 @@ void TrxBoard::init() sramClear(all); } +void TrxBoard::fpgaProgram(const QString path) const +{ + if(MOUNTED_SLAVE_FPGA <= 0 || MOUNTED_SLAVE_FPGA >= 8) + { + throw SonoException("Wrong mounted slave fpga is selected"); + } + + QByteArray bitFileData; + QFile bitFile(path); + bitFileData.clear(); + + if(bitFile.fileName().isEmpty()) + { + throw SonoException("No file is selected"); + } + + if(!bitFile.open(QIODevice::ReadOnly)) + { + throw SonoException("Couldn't open bit file programming"); + } + + bitFileData = bitFile.readAll(); + bitFile.close(); + + this->_fpgaProgram->program(bitFileData, MOUNTED_SLAVE_FPGA); +} + void TrxBoard::setProbeDependParams(ScenPrbDepHardwareParam& prbDepParams) { /////////////////////////// DSP setting /////////////////////////// @@ -370,6 +395,12 @@ void TrxBoard::setScenario(ScenGenHardwareOutput_t& scenGenHw) "The scenario end index must be greater than or equal to the scenario start index"); } + if(scenParams->scenarioEndIndex != (scenParams->totalTxShotNumber - 1)) + { + throw SonoException( + "The scenario end index must be equal to the total tx shot number minus one"); + } + scenParams->hwRegister->blendWeight = scenGenHw.hwRegister.blendWeight; if(scenParams->hwRegister->blendWeight.size() != BLENDWEIGHT_LUT_MAX) { @@ -887,29 +918,7 @@ void TrxBoard::slaveFpgaProgram(const QString path) { scenParamsFilling(clear); - if(MOUNTED_SLAVE_FPGA <= 0 || MOUNTED_SLAVE_FPGA >= 8) - { - throw SonoException("Wrong mounted slave fpga is selected"); - } - - QByteArray bitFileData; - QFile bitFile(path); - bitFileData.clear(); - - if(bitFile.fileName().isEmpty()) - { - throw SonoException("No file is selected"); - } - - if(!bitFile.open(QIODevice::ReadOnly)) - { - throw SonoException("Couldn't open bit file programming"); - } - - bitFileData = bitFile.readAll(); - bitFile.close(); - - this->_fpgaProgram->program(bitFileData, MOUNTED_SLAVE_FPGA); + fpgaProgram (path); afeAdcsSync(); } @@ -919,15 +928,16 @@ void TrxBoard::setBeamFormerMode(eClkMode mode) const this->_clkDistributer->clockMode(CLOCK_DIVISION, mode); } -void TrxBoard::scenPlayerStart(void) +/* set afeHvPwrOn true when unfreeze happen */ +void TrxBoard::scenPlayerStart(bool afeHvPwrOn) { if(_allow) { _run = false; - this->_beamFormerSlave0->regValid(true); - this->_beamFormerSlave1->regValid(true); - this->_beamFormerSlave2->regValid(true); + this->_beamFormerSlave0->regValid(true); + this->_beamFormerSlave1->regValid(true); + this->_beamFormerSlave2->regValid(true); this->_misc->setGtSendMode(BfMode); @@ -937,13 +947,21 @@ void TrxBoard::scenPlayerStart(void) this->_device.startDma(); + if(afeHvPwrOn) + { + this->_afeSlave0->setAfeGblPwr(afePwrdnDisable); + this->_afeSlave1->setAfeGblPwr(afePwrdnDisable); + this->_afeSlave2->setAfeGblPwr(afePwrdnDisable); + + this->_bCtrlMngt->timerShot(20); + //uncrustify off + while(!(this->_bCtrlMngt->checkTimeout())); + //uncrustify on + #ifdef MPS_BOARD - this->_bCtrlMngt->mpsDacsOn(); + this->_bCtrlMngt->mpsDacsOn(); #endif - - this->_afeSlave0->setAfeGblPwr(afePwrdnDisable); - this->_afeSlave1->setAfeGblPwr(afePwrdnDisable); - this->_afeSlave2->setAfeGblPwr(afePwrdnDisable); + } this->_scenPlayer->control.setCommand(true); @@ -957,7 +975,8 @@ void TrxBoard::scenPlayerStart(void) } } -void TrxBoard::scenPlayerStop(void) +/* set afeHvPwrOff true when freeze happen */ +void TrxBoard::scenPlayerStop(bool afeHvPwrOff) { _run = false; @@ -965,13 +984,21 @@ void TrxBoard::scenPlayerStop(void) this->_scenPlayer->control.setCommand(false); - this->_afeSlave0->setAfeGblPwr(afePwrdnEnable); - this->_afeSlave1->setAfeGblPwr(afePwrdnEnable); - this->_afeSlave2->setAfeGblPwr(afePwrdnEnable); + if(afeHvPwrOff) + { + this->_afeSlave0->setAfeGblPwr(afePwrdnEnable); + this->_afeSlave1->setAfeGblPwr(afePwrdnEnable); + this->_afeSlave2->setAfeGblPwr(afePwrdnEnable); #ifdef MPS_BOARD - this->_bCtrlMngt->mpsDacsOff(); + this->_bCtrlMngt->mpsDacsOff(); #endif + + this->_bCtrlMngt->timerShot(20); + //uncrustify off + while(!(this->_bCtrlMngt->checkTimeout())); + //uncrustify on + } } //void TrxBoard::scenPlayerPause(bool pause) const @@ -990,7 +1017,7 @@ void TrxBoard::fillRam(QString path) { if(this->_scenPlayer->control.getCommand()) { - scenPlayerStop(); + scenPlayerStop(true); } emulatorStop(); @@ -1404,7 +1431,7 @@ void TrxBoard::selectProbe(eSelectProbe prbSel) { if(this->_scenPlayer->control.getCommand()) { - scenPlayerStop(); + scenPlayerStop(true); } this->_bCtrlMngt->setProbeSelect(prbSel); } diff --git a/src/model/hardware/core/register/boardsCtrlMngt/BoardsCtrlMngt.cpp b/src/model/hardware/core/register/boardsCtrlMngt/BoardsCtrlMngt.cpp index 054958e..3475e65 100644 --- a/src/model/hardware/core/register/boardsCtrlMngt/BoardsCtrlMngt.cpp +++ b/src/model/hardware/core/register/boardsCtrlMngt/BoardsCtrlMngt.cpp @@ -29,8 +29,7 @@ BoardsCtrlMngt::Gain::Gain() } /***************************************************************************************************/ -/************************************* Write Functions Template - ************************************/ +/************************************* Write Functions Template ************************************/ /***************************************************************************************************/ template void BoardsCtrlMngt::eepromWrite(QByteArray& arr, @@ -60,7 +59,7 @@ void BoardsCtrlMngt::eepromWrite(QByteArray& arr, timerStop(); - timerShot(5); //must be >= 4 + timerShot(6); //must be >= 4 while(!checkTimeout()) { ; @@ -77,7 +76,7 @@ void BoardsCtrlMngt::eepromWrite(QByteArray& arr, done = ((status->reqDone->getValue()) != 0); error = ((status->reqError->getValue()) != 0); - timerShot(1); + timerShot(5); while(!error && !done) { status->sync(); @@ -112,8 +111,7 @@ void BoardsCtrlMngt::setEepromWrite(EepromReq* _rom, T3* request) } /***************************************************************************************************/ -/************************************* Read Functions Template - *************************************/ +/************************************* Read Functions Template *************************************/ /***************************************************************************************************/ template @@ -154,7 +152,7 @@ QByteArray BoardsCtrlMngt::eepromRead(quint32 addr, done = ((status->reqDone->getValue()) != 0); error = ((status->reqError->getValue()) != 0); - timerShot(1); + timerShot(5); while(!error && !done) { status->sync();