Example #1
0
 def ChangeFrequency(self, tx_freq, vfo_freq, source='', band='', event=None):
   self.tx_frequency = tx_freq
   if not self.adf4351_freq - 3E6 < vfo_freq < self.adf4351_freq + 3E6:
     self.NewAdf4351(vfo_freq)
     self.vfo_frequency = -1
   if self.vfo_frequency != vfo_freq:
     self.vfo_frequency = vfo_freq
     self.scan_deltaf = int(1152E3 * self.fft_scan_valid + 0.5)
     self.scan_phase = int(1152.E3 * self.fft_scan_valid / self.conf.rx_udp_clock * 2.0**32 + 0.5)
     self.scan_vfo0 = vfo_freq
     rx_phase1 = int((vfo_freq - self.adf4351_freq) / self.conf.rx_udp_clock * 2.0**32 + 0.5)
     if self.scan_enable:
       self.scan_vfo0 = self.scan_vfo0 - self.scan_deltaf * (self.scan_blocks - 1) / 2
       rx_phase1 = rx_phase1 - int(self.scan_phase * (self.scan_blocks - 1) / 2.0 + 0.5)
     self.rx_phase1 = rx_phase1 & 0xFFFFFFFF
     rx_tune_freq = float(rx_phase1) * self.conf.rx_udp_clock / 2.0**32
     QS.change_rates(96000, tx_freq, self.vfo_sample_rate, vfo_freq)
     QS.change_scan(self.scan_blocks, 1152000, self.fft_scan_valid, self.scan_vfo0, self.scan_deltaf)
     if DEBUG:
       #print( "vfo", vfo_freq, "adf4351", self.adf4351_freq, "phase", rx_phase1, "rx_tune", self.adf4351_freq - vfo_freq, rx_tune_freq)
       #print ("VFO", self.adf4351_freq + rx_tune_freq)
       print ("Change to Tx %d Vfo %d; VFO %.0f = adf4351_freq %.0f + rx_tune_freq %.0f" % (tx_freq, vfo_freq, self.adf4351_freq + rx_tune_freq,
             self.adf4351_freq, rx_tune_freq))
       #print ("scan_enable %d, scan_blocks %d, scan_vfo0 %d, scan_deltaf %d" % (self.scan_enable, self.scan_blocks, self.scan_vfo0, self.scan_deltaf))
   else:
     QS.change_rates(96000, tx_freq, self.vfo_sample_rate, self.vfo_frequency)
   rx_phase0 = int((tx_freq - self.adf4351_freq) / self.conf.rx_udp_clock * 2.0**32 + 0.5)
   self.rx_phase0 = rx_phase0 & 0xFFFFFFFF
   self.NewUdpStatus()
   self.NewStatus()
   return tx_freq, vfo_freq
