阻止GNURadio / GRC中的串行输出

时间:2017-04-14 14:25:19

标签: serial-port gnuradio gnuradio-companion

我正在开发一个涉及GNU Radio / GRC的项目,并不熟悉该软件。我试图使用块将数据输出到GN​​U Radio中的串行端口,但是还没有找到方法。

我想知道是否有一个预定义的块可用于将此信息放入串行端口(Raspberry Pi 3上的USB),或者我是否必须创建自己的块。如果我必须创建自己的块,那么代码会是什么样的。

我已经能够使用File Sink将数据写入文件以确保我获取数据,并且想知道修复是否就像将文件接收器更改为串行端口接收器一样简单。见下图:

http://imgur.com/a/BdaMZ fg excerpt

我也做了一些研究,发现了一个看起来像我需要的github仓库 - 不幸的是,它链接到的存储库已经不存在了。它确实提到了使用pyserial,我相信这是用于在python中创建自己的块。这个回购的链接如下:

https://github.com/jmalsbury/gr-pyserial

1 个答案:

答案 0 :(得分:4)

  

...想知道修复程序是否像将文件接收器更改为串行端口接收器一样简单。

是的!或者,它更容易:

所以,事实上,您甚至可以简单地使用文件接收器来写入例如/dev/ttyS0(或/dev/ttyUSB0,或者您的串口的设备名称,但是您必须首先将串口设置为单独工作。这样做的方法是使用stty,例如

stty -F /dev/ttyS0 115200

在运行流程图之前。

请注意,流程图中的所有内容都指向您没有足够精通GNU Radio来成功交换数据。我无法涵盖这里的所有内容,请阅读official Guided Tutorials,但是:

  • 在像您这样的流程图中,IO是固有的速率限制元素,必须不使用“Throttle”。节流阀实际上只是一种避免流程图消耗所有CPU(并减慢模拟速度)的工具。
  • 给你的文件一个.grc结尾是不好的做法,因为这是为GNU Radio流程图保留的结尾。
  • 给它一个.txt结尾是明显的误导,因为没有涉及任何文本。 “文件格式”(我甚至不称之为格式)实际上只是普通的二进制数字,因为你的计算机处理它们;不是这些浮点二进制数的十进制ASCII表示
  

我也做了一些研究,发现了一个看起来像我需要的github仓库 - 不幸的是,它链接到的存储库已经不存在了。它确实提到了使用pyserial,我相信这是用于在python中创建自己的块。这个回购的链接如下:

不知道你指的是什么,https://github.com/jmalsbury/gr-pyserial完全存在!