当前位置: 首页 > 工具软件 > GNU Radio > 使用案例 >

gnuradio android手机,常用的gnuradio 模块

邵献
2023-12-01

---恢复内容开始---

参考:http://gnuradio.org/redmine/projects/gnuradio/wiki/TutorialsWritePythonApplications

导入模块的语句

from gnuradio import MODULENAME

常用模块由如下及个

gr               gnuradio 的主要库,基本上每个程序都需要用到

analog        和模拟信号和模拟信号调制有关的功能

audio          声卡控制,可以用来向声卡发送信息 或者通过声卡接收信息

blocks        所有不属于其他模块的东西,可能就放在这

channels    仿真所用的信号模型

digital         与analog, 所用和数字信号调制有关的功能在这

fft                和ffts 有关的功能

fec              和fex有关的贡呢

filter            过滤器模块

plotdata      绘制数据

qtgui           和表示数据有关的图形界面(使用QT库)

wxgui          包含快速创建流图的用户界面的一些实体

vocoder       和声音编码有关的一些功能

wavelet       和微波有关的一些功能

gru              各种各样和数学及其他有关的一些功能实体

选择,定义和设置模块。如何选择模块对于我们来说是挺男的一个事,因为GNU RADIO提供了大量的预先定义的模块。

因此我们需要查阅一些文档。而如何使用这些文档也是学习。

下列3行代码,是定义blocks的句子,

src0 = analog.sig_source_f (sample_rate, analog.GR_SIN_WAVE, 350, ampl)

src1 = analog.sig_source_f (sample_rate, analog.GR_SIN_WAVE, 440, ampl)

dst = audio.sink (sample_rate, "")

在Lin1-2 中,一个名字 sig_source_f 的函数呗调用了,并且收到了4个函数参数

1. 采样频率 sample_rate   2. analog.GR_SIN_WAVE, analog 模块中定义的一个常量,在这里告知信号生产的类型

3. 350/440 一个常量,代表生产信号的频率

4. ample  一个表示生成信号幅度的变量。

问题是,在预先不知道这段代码的情况下,我怎么知道我要将哪些参数传递给  sig_source_f ?

答案就是:查阅文档,我们需要寻找  sig_source_f  地址:http://gnuradio.org/doc/doxygen/classgr_1_1analog_1_1sig__source__f.html

其中包好很多   sig_source_× , f 代表生成信号是浮点数。其他的有:

c:  复数浮点型

i:   整型

s:  短整型

b:  位,其实也是整数

例如 gr::filter::fir_filter_ccf Class

代表  FIR filter with gr_complex input, gr_complex output, and float taps.

gr::blocks::add_const_ff

代表 output = input + constant 数据类型都是浮点数

GNuradio blocks 都是用C++ 写的,但是我在在调用的时候用的是python, 之所有可以这么使用的原因是,gnuradio 使用了一种被称之为SWIG的工具来创建python和C++之间的借口。

每一个c++ blocks 都有一个创建函数, gr::component::block::make(***) 例如 gr::analog::sig_source_f::make()。 这个创建函数,经常是位于和对应类的同一页面,并且能够同样输出到python, 可以通过python调用。 当然为了了解这些blocks 具体是怎么工作的,我们可能或早或晚都需要进一步去看哪些代码。

Python常用内建模块

Python常用内建模块 datetime 处理日期和时间的标准库. 注意到datetime是模块,datetime模块还包含一个datetime类,通过from datetime import da ...

转:Yii实战中8个必备常用的扩展,模块和widget

转载自:http://www.yiiframework.com/wiki/180/yii8/ 在经过畅K网的实战后,总结一下在Yii的项目中会经常用到的组件和一些基本的使用方法,分享给大家,同时也给自 ...

Atiit 常见功能 常用功能与模块的最快速解决方案

Atiit 常见功能 常用功能与模块的最快速解决方案 一.大力使用第三方API接口 一.导出excel jquery.table2excel 二.Form表单验证,使用h5验证属性 验证发生在form ...

