使用python发送串行数据在windows上会出错,但在linux上不会出错

发布于 2024-10-03 20:34:54 字数 464 浏览 4 评论 0原文

我正在使用 python 将数据发送到我的 arduino,由于某种原因,在 Windows 下它给了我一个错误。 下面是我的代码。

import serial 

ser = serial.Serial("COM3")

ser.write('1')

这是错误。

 文件“C:\Python25\lib\site-packages\serial\serialwin32.py”,

第 255 行,写入 引发 SerialException("写入文件失败 (%s)" % ctypes.WinError()) serial.serialutil.SerialException:WriteFile 失败([错误 9] 句柄 无效。)

知道为什么它给我这个吗?

I'm using python to send data out to my arduino and for some reason under windows it's giving me an error.
Below is my code.

import serial 

ser = serial.Serial("COM3")

ser.write('1')

Here is the error.

  File "C:\Python25\lib\site-packages\serial\serialwin32.py",

line 255, in write
raise SerialException("WriteFile failed
(%s)" % ctypes.WinError())
serial.serialutil.SerialException: WriteFile failed ([Error 9] The handle
is invalid.)

Any idea why it's giving me this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不喜欢何必死缠烂打 2024-10-10 20:34:54

您确定 COM3 是 Windows 机器上的有效串行端口吗?您可以使用超级终端打开它并向其发送内容吗?

如果是,另一件事就是尝试将其替换为完全限定名称,例如:

port = "\\\\.\\COM3"
ser = serial.Serial(port, 38400)

Are you sure COM3 is a valid serial port on your Windows box? Can you open it with HyperTerminal and send stuff to it?

If it is, another thing to try is to replace it with the fully qualified name, for example:

port = "\\\\.\\COM3"
ser = serial.Serial(port, 38400)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文