一起玩转GNU Radio:gr-audio

本文内容、开发板及配件仅限用于学校或科研院所开展科研实验!

本文介绍GNU Radio源码的gr-audio相关实例及模块。

目录

一、cvsd_sweep

 1、VCO模块

2、CVSD Encoder和CVSD Decoder模块

3、Packed to Unpacked模块

4、Char to Float模块

 5、Audio Sink模块

6、QT GUI Tab Widget模块

二、dial_tone

1、Signal Source模块

2、Add模块

3、QT GUI Range模块

三、有用链接


一、cvsd_sweep

GRC文件为《gnuradio-3.9.1.0/gr-audio/examples/grc/cvsd_sweep.grc》。该流图的主要功能是实现了CVSD编码和解码,运行时扬声器可发声。VCO模块受控于Signal Source模块,产生幅度频率变化的正弦信号,再输入给CVSD编码器进行编码,再经过CVSD解码器进行解码后对信号进行了还原。每个可直观查看信号的时域和频域变化。具体用到了Signal Source、Throttle、VCO、CVSD Encoder、CVSD Decoder、Packed to Unpacked、Char To Float、Audio Sink、QT GUI Frequency Sink、QT GUI Time Sink模块。

 1、VCO模块

VCO - GNU Radio

该模块为压控振荡器模块,可以根据输入幅度生成相应频率的正弦波。模块输入是控制电压的float数据流,输出是float型的(振荡器)正弦波。

模块参数解释如下:

Sample Rate,采样率。

Sensitivity,灵敏度,单位为弧度/秒/伏。

Amplitude,振幅,输出信号的振幅。

2、CVSD Encoder和CVSD Decoder模块

一般成对出现在程序中。这是CVSD编码器/解码器的包装程序,它执行与声码一起工作所必需的插值和滤波。它将传递的浮点数(+ -1)转换为短整型数值,将其缩放(至32000;略低于最大值),对其进行插值,然后对其进行声码处理。输入的采样率可以是任何值,当然,采样率越高和插值率越高,声音质量就越好。

模块参数解释如下:

Resample,重采样取值。

Frac. Bandwidth,频率带宽值。

3、Packed to Unpacked模块

Packed to Unpacked - GNU Radio

该模块是数据包解码模块,支持指定大端和小端方式。

模块参数解释如下:

Bits per Chunk,每个输出(字节/短整型)中要包含多少位。

Endianness:处理输入位时是以大端MSB方式还是小端LSB方式;(LSB的意思是:全称为Least Significant Bit,在二进制数中意为最低有效位,一般来说,MSB位于二进制数的最左侧&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值