mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-05-29 12:52:28 -04:00
Can decode in modes 1 2 5 10, but not 30 -- why???
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@2643 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
bb02cd3e8c
commit
3706d4e3c4
@ -92,10 +92,9 @@ program jt9
|
|||||||
|
|
||||||
nutc=nutc0
|
nutc=nutc0
|
||||||
nstandalone=1
|
nstandalone=1
|
||||||
call sync9(ss,tstep,f0a,df3,lagpk,fpk) !Find sig, get rough DT and DF
|
call sync9(ss,tstep,f0a,df3,fpk) !Find sig, get rough freq
|
||||||
call spec9(c0,npts8,nsps,f0a,lagpk,fpk,i1SoftSymbols)
|
call spec9(c0,npts8,nsps,f0a,fpk,xdt,i1SoftSymbols)
|
||||||
call decode9(i1SoftSymbols,msg)
|
call decode9(i1SoftSymbols,msg)
|
||||||
xdt=lagpk*0.5*nsps/12000.0
|
|
||||||
write(*,1010) nutc,xdt,fpk,msg
|
write(*,1010) nutc,xdt,fpk,msg
|
||||||
1010 format(i4.4,f6.1,f7.1,2x,a22)
|
1010 format(i4.4,f6.1,f7.1,2x,a22)
|
||||||
enddo
|
enddo
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
subroutine peakdf9(c0,npts8,nsps8,istart,foffset,xdf)
|
subroutine peakdf9(c0,npts8,nsps8,istart,foffset,idfpk)
|
||||||
|
|
||||||
complex c0(0:npts8-1)
|
complex c0(0:npts8-1)
|
||||||
complex zsum
|
complex zsum
|
||||||
@ -8,7 +8,7 @@ subroutine peakdf9(c0,npts8,nsps8,istart,foffset,xdf)
|
|||||||
twopi=8.0*atan(1.0)
|
twopi=8.0*atan(1.0)
|
||||||
df=1500.0/nsps8
|
df=1500.0/nsps8
|
||||||
smax=0.
|
smax=0.
|
||||||
do idf=-10,10
|
do idf=-5,5
|
||||||
f0=foffset + 0.1*df*idf
|
f0=foffset + 0.1*df*idf
|
||||||
dphi=twopi*f0/1500.0
|
dphi=twopi*f0/1500.0
|
||||||
sum=0.
|
sum=0.
|
||||||
@ -17,7 +17,7 @@ subroutine peakdf9(c0,npts8,nsps8,istart,foffset,xdf)
|
|||||||
phi=0.
|
phi=0.
|
||||||
zsum=0.
|
zsum=0.
|
||||||
do i=i1,i1+nsps8-1
|
do i=i1,i1+nsps8-1
|
||||||
if(i.lt.0) cycle
|
if(i.lt.0 .or. i.gt.npts8-1) cycle
|
||||||
phi=phi + dphi
|
phi=phi + dphi
|
||||||
zsum=zsum + c0(i) * cmplx(cos(phi),-sin(phi))
|
zsum=zsum + c0(i) * cmplx(cos(phi),-sin(phi))
|
||||||
enddo
|
enddo
|
||||||
@ -25,13 +25,11 @@ subroutine peakdf9(c0,npts8,nsps8,istart,foffset,xdf)
|
|||||||
enddo
|
enddo
|
||||||
if(sum.gt.smax) then
|
if(sum.gt.smax) then
|
||||||
idfpk=idf
|
idfpk=idf
|
||||||
fpk=f0
|
|
||||||
smax=sum
|
smax=sum
|
||||||
endif
|
endif
|
||||||
|
write(71,3001) idf,sum
|
||||||
|
3001 format(i5,f12.3)
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
write(*,3001) idfpk,fpk,smax
|
|
||||||
3001 format('DF:'i5,f8.2,f12.3)
|
|
||||||
|
|
||||||
return
|
return
|
||||||
end subroutine peakdf9
|
end subroutine peakdf9
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
subroutine peakdt9(c0,npts8,nsps8,istart,foffset,idt)
|
subroutine peakdt9(c0,npts8,nsps8,istart,foffset,idtpk)
|
||||||
|
|
||||||
complex c0(0:npts8-1)
|
complex c0(0:npts8-1)
|
||||||
complex zsum
|
complex zsum
|
||||||
@ -10,15 +10,15 @@ subroutine peakdt9(c0,npts8,nsps8,istart,foffset,idt)
|
|||||||
|
|
||||||
f0=foffset
|
f0=foffset
|
||||||
dphi=twopi*f0/1500.0
|
dphi=twopi*f0/1500.0
|
||||||
do idt=-10,10
|
do idt=-5,5
|
||||||
i0=istart + 0.1*nsps8*idt
|
i0=istart + 0.0625*nsps8*idt
|
||||||
sum=0.
|
sum=0.
|
||||||
do j=1,16
|
do j=1,16
|
||||||
i1=(ii(j)-1)*nsps8 + i0
|
i1=(ii(j)-1)*nsps8 + i0
|
||||||
phi=0.
|
phi=0.
|
||||||
zsum=0.
|
zsum=0.
|
||||||
do i=i1,i1+nsps8-1
|
do i=i1,i1+nsps8-1
|
||||||
if(i.lt.0) cycle
|
if(i.lt.0 .or. i.gt.npts8-1) cycle
|
||||||
phi=phi + dphi
|
phi=phi + dphi
|
||||||
zsum=zsum + c0(i) * cmplx(cos(phi),-sin(phi))
|
zsum=zsum + c0(i) * cmplx(cos(phi),-sin(phi))
|
||||||
enddo
|
enddo
|
||||||
@ -30,9 +30,5 @@ subroutine peakdt9(c0,npts8,nsps8,istart,foffset,idt)
|
|||||||
endif
|
endif
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
tpk=idtpk/1500.0
|
|
||||||
write(*,3001) idtpk,tpk,smax
|
|
||||||
3001 format('DT:'i5,f8.2,f12.3)
|
|
||||||
|
|
||||||
return
|
return
|
||||||
end subroutine peakdt9
|
end subroutine peakdt9
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
subroutine spec9(c0,npts8,nsps,f0a,lagpk,fpk,i1SoftSymbols)
|
subroutine spec9(c0,npts8,nsps,f0a,fpk,xdt,i1SoftSymbols)
|
||||||
|
|
||||||
parameter (MAXFFT=31500)
|
parameter (MAXFFT=31500)
|
||||||
complex c0(0:npts8-1)
|
complex c0(0:npts8-1)
|
||||||
@ -22,13 +22,18 @@ subroutine spec9(c0,npts8,nsps,f0a,lagpk,fpk,i1SoftSymbols)
|
|||||||
nsps8=nsps/8
|
nsps8=nsps/8
|
||||||
foffset=fpk-f0a
|
foffset=fpk-f0a
|
||||||
istart=1520
|
istart=1520
|
||||||
idt=0
|
|
||||||
xdf=0.
|
|
||||||
|
|
||||||
call peakdf9(c0,npts8,nsps8,istart,foffset,xdf)
|
call peakdf9(c0,npts8,nsps8,istart,foffset,idf)
|
||||||
|
fpk=fpk + idf*0.1*1500.0/nsps8
|
||||||
|
foffset=foffset + idf*0.1*1500.0/nsps8
|
||||||
call peakdt9(c0,npts8,nsps8,istart,foffset,idt)
|
call peakdt9(c0,npts8,nsps8,istart,foffset,idt)
|
||||||
|
istart=istart + 0.0625*nsps8*idt
|
||||||
|
xdt=istart/1500.0 - 1.0
|
||||||
|
! write(*,3002) 0.0625*nsps8*idt/1500.0,idf*0.1*1500.0/nsps8
|
||||||
|
!3002 format(2f8.2)
|
||||||
|
|
||||||
fshift=foffset + xdf
|
|
||||||
|
fshift=foffset
|
||||||
twopi=8.0*atan(1.0)
|
twopi=8.0*atan(1.0)
|
||||||
dphi=twopi*fshift/1500.0
|
dphi=twopi*fshift/1500.0
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
subroutine sync9(ss,tstep,f0a,df3,lagpk,fpk)
|
subroutine sync9(ss,tstep,f0a,df3,fpk)
|
||||||
|
|
||||||
parameter (NSMAX=22000) !Max length of saved spectra
|
parameter (NSMAX=22000) !Max length of saved spectra
|
||||||
real ss(184,NSMAX)
|
real ss(184,NSMAX)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
//------------------------------------------------------------ MainWindow
|
//----------------------------------------------------------- MainWindow
|
||||||
#include "mainwindow.h"
|
#include "mainwindow.h"
|
||||||
#include "ui_mainwindow.h"
|
#include "ui_mainwindow.h"
|
||||||
#include "devsetup.h"
|
#include "devsetup.h"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user