Added some ATU structure

audioplugins
Elliott Liggett 2018-11-16 23:13:59 -08:00
rodzic 36b10d4100
commit ab477db944
4 zmienionych plików z 51 dodań i 1 usunięć

Wyświetl plik

@ -583,16 +583,28 @@ void rigCommander::sendLevelCmd(unsigned char levAddr, unsigned char level)
void rigCommander::parseRegisters1C() void rigCommander::parseRegisters1C()
{ {
// PTT lives here // PTT lives here
// Not sure if 02 is the right place to switch.
// TODO: test this function
switch(payloadIn[02]) switch(payloadIn[02])
{ {
case '\x00': case '\x00':
parsePTT(); parsePTT();
break; break;
case '\x01':
parseATU();
// ATU status
break;
default: default:
break; break;
} }
} }
void rigCommander::parseATU()
{
// TODO
// emit haveATUStatus(payload [??] );
}
void rigCommander::parsePTT() void rigCommander::parsePTT()
{ {
// read after payloadIn[02] // read after payloadIn[02]
@ -884,6 +896,25 @@ void rigCommander::startATU()
prepDataAndSend(payload); prepDataAndSend(payload);
} }
void rigCommander::setATU(bool enabled)
{
QByteArray payload;
if(enabled)
{
payload.setRawData("\x1C\x01\x01", 3);
} else {
payload.setRawData("\x1C\x01\x00", 3);
}
prepDataAndSend(payload);
}
void rigCommander::getATUStatus()
{
QByteArray payload("\x1C\x01");
prepDataAndSend(payload);
}
QByteArray rigCommander::stripData(const QByteArray &data, unsigned char cutPosition) QByteArray rigCommander::stripData(const QByteArray &data, unsigned char cutPosition)
{ {
QByteArray rtndata; QByteArray rtndata;

Wyświetl plik

@ -46,6 +46,8 @@ public slots:
void setRfGain(unsigned char level); void setRfGain(unsigned char level);
void setAfGain(unsigned char level); void setAfGain(unsigned char level);
void startATU(); void startATU();
void setATU(bool enabled);
void getATUStatus();
void setCIVAddr(unsigned char civAddr); void setCIVAddr(unsigned char civAddr);
void handleNewData(const QByteArray &data); void handleNewData(const QByteArray &data);
void getDebug(); void getDebug();
@ -64,6 +66,7 @@ signals:
void getMoreDebug(); void getMoreDebug();
void finished(); void finished();
void havePTTStatus(bool pttOn); void havePTTStatus(bool pttOn);
void haveATUStatus(unsigned char status);
private: private:
@ -81,6 +84,7 @@ private:
void parseBandStackReg(); void parseBandStackReg();
void parseRegisters1C(); void parseRegisters1C();
void parsePTT(); void parsePTT();
void parseATU();
void parseLevels(); // register 0x14 void parseLevels(); // register 0x14
void sendLevelCmd(unsigned char levAddr, unsigned char level); void sendLevelCmd(unsigned char levAddr, unsigned char level);
void sendDataOut(); void sendDataOut();

Wyświetl plik

@ -86,6 +86,8 @@ wfmain::wfmain(QWidget *parent) :
connect(rig, SIGNAL(haveRfGain(unsigned char)), this, SLOT(receiveRfGain(unsigned char))); connect(rig, SIGNAL(haveRfGain(unsigned char)), this, SLOT(receiveRfGain(unsigned char)));
connect(rig, SIGNAL(haveAfGain(unsigned char)), this, SLOT(receiveAfGain(unsigned char))); connect(rig, SIGNAL(haveAfGain(unsigned char)), this, SLOT(receiveAfGain(unsigned char)));
connect(this, SIGNAL(startATU()), rig, SLOT(startATU())); connect(this, SIGNAL(startATU()), rig, SLOT(startATU()));
connect(this, SIGNAL(setATU(bool)), rig, SLOT(setATU(bool)));
// Plot user interaction // Plot user interaction
connect(plot, SIGNAL(mouseDoubleClick(QMouseEvent*)), this, SLOT(handlePlotDoubleClick(QMouseEvent*))); connect(plot, SIGNAL(mouseDoubleClick(QMouseEvent*)), this, SLOT(handlePlotDoubleClick(QMouseEvent*)));
@ -1024,5 +1026,15 @@ void wfmain::on_tuneNowBtn_clicked()
{ {
emit startATU(); emit startATU();
showStatusBarText("Starting ATU cycle..."); showStatusBarText("Starting ATU cycle...");
}
void wfmain::on_tuneEnableChk_clicked(bool checked)
{
emit setATU(checked);
if(checked)
{
showStatusBarText("Turning on ATU");
} else {
showStatusBarText("Turning off ATU");
}
} }

Wyświetl plik

@ -41,6 +41,7 @@ signals:
void setRfGain(unsigned char level); void setRfGain(unsigned char level);
void setAfGain(unsigned char level); void setAfGain(unsigned char level);
void startATU(); void startATU();
void setATU(bool atuEnabled);
void spectOutputEnable(); void spectOutputEnable();
void spectOutputDisable(); void spectOutputDisable();
void scopeDisplayEnable(); void scopeDisplayEnable();
@ -160,6 +161,8 @@ private slots:
void on_tuneNowBtn_clicked(); void on_tuneNowBtn_clicked();
void on_tuneEnableChk_clicked(bool checked);
private: private:
Ui::wfmain *ui; Ui::wfmain *ui;
QCustomPlot *plot; // line plot QCustomPlot *plot; // line plot