【问题标题】:Arduino virtualbox serial portArduino 虚拟机串口
【发布时间】:2015-10-27 12:37:29
【问题描述】:

我想在 Windows 8.1 主机下的 kali linux virtualbox guest 上编程 arduino leonardo。我知道 Arduino IDE 是用 java 开发的,所以它不依赖于任何操作系统,但我想使用 kali 的原因是它的一些程序(SET 工具包,Kautilya)。

首先我检查了主机 WIN 8.1 操作系统上的串行端口。 (阿杜诺莱昂纳多 COM3)

然后在 virtualbox 中,我更改了我的 kali 虚拟机的串行设置。正如我所注意到的:

端口号 表示虚拟机 (kali) 上的端口号,即 COM1 端口。 /dev/ttyS0

端口/文件路径表示主机(win8)操作系统上的端口号,即COM3:

在这些设置之后,我启动了 virtual mashine 并尝试在 arduino leonardo 上上传简单的草图。 Adruino IDE 中的结果是“完成上传”,但没有任何反应。

我尝试通过命令行使用 ino 但结果出错。

 ino upload -p /dev/ttyS0

可能有人知道解决方案吗?

【问题讨论】:

  • 我在 VB 中遇到了一些串行端口驱动程序的问题...另外,如果在虚拟机运行时 USB 电缆与 PC 断开连接,也会出现问题。如果可能,我建议您使用 USB virtualbox 驱动程序而不是串行驱动程序:删除串行端口配置,然后启动机器并选择它,就像您对任何 USB 外围设备所做的那样。如果不能,我发现使用\\.\comX 而不是COMX: 可以解决一些问题,所以尝试使用\\.\com3

标签: arduino serial-port virtualbox


【解决方案1】:

Arduino Leonardo 使用两个串行 COM 端口。第一个,您所看到的用于 Arduino 和您的计算机之间的数据传输,即用于将数据从 Arduino 读取的传感器发送到您的计算机。还有另一个串行 COM 用于对 Arduino 进行编程。只有在对设备进行编程时,该串行 COM 才可用且可见。该 COM 与您的 Arduino 的引导加载程序对话。

您可以在 VirtualBox 中创建一个 USB 过滤器,以便您插入 Arduino (COM1) 后,您的 GUEST 操作系统就会看到它。我认为 USB 设备的供应商 ID 和产品 ID 将取决于您的 Arduino 的引导加载程序,但是您可以创建一个没有此参数的过滤器,以便您的客户操作系统可以看到连接到您的主机操作系统的每个新 USB 设备。所以这将按顺序管理您的两个串行 COM 端口。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-10
    • 2017-03-28
    • 1970-01-01
    • 2023-03-11
    • 2011-11-19
    相关资源
    最近更新 更多