我有一个脚本利用OpenCV跟踪对象并将位置传达给arduino。基本上它所做的就是将一个整数传递给arduino,而arduino将整数解释为left / middle / right并打开相应的LED。它运行良好约30秒,之后CPU使用率跃升至95%+并且过程开始像疯了一样滞后。如果我删除ser.write
命令并将左/中/右打印到终端,那么它运行正常。什么可能会备份导致高CPU使用率?我尝试了不同的波特率,每个ser.write
命令后有0.01秒的延迟。
答案 0 :(得分:1)
这是Arduino方面的缓冲问题。有一条线为其读入的每个字符打印出一个空白字符,导致缓冲区溢出。我删除了该行,现在它正常工作。