如何解决PySerial API认为在write期间com端口仍处于打开状态,为什么?
| 我正在使用PySerial(用于串行通信的Python API)通过蓝牙将AT命令发送到诺基亚手机。import serial
com = serial.Serial()
com.port = 19
com.timeout = 0 #also tried a timeout value greater than 0.
try:
com.open()
# at this point I turn off the phone.
com.write(\"AT\\r\\n\")
print com.readlines()
except SerialException,e:
print e
打开()通信后,我就关闭了电话。然后,我写(\“ AT \\ r \\ n \”)。此时,功能块和运行时挂起。
你有什么解决办法吗?
解决方法
将超时设置为“ 1”时,您将禁用超时参数,则“ 2”将成为阻塞调用。呼叫者将被阻止,直到设备应答为止。
尝试为串行连接serial3ѭ设置一个非零的超时值。
如果仍然挂起,则问题应该出在蓝牙堆栈中。
, 实际上,您要查找的是writeTimeout而不是timeout参数。我知道较晚的答案,但我仍然需要它,我想我不是唯一的一个。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。