我刚刚能够构建和安装自己的信号块。我只是想制作一个转发数据的块,但添加一个定义长度的标签。然后,在数据被调制后,我开发了一个块,它应该把标签读回给我。当块紧挨着时,它就可以工作了。
例如输入-->B1-->B2-->B3-->输出
B1每50个项目添加一个标签,B2是某种调制器(在我的情况下是BPSK),B3是标签读取器。除非B3正好在B1之后,否则它永远不会打印任何内容。
我可能做错了什么?我对流标签有错误的想法吗?
现在很可能已经解决了这个问题。另一个获得答案的地方是gnuradio讨论邮件列表。然而,为了防止其他人发现这个问题,我可能会添加一些颜色,我希望这会有所帮助。
请记住,GnuRadio是2012年的早期版本。问题未指定GR版本。这些天是GR 3.8和3.9,除非我弄错了,否则3.10正在进行中。
作为GnuRadio游戏的新手,我对标签进行了一些挖掘,因为我想用它们沿着数据路径传递关于一些信号参数的信息。我的挖掘/实施在GR 3.9中完成标签传播有3个主要策略:
- TPP_DONT-无传播
- TPP_ALL_TO_ALL-所有输入的标记传播到所有输出(默认值)
- TPP_ONE_TO_ONE-标记从第n个输入传播到第n个输出
- TPP_CUSTOM(我知道,听起来像是巨蟒剧团关于调查的短剧)——它和TPP_DONT是一样的,这就是为什么我只说了3个政策。然而,它向读者表明,区块将以自己的方式处理它。因此,使用它是很好的,如果没有其他用于文档目的的话
我猜当时使用的GnuRadio版本应用了TPP_DONT策略(如果它使用了策略)。因此,没有为您做任何传播。
现在,除非您覆盖默认的TPP_ALL_TO_ALL策略,否则您应该将标记放在数据路径上。
编辑:刚刚意识到它被描述得可能要好得多https://wiki.gnuradio.org/index.php/Stream_Tags#Tag_Propagation