mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-03-31 16:38:35 -04:00
Don't allow a partial transmission in Echo mode. Fix RA, Dec, and Tsky
returned by astro(). git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5548 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
934e11e1a1
commit
cdf8a27296
@ -44,6 +44,8 @@ subroutine astro(nyear,month,nday,uth,freq8,Mygrid, &
|
|||||||
|
|
||||||
call MoonDopJPL(nyear,month,nday,uth,lon,lat,RAMoon,DecMoon, &
|
call MoonDopJPL(nyear,month,nday,uth,lon,lat,RAMoon,DecMoon, &
|
||||||
LST,HA,AzMoon,ElMoon,vr,techo)
|
LST,HA,AzMoon,ElMoon,vr,techo)
|
||||||
|
RAMoon=rad*RAMoon
|
||||||
|
DecMoon=rad*DecMoon
|
||||||
dist=2.99792458d5*techo/2.d0
|
dist=2.99792458d5*techo/2.d0
|
||||||
|
|
||||||
! Compute spatial polarization offset
|
! Compute spatial polarization offset
|
||||||
@ -59,7 +61,7 @@ subroutine astro(nyear,month,nday,uth,freq8,Mygrid, &
|
|||||||
longecl_half=nint(rad*el/2.0)
|
longecl_half=nint(rad*el/2.0)
|
||||||
if(longecl_half.lt.1 .or. longecl_half.gt.180) longecl_half=180
|
if(longecl_half.lt.1 .or. longecl_half.gt.180) longecl_half=180
|
||||||
t144=nt144(longecl_half)
|
t144=nt144(longecl_half)
|
||||||
tsky=(t144-2.7)*(144.0/freq8)**2.6 + 2.7 !Tsky for obs freq
|
tsky=(t144-2.7)*(144.0d6/freq8)**2.6 + 2.7 !Tsky for obs freq
|
||||||
|
|
||||||
xdop(NStation)=doppler
|
xdop(NStation)=doppler
|
||||||
if(NStation.eq.2) then
|
if(NStation.eq.2) then
|
||||||
|
@ -408,6 +408,7 @@ MainWindow::MainWindow(bool multiple, QSettings * settings, QSharedMemory *shdme
|
|||||||
m_bTxTime=false;
|
m_bTxTime=false;
|
||||||
m_rxDone=false;
|
m_rxDone=false;
|
||||||
m_bHaveTransmitted=false;
|
m_bHaveTransmitted=false;
|
||||||
|
m_bEchoTxOK=false;
|
||||||
m_bTransmittedEcho=false;
|
m_bTransmittedEcho=false;
|
||||||
|
|
||||||
signalMeter = new SignalMeter(ui->meterFrame);
|
signalMeter = new SignalMeter(ui->meterFrame);
|
||||||
@ -963,6 +964,7 @@ void MainWindow::on_autoButton_clicked (bool checked)
|
|||||||
QString::number (ui->rptSpinBox->value ()),
|
QString::number (ui->rptSpinBox->value ()),
|
||||||
m_modeTx, ui->autoButton->isChecked (),
|
m_modeTx, ui->autoButton->isChecked (),
|
||||||
m_transmitting);
|
m_transmitting);
|
||||||
|
m_bEchoTxOK=false;
|
||||||
if(m_mode.mid(0,4)=="WSPR") {
|
if(m_mode.mid(0,4)=="WSPR") {
|
||||||
QPalette* palette = new QPalette();
|
QPalette* palette = new QPalette();
|
||||||
if(m_auto or m_pctx==0) {
|
if(m_auto or m_pctx==0) {
|
||||||
@ -1811,12 +1813,6 @@ void MainWindow::guiUpdate()
|
|||||||
tx2 += m_TRperiod;
|
tx2 += m_TRperiod;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(m_mode=="Echo") {
|
|
||||||
txDuration=2.5;
|
|
||||||
tx1=0.0;
|
|
||||||
tx2=txDuration;
|
|
||||||
}
|
|
||||||
|
|
||||||
qint64 ms = QDateTime::currentMSecsSinceEpoch() % 86400000;
|
qint64 ms = QDateTime::currentMSecsSinceEpoch() % 86400000;
|
||||||
int nsec=ms/1000;
|
int nsec=ms/1000;
|
||||||
double tsec=0.001*ms;
|
double tsec=0.001*ms;
|
||||||
@ -1824,6 +1820,13 @@ void MainWindow::guiUpdate()
|
|||||||
m_s6=fmod(tsec,6.0);
|
m_s6=fmod(tsec,6.0);
|
||||||
m_nseq = nsec % m_TRperiod;
|
m_nseq = nsec % m_TRperiod;
|
||||||
|
|
||||||
|
if(m_mode=="Echo") {
|
||||||
|
txDuration=2.5;
|
||||||
|
tx1=0.0;
|
||||||
|
tx2=txDuration;
|
||||||
|
if(m_auto and m_s6>4.0) m_bEchoTxOK=true;
|
||||||
|
}
|
||||||
|
|
||||||
if(m_mode.mid(0,4)=="WSPR") {
|
if(m_mode.mid(0,4)=="WSPR") {
|
||||||
if(m_nseq==0 and m_ntr==0) { //Decide whether to Tx or Rx
|
if(m_nseq==0 and m_ntr==0) { //Decide whether to Tx or Rx
|
||||||
m_tuneup=false; //This is not an ATU tuneup
|
m_tuneup=false; //This is not an ATU tuneup
|
||||||
@ -1849,6 +1852,7 @@ void MainWindow::guiUpdate()
|
|||||||
} else {
|
} else {
|
||||||
// For all modes other than WSPR
|
// For all modes other than WSPR
|
||||||
m_bTxTime = (t2p >= tx1) and (t2p < tx2);
|
m_bTxTime = (t2p >= tx1) and (t2p < tx2);
|
||||||
|
if(m_mode=="Echo") m_bTxTime = m_bTxTime and m_bEchoTxOK;
|
||||||
}
|
}
|
||||||
if(m_tune) m_bTxTime=true; //"Tune" takes precedence
|
if(m_tune) m_bTxTime=true; //"Tune" takes precedence
|
||||||
|
|
||||||
@ -2123,7 +2127,8 @@ void MainWindow::guiUpdate()
|
|||||||
m_DopplerMethod0 = m_DopplerMethod;
|
m_DopplerMethod0 = m_DopplerMethod;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(m_auto and m_mode=="Echo") progressBar->setValue(int(100*m_s6/6.0));
|
if(m_auto and m_mode=="Echo" and m_bEchoTxOK) progressBar->setValue(
|
||||||
|
int(100*m_s6/6.0));
|
||||||
|
|
||||||
if(nsec != m_sec0) { //Once per second
|
if(nsec != m_sec0) { //Once per second
|
||||||
if(m_mode!="Echo") {
|
if(m_mode!="Echo") {
|
||||||
|
@ -387,6 +387,7 @@ private:
|
|||||||
bool m_rxDone;
|
bool m_rxDone;
|
||||||
bool m_bHaveTransmitted; //Can be used to prohibit consecutive WSPR transmissions
|
bool m_bHaveTransmitted; //Can be used to prohibit consecutive WSPR transmissions
|
||||||
int m_nonWSPRTab;
|
int m_nonWSPRTab;
|
||||||
|
bool m_bEchoTxOK;
|
||||||
bool m_bTransmittedEcho;
|
bool m_bTransmittedEcho;
|
||||||
|
|
||||||
float m_pctZap;
|
float m_pctZap;
|
||||||
|
Loading…
Reference in New Issue
Block a user