我正在尝试使用Python将USB串行写入我的Arduino Nano。但是,我发现的是(使用完全相同的代码),当我将其键入IDLE时,代码可以正常工作,但是当我将其保存到文件并尝试从那里运行时,由于某种原因,Arduino永远不会收到数据。我已经检查过并且在两个位置都使用了正确的Python版本(2.7.9)(由于我正在使用的其他库,我很遗憾不能使用Python 3。)
我正在使用的代码:
whitespace
当我通过单独输入行来在IDLE中运行它时,可以看到正确的行为:Arduino响应(转动伺服)并回送它发送的数据,这是正确打印的。但是,从保存的文件运行,伺服不响应,也没有收到回声。
有什么想法吗?
答案 0 :(得分:0)
我之前错过了这个答案(pySerial write() works fine in Python interpreter, but not Python script),但事实证明我需要在打开串口后添加time.sleep(2)。我的猜测是,在IDLE中,我输入下一行的时间占了这个延迟,但它在代码中立即发生。