Yii实战中8个必备常用的扩展,模块和widget

Yii实战中8个必备常用的扩展,模块和widget 在经过畅K网 的实战后,总结一下在Yii的项目中会经常用到的组件和一些基本的使用方法,分享给大家,同时也给自己留个备忘录,下面我以代码加图片说明. ...

常用的re模块的正则匹配的表达式

07.01自我总结 常用的re模块的正则匹配的表达式 一.校验数字的表达式 1.数字 ^[0-9]\*$ 2.n位的数字 ^\d{n}$ 3.至少n位的数字 ^\d{n,}$ 4.m-n位的数字 ^\ ...

Django中常用的那些模块路径

Django中常用的那些模块路径 from django.shortcuts import HttpResponse, render, redirect from django import temp ...

Python第十一章-常用的核心模块01-collections模块

python 自称 "Batteries included"(自带电池, 自备干粮?), 就是因为他提供了很多内置的模块, 使用这些模块无需安装和配置即可使用. 本章主要介绍 py ...

Python第十一章-常用的核心模块03-json模块

python 自称 "Batteries included"(自带电池, 自备干粮?), 就是因为他提供了很多内置的模块, 使用这些模块无需安装和配置即可使用. 本章主要介绍 py ...

Python第十一章-常用的核心模块04-datetime模块

python 自称 "Batteries included"(自带电池, 自备干粮?), 就是因为他提供了很多内置的模块, 使用这些模块无需安装和配置即可使用. 本章主要介绍 py ...

随机推荐

Visor 隐藏应用之一 CSS3 生成器

Visor 有很多隐藏功能,这些功能并不是系统的核心功能,只是为了测试一些技术,做了些对初学前端的工程师还算有用的功能.今天就介绍一下CSS3 生成器. 先介绍一下Note 组件: Note是基本图形 ...

“SSLError: The read operation timed out” when using pip

Downloading/unpacking Django>=1.5.1,<1.6 (from -r requirements.txt (line 1)) Downloading Djang ...

UML建模——概述

轻松玩建模 统一建模语言UML快速入门 http://soft.yesky.com/lesson/281/2472281.shtml UML是一种定义良好.易于表达.功能强大且普遍适用的建模语言.它溶 ...

Servlet--ServletConfig接口,GenericServlet类

ServletConfig接口 定义:public interface ServletConfig 这个接口定义了一个对象, 通过这个对象, Servlet 引擎配置一个 Servlet 并且允许 S ...

&lbrack;USACO 07NOV&rsqb;Cow Relays

Description For their physical fitness program, N (2 ≤ N ≤ 1,000,000) cows have decided to run a rel ...

【SoftwareTesting】Homework3

(a) (b) 数组越界问题 (c) n=0 (d) 点覆盖:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16] 边覆盖:[(1,2),(2,3),(3,4),(4,5) ...

oracle 中的sql 语句

1.update 表名 set 表字段=(select 另一个表中的相同字段 from 另一个表表名 where 表.字段=另一个表.字段) where  表.字段=? 例子:将某个表中的更新到另一个 ...

最近学习工作流 推荐一个activiti 的教程文档

全文地址:http://www.mossle.com/docs/activiti/ Activiti 5.15 用户手册 Table of Contents 1. 简介 协议 下载 源码 必要的软件 ...

windows如何查看删除记录

方法 打开组策略中的计算机配置-Windows设置-安全设置-本地策略-审核策略的审核对对像防问, 双击出现的对话框中钩选成功和失败,经过上面的设置,现在就可以设置文件和文件夹的审核了.(注须在NTF ...

jmeter使用笔记——流程及常用组件配置

添加线程组 线程数 :对应用户数, Ramp-Up: 多少秒启动这些线程,1秒代表1秒内启动设置的线程数,10秒代表10秒内启动线程数 循环次数: 每个线程执行线程组内的请求循环次数 调度器:可以对线 ...

 类似资料: