GNU Radiuo 数据处理模块

Signal Sources

Sinusoidal and constant sources

Block:gr.sig_source_X.

gr.sig_source_c [f, i, s]( double sampling_freq,

                                         gr_waveform_t waveform,

                                         double frequency,

                                         double amplitude,

                                         gr_complex [float, integer, short] offset )

X为数据类型。X=c (complex)/f (float)/i (4 byte integer) /s (2 byte short integer)。
offset与信号类型相同,可省。

waveform=gr.GR_CONST_WAVE
                    gr.GR_COS_WAVE
                    gr.GR_SIN_WAVE

gr_waveform_t类型在gr_sig_source_waveform.h中定义。

Noise sources

Block: gr.noise_source_X.

gr.noise_source_c [f, i, s] ( gr_noise_type_t type,
                                                float amplitude,
                                                long seed )

X为信号源数据类型。X=c (complex)/f (float)/i (4 byte integer) /s (2 byte short integer)。

type表示噪声的类型。type=GR_UNIFORM——产生[-amplitude,amplitude]的均匀分布。

                                                 GR_GAUSSIAN——均值0,方差0的高斯噪声。
                                                 GR_LAPLACIAN
                                                 GR_IMPULSE
gr_noise_type_t在gr_noise_type.h中定义。
type=GR_UNIFORM时产生[-amplitude,amplitude]的均匀分布。
Null sources
Block: gr.null_source.

gr.null_source ( size_t sizeof_stream_item )
sizeof_stream_item=gr_complex, float, integer等等。

Vector sources
Block: gr.vector_source_X.

gr.vector_source_c [f, i, s, b] ( const std::vector< gr_complex > & data,
                                                     bool repeat = false )

(gr_complex 处也可以是 float, integer, short, unsigned char)

X为信号源数据类型。可以为 c (complex), f (float),
i (4 byte integer), s (2 byte short integer), or b (1 byte unsigned char)

矢量源从一个向量获得数据, repeat表示向量的数据是否重复发送。

例如:src_data = (-3, 4, -5.5, 2, 3)
            src = gr.vector_source_f (src_data)
File sources
Block: gr.file_source

gr.file_source ( size_t itemsize,

                            const char *filename,
                            bool repeat )
itemsize决定数据流的数据类型。如:gr_complex,float, unsigned char
repeat决定文件中数据是否重复发送。

例如:src = gr.file_source (gr.sizeof_char, "/home/dshen/payload.dat", TRUE)
Audio source
Block: gr.audio_source
gr.audio_source (int sampling_rate)
从线性输入读取数据,sampling_rate表示信源的数据率,为每秒内的点数。
USRP source
Block: usrp.source_c [s]

usrp.source_c (s) (int which_board,
                                  unsigned int decim_rate,
                                  int nchan = 1,
                                  int mux = -1,
                                  int mode = 0 )
c (complex),或s (short)表示从USRP接收的数据类型,c (complex)更常使用。
which_board表示用哪一个USRP,当只有一个USRP,为0.
decim_rate为DDC的抽取率。
nchan 表示信道数,为 1, 2 or 4。

mux设置输入MUX,决定哪个ADC连接哪个DDC,‘-1’表示使用默认。
mode设置 FPGA 模式, 很少用。
通常,只设置前两个参数。

例如:usrp_decim = 250
            src = usrp.source_c (0, usrp_decim)




















                          











































 
上一篇:ubuntu下Vi编辑器的配置


下一篇:matlab中函数的句柄