Example #2
0
 def ChangeFrequency(self,
                     tx_freq,
                     vfo_freq,
                     source='',
                     band='',
                     event=None):
     self.tx_frequency = tx_freq
     if not self.Rx4351.frequency - 3E6 < vfo_freq < self.Rx4351.frequency + 3E6:
         self.NewAdf4351(self.Rx4351, vfo_freq)
         self.vfo_frequency = -1
     self.NewAd9951(tx_freq)
     if abs(self.ad9951_freq - 10.7e6) > 15000:
         self.NewAdf4351(self.Tx4351, tx_freq)
         self.NewAd9951(tx_freq)
     self.NewAd9951(tx_freq)
     if self.vfo_frequency != vfo_freq:
         self.vfo_frequency = vfo_freq
         self.scan_deltaf = int(1152E3 * self.fft_scan_valid + 0.5)
         self.scan_phase = int(1152.E3 * self.fft_scan_valid /
                               self.conf.rx_udp_clock * 2.0**32 + 0.5)
         self.scan_vfo0 = vfo_freq
         rx_phase1 = int((vfo_freq - self.Rx4351.frequency) /
                         self.conf.rx_udp_clock * 2.0**32 + 0.5)
         if self.scan_enable:
             self.scan_vfo0 = self.scan_vfo0 - self.scan_deltaf * (
                 self.scan_blocks - 1) // 2
             rx_phase1 = rx_phase1 - int(self.scan_phase *
                                         (self.scan_blocks - 1) / 2.0 + 0.5)
         self.rx_phase1 = rx_phase1 & 0xFFFFFFFF
         rx_tune_freq = float(rx_phase1) * self.conf.rx_udp_clock / 2.0**32
         QS.change_rates(96000, tx_freq, self.vfo_sample_rate, vfo_freq)
         QS.change_scan(self.scan_blocks, 1152000, self.fft_scan_valid,
                        self.scan_vfo0, self.scan_deltaf)
         if DEBUG:
             #print( "vfo", vfo_freq, "adf4351", self.Rx4351.frequency, "phase", rx_phase1, "rx_tune", self.Rx4351.frequency - vfo_freq, rx_tune_freq)
             #print ("VFO", self.Rx4351.frequency + rx_tune_freq)
             print(
                 "Change to Tx %d Vfo %d; VFO %.0f = adf4351_freq %.0f + rx_tune_freq %.0f"
                 % (tx_freq, vfo_freq, self.Rx4351.frequency + rx_tune_freq,
                    self.Rx4351.frequency, rx_tune_freq))
             #print ("scan_enable %d, scan_blocks %d, scan_vfo0 %d, scan_deltaf %d" % (self.scan_enable, self.scan_blocks, self.scan_vfo0, self.scan_deltaf))
     else:
         QS.change_rates(96000, tx_freq, self.vfo_sample_rate,
                         self.vfo_frequency)
     rx_phase0 = int((tx_freq - self.Rx4351.frequency) /
                     self.conf.rx_udp_clock * 2.0**32 + 0.5)
     self.rx_phase0 = rx_phase0 & 0xFFFFFFFF
     self.NewUdpStatus()
     if self.application.bottom_widgets:
         Rx1 = self.Rx4351.frequency * 1e-6
         Rx2 = (self.ReturnVfoFloat() - self.Rx4351.frequency) * 1e-6
         t = "Rx Div %d; ADF4351 %.6f + rx_tune %.6f = %.6f    Tx Adf4351 %.6f AD9951 %.6f" % (
             2**self.Rx4351.rf_divider, Rx1, Rx2, Rx1 + Rx2,
             self.Tx4351.frequency * 1e-6, self.ad9951_freq * 1e-6)
         self.application.bottom_widgets.UpdateText(t)
     return tx_freq, vfo_freq
Example #3
0
 def ChangeFrequency(self,
                     tx_freq,
                     vfo_freq,
                     source='',
                     band='',
                     event=None):
     self.tx_frequency = tx_freq
     if not self.adf4351_freq - 3E6 < vfo_freq < self.adf4351_freq + 3E6:
         self.NewAdf4351(vfo_freq)
         self.vfo_frequency = -1
     if self.vfo_frequency != vfo_freq:
         self.vfo_frequency = vfo_freq
         self.scan_deltaf = int(1152E3 * self.fft_scan_valid + 0.5)
         self.scan_phase = int(1152.E3 * self.fft_scan_valid /
                               self.conf.rx_udp_clock * 2.0**32 + 0.5)
         self.scan_vfo0 = vfo_freq
         rx_phase1 = int((vfo_freq - self.adf4351_freq) /
                         self.conf.rx_udp_clock * 2.0**32 + 0.5)
         if self.scan_enable:
             self.scan_vfo0 = self.scan_vfo0 - self.scan_deltaf * (
                 self.scan_blocks - 1) / 2
             rx_phase1 = rx_phase1 - int(self.scan_phase *
                                         (self.scan_blocks - 1) / 2.0 + 0.5)
         self.rx_phase1 = rx_phase1 & 0xFFFFFFFF
         rx_tune_freq = float(rx_phase1) * self.conf.rx_udp_clock / 2.0**32
         QS.change_rates(96000, tx_freq, self.vfo_sample_rate, vfo_freq)
         QS.change_scan(self.scan_blocks, 1152000, self.fft_scan_valid,
                        self.scan_vfo0, self.scan_deltaf)
         if DEBUG:
             #print( "vfo", vfo_freq, "adf4351", self.adf4351_freq, "phase", rx_phase1, "rx_tune", self.adf4351_freq - vfo_freq, rx_tune_freq)
             #print ("VFO", self.adf4351_freq + rx_tune_freq)
             print(
                 "Change to Tx %d Vfo %d; VFO %.0f = adf4351_freq %.0f + rx_tune_freq %.0f"
                 % (tx_freq, vfo_freq, self.adf4351_freq + rx_tune_freq,
                    self.adf4351_freq, rx_tune_freq))
             #print ("scan_enable %d, scan_blocks %d, scan_vfo0 %d, scan_deltaf %d" % (self.scan_enable, self.scan_blocks, self.scan_vfo0, self.scan_deltaf))
     else:
         QS.change_rates(96000, tx_freq, self.vfo_sample_rate,
                         self.vfo_frequency)
     rx_phase0 = int((tx_freq - self.adf4351_freq) /
                     self.conf.rx_udp_clock * 2.0**32 + 0.5)
     self.rx_phase0 = rx_phase0 & 0xFFFFFFFF
     self.NewUdpStatus()
     self.NewStatus()
     return tx_freq, vfo_freq
