python读取实时更新的数据_用Python实时读取串行数据

我正在使用Python中的一个脚本通过串行端口以2Mbps的速度从PIC微控制器收集数据。

PIC的工作时间为2兆字节,FTDI的usb串行端口的工作时间为2兆字节(都用示波器进行了验证)

即时消息发送消息(大小约为15个字符)约为每秒100-150次,其数量会增加(以检查是否有消息丢失等)

在我的笔记本电脑上,Xubuntu作为虚拟机运行,我可以通过Putty和脚本(python 2.7和pySerial)读取串行端口

问题是:当通过Putty打开串行端口时,我看到所有消息(消息中的计数器递增1乘1)。很 完美!

当通过pySerial打开串行端口时,我看到了所有消息,但不是以每秒100-150x的速度接收,而是以每秒5秒的速度接收(消息仍以1乘以1的速度递增),但它们可能存储在某个缓冲区中,因为当我关闭PIC时,我可以去厨房回来,我仍然接收消息。

下面是代码(我省略了大部分代码,但循环是相同的):ser = serial.Serial('/dev/ttyUSB0', 2000000, timeout=2, xonxoff=False, rtscts=False, dsrdtr=False) #Tried with and without the last 3 parameters, and also at 1Mbps, same happens.

ser.flushInput()

ser.flushOutput()

While True:

data_raw = ser.readline()

print(data_raw)

有人知道为什么pySerial从串行端口读到行尾要花这么多时间吗?

有什么帮助吗?

我想实时得到这个。

谢谢你

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值