Added scope reference setting. Write-only for now. UI slider works.

merge-requests/2/head
Elliott Liggett 2021-02-15 21:40:31 -08:00
rodzic 6938ed8a60
commit a0e9392617
5 zmienionych plików z 35 dodań i 4 usunięć

Wyświetl plik

@ -402,6 +402,33 @@ void rigCommander::setSpectrumCenteredMode(bool centerEnable)
prepDataAndSend(specModePayload);
}
void rigCommander::setSpectrumRefLevel(int level)
{
//qDebug() << __func__ << ": Setting scope to level " << level;
QByteArray setting;
QByteArray number;
QByteArray pn;
setting.setRawData("\x27\x19\x00", 3);
if(level >= 0)
{
pn.setRawData("\x00", 1);
number = bcdEncodeInt(level*10);
} else {
pn.setRawData("\x01", 1);
number = bcdEncodeInt( (-level)*10 );
}
setting.append(number);
setting.append(pn);
//qDebug() << __func__ << ": scope reference number: " << number << ", PN to: " << pn;
//printHex(setting, false, true);
prepDataAndSend(setting);
}
void rigCommander::getSpectrumCenterMode()
{
QByteArray specModePayload;

Wyświetl plik

@ -38,6 +38,7 @@ public slots:
void setSpectrumBounds(double startFreq, double endFreq, unsigned char edgeNumber);
void setSpectrumCenteredMode(bool centerEnable); // centered or band-wise
void getSpectrumCenterMode();
void setSpectrumRefLevel(int level);
void setScopeSpan(char span);
void getScopeSpan();
void setScopeEdge(char edge);

Wyświetl plik

@ -305,7 +305,7 @@ wfmain::wfmain(const QString serialPortCL, const QString hostCL, QWidget *parent
connect(this, SIGNAL(setMonitorLevel(unsigned char)), rig, SLOT(setMonitorLevel(unsigned char)));
connect(this, SIGNAL(setVoxGain(unsigned char)), rig, SLOT(setVoxGain(unsigned char)));
connect(this, SIGNAL(setAntiVoxGain(unsigned char)), rig, SLOT(setAntiVoxGain(unsigned char)));
connect(this, SIGNAL(setSpectrumRefLevel(int)), rig, SLOT(setSpectrumRefLevel(int)));
// Levels: handle return on query:
@ -2602,8 +2602,8 @@ void wfmain::on_micGainSlider_valueChanged(int value)
void wfmain::on_scopeRefLevelSlider_valueChanged(int value)
{
//emit setScopeRefLevel(value);
(void)value;
value = (value/5) * 5; // rounded to "nearest 5"
emit setSpectrumRefLevel(value);
}

Wyświetl plik

@ -67,7 +67,7 @@ signals:
void setMonitorLevel(unsigned char);
void setVoxGain(unsigned char);
void setAntiVoxGain(unsigned char);
void setSpectrumRefLevel(int);
void getMeters(bool isTransmitting);

Wyświetl plik

@ -552,6 +552,9 @@
<property name="singleStep">
<number>5</number>
</property>
<property name="pageStep">
<number>5</number>
</property>
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>