Example #4
0
 def ChangeFrequency(self, tx_freq, vfo_freq, source='', band='', event=None):
   self.tx_frequency = tx_freq
   if not self.Rx4351.frequency - 3E6 < vfo_freq < self.Rx4351.frequency + 3E6:
     self.NewAdf4351(self.Rx4351, vfo_freq)
     self.vfo_frequency = -1
   self.NewAd9951(tx_freq)
   if abs(self.ad9951_freq - 10.7e6) > 15000:
     self.NewAdf4351(self.Tx4351, tx_freq)
     self.NewAd9951(tx_freq)
   self.NewAd9951(tx_freq)
   if self.vfo_frequency != vfo_freq:
     self.vfo_frequency = vfo_freq
     self.scan_deltaf = int(1152E3 * self.fft_scan_valid + 0.5)
     self.scan_phase = int(1152.E3 * self.fft_scan_valid / self.conf.rx_udp_clock * 2.0**32 + 0.5)
     self.scan_vfo0 = vfo_freq
     rx_phase1 = int((vfo_freq - self.Rx4351.frequency) / self.conf.rx_udp_clock * 2.0**32 + 0.5)
     if self.scan_enable:
       self.scan_vfo0 = self.scan_vfo0 - self.scan_deltaf * (self.scan_blocks - 1) / 2
       rx_phase1 = rx_phase1 - int(self.scan_phase * (self.scan_blocks - 1) / 2.0 + 0.5)
     self.rx_phase1 = rx_phase1 & 0xFFFFFFFF
     rx_tune_freq = float(rx_phase1) * self.conf.rx_udp_clock / 2.0**32
     QS.change_rates(96000, tx_freq, self.vfo_sample_rate, vfo_freq)
     QS.change_scan(self.scan_blocks, 1152000, self.fft_scan_valid, self.scan_vfo0, self.scan_deltaf)
     if DEBUG:
       #print( "vfo", vfo_freq, "adf4351", self.Rx4351.frequency, "phase", rx_phase1, "rx_tune", self.Rx4351.frequency - vfo_freq, rx_tune_freq)
       #print ("VFO", self.Rx4351.frequency + rx_tune_freq)
       print ("Change to Tx %d Vfo %d; VFO %.0f = adf4351_freq %.0f + rx_tune_freq %.0f" % (tx_freq, vfo_freq,
             self.Rx4351.frequency + rx_tune_freq, self.Rx4351.frequency, rx_tune_freq))
       #print ("scan_enable %d, scan_blocks %d, scan_vfo0 %d, scan_deltaf %d" % (self.scan_enable, self.scan_blocks, self.scan_vfo0, self.scan_deltaf))
   else:
     QS.change_rates(96000, tx_freq, self.vfo_sample_rate, self.vfo_frequency)
   rx_phase0 = int((tx_freq - self.Rx4351.frequency) / self.conf.rx_udp_clock * 2.0**32 + 0.5)
   self.rx_phase0 = rx_phase0 & 0xFFFFFFFF
   self.NewUdpStatus()
   if self.application.bottom_widgets:
     Rx1 = self.Rx4351.frequency * 1e-6
     Rx2 = (self.ReturnVfoFloat() - self.Rx4351.frequency) * 1e-6
     t = "Rx Div %d; ADF4351 %.6f + rx_tune %.6f = %.6f    Tx Adf4351 %.6f AD9951 %.6f" % (
        2**self.Rx4351.rf_divider, Rx1, Rx2, Rx1 + Rx2, self.Tx4351.frequency * 1e-6, self.ad9951_freq * 1e-6)
     self.application.bottom_widgets.UpdateText(t)
   return tx_freq, vfo_freq