diff options
author | Josh Blum <josh@joshknows.com> | 2012-06-28 12:19:25 -0700 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2012-06-28 12:19:25 -0700 |
commit | 3079b5715d8400558673374269310e49c1252a1f (patch) | |
tree | f2c8eb03853f31091f604edf38a7c86d827bd719 /host/lib/usrp/usrp1 | |
parent | ae2429c8cb95324d628e93806688d14d123cd45e (diff) | |
download | uhd-3079b5715d8400558673374269310e49c1252a1f.tar.gz uhd-3079b5715d8400558673374269310e49c1252a1f.tar.bz2 uhd-3079b5715d8400558673374269310e49c1252a1f.zip |
usrp1: revert calculation for DAC freq outside of 1st Nyquist
This patch does not work. A possibile solution will be added to master.
Diffstat (limited to 'host/lib/usrp/usrp1')
-rw-r--r-- | host/lib/usrp/usrp1/codec_ctrl.cpp | 38 |
1 files changed, 2 insertions, 36 deletions
diff --git a/host/lib/usrp/usrp1/codec_ctrl.cpp b/host/lib/usrp/usrp1/codec_ctrl.cpp index 20a7f9bab..c82569ea3 100644 --- a/host/lib/usrp/usrp1/codec_ctrl.cpp +++ b/host/lib/usrp/usrp1/codec_ctrl.cpp @@ -1,5 +1,5 @@ // -// Copyright 2010-2012 Ettus Research LLC +// Copyright 2010-2011 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -372,43 +372,9 @@ double usrp1_codec_ctrl_impl::fine_tune(double codec_rate, double target_freq) return actual_freq; } -double calc_dxc_freq(double target_freq, double rate) +void usrp1_codec_ctrl_impl::set_duc_freq(double freq, double rate) { - double delta = target_freq; //- bandwidth; - double dxc_freq = 0.0; - - if (delta >= 0) { - while(delta > rate) { - delta -= rate; - } - if (delta <= rate/2) { - // non-inverted region - dxc_freq = -delta; - } else { - // inverted region - dxc_freq = -(delta - rate) ; - } - } else { - while(delta < -rate) { - delta += rate; - } - //std::cout << std::fixed << "delta: " << delta << std::endl; - if (delta >= -rate/2) { - // non-inverted region - dxc_freq = -delta; - } else { - // inverted region - dxc_freq = -(delta + rate); - } - } - - return dxc_freq; -} - -void usrp1_codec_ctrl_impl::set_duc_freq(double frequency, double rate){ - double codec_rate = rate * 2; - double freq = calc_dxc_freq(frequency, codec_rate); double coarse_freq = coarse_tune(codec_rate, freq); double fine_freq = fine_tune(codec_rate / 4, freq - coarse_freq); |