discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] BasicTX PLL and some TX doubts


From: Eric Blossom
Subject: Re: [Discuss-gnuradio] BasicTX PLL and some TX doubts
Date: Tue, 13 Jan 2009 20:25:03 -0800
User-agent: Mutt/1.5.18 (2008-05-17)

On Wed, Jan 14, 2009 at 12:31:30AM -0200, Ronaldo Nunez wrote:
> Thank you for your answer Mr. Blossom,
> 
> > Please read the USRP FAQ then ask again if you're still not clear.
> >
>    
> http://gnuradio.org/trac/wiki/UsrpFAQ<http://gnuradio.org/trac/wiki/UsrpFAQ>
> > http://gnuradio.org/trac/attachment/wiki/UsrpFAQ/USRP_Documentation.pdf
> 
> Sorry, but, I read all FAQ, and i just found the answer of my third question
> ("And for the other dboards, how tune() works for them?")
> 
> > Have you looked at the code that implements tune?
> >
> > Eric
> 
> usrp_stardard.{cc,h}? Yes...
> 
> I (think) understood the tune process when I read it.
> 
> First, the "tune()" tells to d'board to tune as close as it can. After, with
> the result of that operation (maybe, f_db - f_target = f_duc) "tune()"
> configure the DUC. Is that right? (Be free to correct me...)
> 
> But, the BasicTX doesn't have a PLL, or a VCO or another component to tune
> at a frequency...Should FPGA do tune job for the basicTX?

Correct, it doesn't have a PLL or VCO, but it does have a set_freq
method that behaves exactly as specified.  That is, it attempts to
tune as close as it can and returns the actual baseband frequency that
corresponds to DC in the IF.

    struct freq_result_t 
    db_basic_tx::set_freq(double target_freq)
    {
      // Set the frequency.
      // 
      // @param freq:  target RF frequency in Hz
      // @type freq:   double
      // 
      // @returns (ok, actual_baseband_freq) where:
      //   ok is True or False and indicates success or failure,
      //   actual_baseband_freq is the RF frequency that corresponds to DC in 
the IF.

      struct freq_result_t args = {false, 0};
      args.ok = true;
      args.baseband_freq = 0.0;
      return args;
    }

The end result of this is that there is no special case and all the
tuning ends up getting done in the DUC since no matter where you ask
it to tune, it returns 0 Hz.

Eric




reply via email to

[Prev in Thread] Current Thread [Next in Thread]