问题标签 [virtual-serial-port]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
280 浏览

java - 错误 Win XP 设置串口状态

我有以下代码片段通过 USB 设备(显示 Posiflex PD-2800 for POS)显示 HELLO WORLD。

我使用 GiovynetDrive 库来管理虚拟 COM 端口。

代码运行完美(假设 COM3 可用)。

我的问题是,当我关闭计算机时,它并没有关闭设备(USB 电源)。这导致下次启动,代码抛出异常:

这迫使我拔下并插入 USB 设备,然后它又可以正常工作了。

我认为 SO 的这种行为是可配置的,但我不知道。

更新:

当 USB 设备处于重新启动挂起状态时,我可以使用纯文本打印机(SO 的通用驱动程序)毫无问题地进行打印测试。然后我可以通过我的查看器看到打印测试,但从我的 java 代码中仍然无法工作,直到我拔掉它。

SO是Windows XP,并且USB根HUB(设备管理)无法选择“允许计算机关闭设备以节省能源”。

0 投票
0 回答
192 浏览

c++ - 如何捕捉 com0com IO-CTL 命令?

我有两个连接的虚拟 COM 端口(例如 COM0 和 COM1),由com0com驱动程序创建。一些旧应用程序(App1)将数据写入 COM0,我从 COM1(在 App2 中)读取数据,反之亦然。

如何从由 com0com 驱动程序 (COM1) 创建的虚拟 COM 端口捕获一些 IO-CTL,如波特率、奇偶校验等?

当然,我可以在 App1 中进行任何更改,而在 App2 中可以做任何事情。

0 投票
0 回答
412 浏览

linux - Linux 虚拟串口未显示在列表中

这个类似问题的解决方案都没有帮助:Socat virtual serial port not Recognized

我正在使用 socat 创建一个虚拟串行端口,然后正确链接它,但 node-serialport 没有接它。

在使用node-serialport 的节点中

您会注意到没有串行端口被拾取。我该怎么做才能列出这个端口?

0 投票
1 回答
520 浏览

c# - 我可以通过 WPF 应用程序以编程方式确定哪些虚拟 COM 端口是传入的,哪些是传出的?

我有一个需要连接的蓝牙串行设备。我可以通过使用查询 WMI 数据库以找到我需要的蓝牙端口

或通过检查使用注册表

HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM\Device\BthModem0

但是我找不到允许我确定两个创建的虚拟 COM 端口中的哪个是传入和传出的公开 API。

如果您在设备管理器中深入挖掘,此信息将由 Windows 显示,因此我应该可用(通过 PInvoke 或其他方式?)但我需要找到一种从 WPF 应用程序以编程方式找到它的方法。

0 投票
1 回答
664 浏览

debugging - 使用虚拟串行端口调试 Windows XP 客户机

我正在尝试通过 QEmu 虚拟串行端口调试我的 Windows XP 来宾内核。

我正在关注“设置目标 VM”(linux-kvm.org)通过使用设置被调试者

问题是 QEmu 无法启动并出现错误信息

qemu-system-x86_64: -serial tcp:127.0.0.1:portNo: 未指定主机和/或端口 qemu: 无法将串行设备连接到字符后端 'tcp:127.0.0.1:portNo'

虽然我可以通过添加serve,nowaitafter成功创建调试器 VM tcp:ip:portNumber

有什么我想念的吗?

0 投票
1 回答
332 浏览

visual-studio - 64 位版本的 vspdctl.dll

我正在 VS2013 上创建一个应用程序,它使用 vspdctl.dll 创建虚拟串行端口对。此虚拟端口用于与我的 PC 上运行的其他应用程序进行通信。

当我使用 Platform=win32 配置编译/链接时,.exe 文件已成功创建,并且虚拟端口创建工作正常。注意:我的机器是 x64

当我更改平台 = x64 时,我的 exe 再次创建,没有任何问题,但仍然无法加载 dll。它让我感觉 vspdctl.dll 是一个 32 位的库。

但我打算在代码中使用其他 64 位库,这就是为什么我还希望在 64 位应用程序中实现 vspdctl.dll。是否有任何 64 位版本的 vspdctl.dll 或如何在 64 位应用程序中实现 32 位 dll。

任何帮助将不胜感激。谢谢

这是我加载dll的CreateVSPair函数的代码

};

0 投票
2 回答
9504 浏览

python - Pyserial 不能很好地使用虚拟端口

动机

我想开始学习如何使用 python 库Pyserial。这似乎是一个非常好的图书馆,适用于很多人。我想将它用于即将进行的项目,在该项目中我必须自动化串行通信。

环境

我正在运行 Ubuntu 15.04。我正在使用 Python 2.7。

设置虚拟端口

我目前没有可以通过串行端口进行通信的设备。我正在使用socat应用程序创建两个以 9600 的波特率相互连接的虚拟端口。

伟大的!似乎端口工作!

一个简单的pyserial脚本

我使用 pip 安装 pyserial

然后我写了一点serialtest.py

这就是整个serialtest.py

运行脚本并遇到错误

那是怎么回事?

调试不成功

这家伙说他在使用python 2.6时成功了。我无法让 Pyserial 与 2.6 一起工作。

这个家伙遇到了波特率问题。我用命令仔细检查了我的波特率,$stty -F /dev/pts/2并确认它实际上是 9600 的波特率。

这家伙还声称波特率有问题并将其归因于他的内核。那是在 2012 年,所以我认为它不再相关。

我的问题

如何让我的 serialtest.py 脚本无错误地运行?

0 投票
0 回答
98 浏览

serial-port - 将虚拟零调制解调器端口添加到 USB-RS232 适配器

我有一个 USB-RS232C 适配器。将它插入我的计算机很好地提供了一个 COMx 端口。

我要连接的设备指定SD并且RD应该切换。我的假设是,这指的是通常指定为RxD和的通道TxD。用于执行此操作的工具(在没有重新布线的情况下)是“零调制解调器”适配器。

是否可以在计算机上模拟 null-modem 适配器的存在,以保存

  • 购买物理适配器
  • 重新布线现有电缆
  • 写一些令人费解的驱动程序?

这个问题(Faking an RS232 Serial Port)有一些看似合理的答案,但它们似乎是指模拟整个设置 - 我已经有一个 COM 端口,只想切换一对信号。

0 投票
1 回答
1725 浏览

c# - 条码扫描器只读取一个字符

我正在开发一个小型 winform 应用程序,该应用程序从虚拟 com 端口上的条形码扫描仪读取输入并将数据写回我的 winform 上的文本框。我是 C# 新手,所以一直在苦苦挣扎。我当前的代码在下面,并从这里改编

我要扫描的完整字符串是“3894038”,但我只能让文本框在文本框中一次显示一个字符。我怀疑这与我的 .ReadExisting 命令有关,但我对如何继续感到有些困惑。我的代码有问题吗?

我在这里先向您的帮助表示感谢。

马歇尔

0 投票
2 回答
9316 浏览

python - Python/Pyserial:从端口读取传入信息

我刚刚开始使用 pyserial,因为我最终需要读取/保存来自特定端口的信息。使用以下代码,我只是打印使用的端口,然后尝试写入然后读取一些文本(“hello”)。端口打印正常,但我的字符串输出为 5。知道这是为什么吗?

输出:

另外,我有没有一种简单的方法来模拟通过端口传来的文本信息流,以便我可以测试读入/保存传入的信息?

我正在使用 Python 2.7 和“虚拟串行端口驱动程序 8.0”[Eltima VSPD] 来模拟一个端口来测试这些东西。

谢谢,史蒂夫