在客户端打开COM端口进行串行通信的解决方法(最好使用Python)

2024-04-20 07:04:13 发布

您现在位置:Python中文网/ 问答频道 /正文

目标

我用Flask框架做了一个网站,对HTML、CSS、JS和Python都很熟悉。我的目标是将arduino连接到客户机的usb端口并使用它串行写入()向其发送号码。你知道吗

注意事项

如果arduino连接到服务器,我有一个interfacing with python的工作示例。你知道吗

import serial
ser = serial.Serial('COM4', 9600)
ser.write('5')

现在我想在客户端运行这3行代码。你知道吗

这是否可行?我做了很多研究,但由于安全原因,这似乎不可行?(我希望有人能证明我错了。)这就是为什么我在寻找解决办法。但在此之前,我必须提到,我不需要任何数据(数字)来自服务器。一旦网页加载所有串行通信,我需要的是在客户端。你知道吗

客户端python:我已经研究了在客户端编写python,并阅读了skulpt和PyPyjs,但不确定如何在客户端用它们运行上述3行(它们似乎都不支持import serial所需的pyserial,或者至少我没有找到任何文档)

我还查看了arduino文档中的interfacing with software,但似乎所有提到的语言都是服务器端的。如果你知道任何可能有帮助的方向语言,我很乐意知道并去学习它们。我看到许多论坛提到节点.js但我的理解是,这也只能在服务器端完成工作。你知道吗

如果您能给我提供任何其他方面的帮助,我将不胜感激。提前谢谢。你知道吗


Tags: 文档import服务器框架语言客户端flask目标
1条回答
网友
1楼 · 发布于 2024-04-20 07:04:13

Is this even doable? I have researched a lot and it seems that this is not doable due to security reasons?

你说得对。浏览器无法访问COM端口。不管你选择什么语言或框架,浏览器都不会给你这种访问权限。你知道吗

您需要创建一个独立的桌面应用程序。您可以使用HTML和JavaScript访问串行端口,而不是在浏览器中。Chrome应用程序(实际上正在消失)可以做到这一点,同样,一个使用Electron的应用程序也可以做到这一点。你知道吗

相关问题 更多 >