是否可以通过JavaScript通过计算机的串口进行通信?
我必须编写一个简短的程序,通过具有GUI并且跨平台兼容的串行端口将数据发送到微控制器,我真的不想使用Java的Swing。
答案 0 :(得分:21)
JavaScript本身没有任何内置功能允许您访问串行端口。但是,各种JavaScript引擎(v8,rhino等)允许您编写自己的自定义本机对象。
您可能想要查看node.js,它是v8的JavaScript库,专注于编写服务器端代码(而不是Web浏览器客户端代码)。似乎某人已经为此编写了一个serialport包:
答案 1 :(得分:2)
有一个用于串行端口通信的跨平台插件,名为jUART。
答案 2 :(得分:1)
这是一个老问题,但如果这有助于其他任何人,Chrome应用可以访问序列API - http://developer.chrome.com/apps/serial.html - 这可能有所帮助。
这是Chrome特定的(显然是..),但Chrome可以跨平台使用,因此可能会回答这个问题。
答案 3 :(得分:0)
是的,可以使用ActiveX (我做到了)。您可以创建一个activeX并使用JavaScript来调用它。 如果您愿意,可以使用.net dll并使用regasm注册它。看一下这个link
您也可以使用VB6编写activeX并进行注册。两者都很好。 Ps。:如果你使用ActiveX,JavaScript代码将只在IE上运行。
答案 4 :(得分:0)
如果您有一个允许您通过串行端口进行通信的DLL库(这包括例如大多数Windows API),您可以使用ctypes从Firefox chrome代码(或具有universalxpconnect权限的内容代码)调用它。 / p>
答案 5 :(得分:0)
您可以做的是使用连接到本地计算机的Java应用程序的Java小程序,该应用程序读取串行端口。然后,applet将数据传输到JavaScript类或可以保存信息的东西。然后可以使用其他JavaScript代码来访问数据。这是一个复杂的解决方案,但应该有效。
另一种方法是创建POJO服务。
答案 6 :(得分:-4)
没有
我建议使用wx-widgets来完成任务。