初级教程(2)流程图基础4-信号数据类型
4.信号数据类型
本教程描述了可用于表示信号的数据类型。
本节使用您的第一个流程图中的起始流程图,请在继续之前完成教程。下一个教程,转换数据类型,展示了如何在不同的数据类型之间进行转换。
数据类型
块上的每个输入和输出端口都将具有与之关联的数据类型。数据类型由输入和输出端口的颜色标识。GNU Radio 数据类型可以通过打开 GNU Radio Companion (GRC) 并单击Help: Types找到:

一个窗口显示数据类型及其关联的颜色:

这些颜色对应于GRC 中块的输入和输出端口。
GNU Radio 块中最常见的数据类型是蓝色的Complex Float 32和橙色的Float 32。其他颜色包括黄色的 Integer 16(或short)数据类型和紫色的Integer 8(或char)数据类型。

复杂数据类型
以下流程图使用Complex Float 32数据类型,它使用一对 32 位浮点数来表示复样本的实部和虚部。

运行流程图会显示在时域中绘制的复信号,其中信号 1是实部,信号 2是复信号的虚部:

因此,每个复数样本都是 64 位:一个 32 位浮点数用于实部,一个 32 位浮点数用于虚部。
浮点数据类型
许多 GNU Radio 块支持多种数据类型。信号源块的数据类型可以通过双击它并从输出类型下拉菜单中选择来更改:

选择浮点数据类型将使信号源模块创建一个真实的正弦波,由橙色输出端口表示。注意连接Signal Source和Throttle 的箭头是红色的,表示数据类型不匹配错误:

通过将所有其他块转换为橙色 Float数据类型来解决该错误。单击块将其选中,并以浅蓝色突出显示。可以通过按键盘上的 UP或DOWN来更改数据类型:

在所有数据类型都转换为Float 之后,流程图就完成了:

Signal Source 模块创建一个实际输出,显示为时域中的唯一信号:
