【问题标题】:python monitoring over serial portpython监控串口
【发布时间】:2010-10-29 00:09:22
【问题描述】:

下午好,

我想请教一些关于通过串行端口监控事件的最佳方式的建议。

我正在使用 PySerial 通过串行端口向某些设备写入“命令​​”,并且

我希望收到有关此设备状态的反馈。

Wich 是最好的方法:1) 填充管道并读入,2) 委派为只读的新线程,还是什么?

我也可以要求一个简单的代码来实现解决方案吗?

【问题讨论】:

标签: python pyserial


【解决方案1】:

有关使用 pyserial 的一般提示,请查看评论中建议的搜索 S.Lott。

关于实现应用程序的最佳策略 - 这完全取决于您的协议是如何定义的。设备是否会立即响应查询?还是他们不断发送必须监控的数据?定义这一点很重要,因为它肯定会影响您处理通信的方式。

一般来说,我发现让一个单独的线程从串行端口读取所有内容并将数据泵入Queue 是简单而稳定的。然后,主应用程序逻辑可以在需要时查询此队列并读取数据。

【讨论】:

  • 是的设备会立即响应,但有时它们可​​能会“随机”发送数据。无论如何,不​​幸的是,S.Lott 建议的搜索搜索没有帮助
  • 我在上一段中建议的单独线程解决方案怎么样?它对你有用吗?这是一种非常通用的模式,可提供良好的性能。
【解决方案2】:

【讨论】:

  • 只是好奇 - 你为什么决定多处理而不是线程?
  • 您是否对读者和作者使用了不同的流程?如果是这样,你是如何从不同进程访问同一个串口的?
  • 尝试看看 XMLRPC + Python 解决方案。有重点!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多