python中的串行通信导致CPU使用率随着时间的推移而增加

时间:2014-04-13 17:19:40

标签: python serial-port arduino

我有一个脚本利用OpenCV跟踪对象并将位置传达给arduino。基本上它所做的就是将一个整数传递给arduino,而arduino将整数解释为left / middle / right并打开相应的LED。它运行良好约30秒,之后CPU使用率跃升至95%+并且过程开始像疯了一样滞后。如果我删除ser.write命令并将左/中/右打印到终端,那么它运行正常。什么可能会备份导致高CPU使用率?我尝试了不同的波特率,每个ser.write命令后有0.01秒的延迟。

1 个答案:

答案 0 :(得分:1)

这是Arduino方面的缓冲问题。有一条线为其读入的每个字符打印出一个空白字符,导致缓冲区溢出。我删除了该行,现在它正常工作。