diff options
author | Tim O'Shea <tim.oshea753@gmail.com> | 2013-06-03 16:15:33 -0400 |
---|---|---|
committer | Tim O'Shea <tim.oshea753@gmail.com> | 2013-06-05 14:19:38 -0400 |
commit | f06367bcf0c2b414295e8ef46c4b8dda1bbe559e (patch) | |
tree | 46bffd94431ad8cca2e402130d846e67f8e01bb7 | |
parent | f4ebf4091af6b3c0f6f5a1e74eb1f586d107a226 (diff) |
filter: adding grc def for low_pass_xlating_fir_filter,
analog: adding reasonable default grc parameters for quadrature_demod_cf
digital: adding reasonable default grc parameters for clock_recovery_mm_xx
-rw-r--r-- | gr-analog/grc/analog_quadrature_demod_cf.xml | 38 | ||||
-rw-r--r-- | gr-digital/grc/digital_clock_recovery_mm_xx.xml | 117 | ||||
-rw-r--r-- | gr-filter/grc/filter_low_pass_xlating_filter.xml | 144 |
3 files changed, 225 insertions, 74 deletions
diff --git a/gr-analog/grc/analog_quadrature_demod_cf.xml b/gr-analog/grc/analog_quadrature_demod_cf.xml index a60653135e..c8f0b30b46 100644 --- a/gr-analog/grc/analog_quadrature_demod_cf.xml +++ b/gr-analog/grc/analog_quadrature_demod_cf.xml @@ -5,22 +5,24 @@ ################################################### --> <block> - <name>Quadrature Demod</name> - <key>analog_quadrature_demod_cf</key> - <import>from gnuradio import analog</import> - <make>analog.quadrature_demod_cf($gain)</make> - <callback>set_gain($gain)</callback> - <param> - <name>Gain</name> - <key>gain</key> - <type>real</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>float</type> - </source> + <name>Quadrature Demod</name> + <key>analog_quadrature_demod_cf</key> + <import>from gnuradio import analog</import> + <import>import math</import> + <make>analog.quadrature_demod_cf($gain)</make> + <callback>set_gain($gain)</callback> + <param> + <name>Gain</name> + <key>gain</key> + <value>samp_rate/(2*math.pi*fsk_deviation_hz/8.0)</value> + <type>real</type> + </param> + <sink> + <name>in</name> + <type>complex</type> + </sink> + <source> + <name>out</name> + <type>float</type> + </source> </block> diff --git a/gr-digital/grc/digital_clock_recovery_mm_xx.xml b/gr-digital/grc/digital_clock_recovery_mm_xx.xml index d9c5ea4ff8..a0857686be 100644 --- a/gr-digital/grc/digital_clock_recovery_mm_xx.xml +++ b/gr-digital/grc/digital_clock_recovery_mm_xx.xml @@ -5,60 +5,65 @@ ################################################### --> <block> - <name>Clock Recovery MM</name> - <key>digital_clock_recovery_mm_xx</key> - <import>from gnuradio import digital</import> - <make>digital.clock_recovery_mm_$(type.fcn)($omega, $gain_omega, $mu, $gain_mu, $omega_relative_limit)</make> - <callback>set_omega($omega)</callback> - <callback>set_gain_omega($gain_omega)</callback> - <callback>set_mu($mu)</callback> - <callback>set_gain_mu($gain_mu)</callback> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Complex</name> - <key>complex</key> - <opt>fcn:cc</opt> - </option> - <option> - <name>Float</name> - <key>float</key> - <opt>fcn:ff</opt> - </option> - </param> - <param> - <name>Omega</name> - <key>omega</key> - <type>real</type> - </param> - <param> - <name>Gain Omega</name> - <key>gain_omega</key> - <type>real</type> - </param> - <param> - <name>Mu</name> - <key>mu</key> - <type>real</type> - </param> - <param> - <name>Gain Mu</name> - <key>gain_mu</key> - <type>real</type> - </param> - <param> - <name>Omega Relative Limit</name> - <key>omega_relative_limit</key> - <type>real</type> - </param> - <sink> - <name>in</name> - <type>$type</type> - </sink> - <source> - <name>out</name> - <type>$type</type> - </source> + <name>Clock Recovery MM</name> + <key>digital_clock_recovery_mm_xx</key> + <import>from gnuradio import digital</import> + <make>digital.clock_recovery_mm_$(type.fcn)($omega, $gain_omega, $mu, $gain_mu, $omega_relative_limit)</make> + <callback>set_omega($omega)</callback> + <callback>set_gain_omega($gain_omega)</callback> + <callback>set_mu($mu)</callback> + <callback>set_gain_mu($gain_mu)</callback> + <param> + <name>Type</name> + <key>type</key> + <type>enum</type> + <option> + <name>Complex</name> + <key>complex</key> + <opt>fcn:cc</opt> + </option> + <option> + <name>Float</name> + <key>float</key> + <opt>fcn:ff</opt> + </option> + </param> + <param> + <name>Omega</name> + <key>omega</key> + <value>samp_per_sym*(1+0.0)</value> + <type>real</type> + </param> + <param> + <name>Gain Omega</name> + <key>gain_omega</key> + <value>0.25*0.175*0.175</value> + <type>real</type> + </param> + <param> + <name>Mu</name> + <key>mu</key> + <value>0.5</value> + <type>real</type> + </param> + <param> + <name>Gain Mu</name> + <key>gain_mu</key> + <value>0.175</value> + <type>real</type> + </param> + <param> + <name>Omega Relative Limit</name> + <key>omega_relative_limit</key> + <value>0.005</value> + <type>real</type> + </param> + <sink> + <name>in</name> + <type>$type</type> + </sink> + <source> + <name>out</name> + <type>$type</type> + </source> </block> diff --git a/gr-filter/grc/filter_low_pass_xlating_filter.xml b/gr-filter/grc/filter_low_pass_xlating_filter.xml new file mode 100644 index 0000000000..65d5e5bff6 --- /dev/null +++ b/gr-filter/grc/filter_low_pass_xlating_filter.xml @@ -0,0 +1,144 @@ +<?xml version="1.0"?> +<!-- +################################################### +##Xlating Low Pass Filter: Custom wrapper +################################################### + --> +<block> + <name>Xlating Low Pass Filter</name> + <key>xlating_low_pass_filter</key> + <import>from gnuradio import filter</import> + <import>from gnuradio.filter import firdes</import> + <make>filter.freq_xlating_fir_filter_$(type)($decim, firdes.low_pass( + $gain, 2*$samp_rate, $cutoff_freq, $width, $win, $beta), $center_freq, $samp_rate)</make> + <callback>set_taps(firdes.low_pass($gain, 2*$samp_rate, $cutoff_freq, $width, $win, $beta))</callback> + <callback>set_center_freq($center_freq)</callback> + <param> + <name>Type</name> + <key>type</key> + <type>enum</type> + <option> + <name>Complex->Complex (Complex Taps)</name> + <key>ccc</key> + <opt>input:complex</opt> + <opt>output:complex</opt> + <opt>taps:complex_vector</opt> + </option> + <option> + <name>Complex->Complex (Real Taps)</name> + <key>ccf</key> + <opt>input:complex</opt> + <opt>output:complex</opt> + <opt>taps:real_vector</opt> + </option> + <option> + <name>Float->Complex (Complex Taps)</name> + <key>fcc</key> + <opt>input:float</opt> + <opt>output:complex</opt> + <opt>taps:complex_vector</opt> + </option> + <option> + <name>Float->Complex (Real Taps)</name> + <key>fcf</key> + <opt>input:float</opt> + <opt>output:complex</opt> + <opt>taps:real_vector</opt> + </option> + <option> + <name>Short->Complex (Complex Taps)</name> + <key>scc</key> + <opt>input:short</opt> + <opt>output:complex</opt> + <opt>taps:complex_vector</opt> + </option> + <option> + <name>Short->Complex (Real Taps)</name> + <key>scf</key> + <opt>input:short</opt> + <opt>output:complex</opt> + <opt>taps:real_vector</opt> + </option> + </param> + <param> + <name>Decimation</name> + <key>decim</key> + <value>1</value> + <type>int</type> + </param> + <param> + <name>Gain</name> + <key>gain</key> + <value>1</value> + <type>real</type> + </param> + <param> + <name>Sample Rate</name> + <key>samp_rate</key> + <value>samp_rate</value> + <type>real</type> + </param> + <param> + <name>Center Frequency</name> + <key>center_freq</key> + <value>0</value> + <type>real</type> + </param> + <param> + <name>Cutoff Freq</name> + <key>cutoff_freq</key> + <type>real</type> + </param> + <param> + <name>Transition Width</name> + <key>width</key> + <type>real</type> + </param> + <param> + <name>Window</name> + <key>win</key> + <value>firdes.WIN_HAMMING</value> + <type>int</type> + <option> + <name>Hamming</name> + <key>firdes.WIN_HAMMING</key> + </option> + <option> + <name>Hann</name> + <key>firdes.WIN_HANN</key> + </option> + <option> + <name>Blackman</name> + <key>firdes.WIN_BLACKMAN</key> + </option> + <option> + <name>Rectangular</name> + <key>firdes.WIN_RECTANGULAR</key> + </option> + <option> + <name>Kaiser</name> + <key>firdes.WIN_KAISER</key> + </option> + </param> + <param> + <name>Beta</name> + <key>beta</key> + <value>6.76</value> + <type>real</type> + </param> + <sink> + <name>in</name> + <type>$type.input</type> + </sink> + <source> + <name>out</name> + <type>$type.output</type> + </source> + <doc> +This filter is a convenience wrapper for an xlating fir filter and a firdes taps generating function. + +Sample rate, cutoff frequency, and transition width are in Hertz. + +The beta paramater only applies to the Kaiser window. + </doc> +</block> |