我无法决定在哪个网站上发布此内容,但我认为这是最合适的。
我正在尝试为运行以下操作系统的嵌入式系统设置测试环境:ChibiOS。该嵌入式系统需要一个 USB OTG 设备(USB 闪存驱动器),其中有一个文件。该文件是在 PC 上创建的,需要传输到嵌入式系统。
当前方法:
- 取出一个 USB 闪存盘,将其插入电脑。
- 将文件从目录复制到 USB 闪存驱动器。
- 弹出/卸载 USB 闪存驱动器。
- 将 USB 闪存驱动器从 PC 物理移动到嵌入式系统。
这很繁琐,每天都会发生几十次。我想编写脚本,但需要一个解决方案来将 USB 闪存驱动器从一个主机端口物理移动到另一个主机端口。
我以为我找到了一些东西以下类型的 USB 设备(Sony USM-SA3),带有两个 USB 连接器。
但是,有一个免责声明:
*注意:请勿同时将SA系列连接到PC和移动设备。
这就是我想要做的,所以这行不通。
简而言之,我要寻找的设备有两个 USB 端口。
- 将两个 USB 端口插入您的 PC。
- 安装了两个 USB 闪存驱动器并显示为 2 个设备。
- 复制到一个设备的文件会同时显示在另一个设备上。
这DIAMOND PC 到 PC USB 文件传输适配器看起来正是我想要的,但似乎依赖于特定的软件,可能是因为没有板载存储。
当然,任何其他解决方案都会受到欢迎。
答案1
尽管这个问题已经存在好几年了,但它仍然很有趣。
我见过有人使用带有 USB-OTG 端口的单板计算机作为存储设备,允许其驱动器的一部分作为 USB 存储设备出现在另一台计算机上。两个系统都可以修改文件,但必须小心避免同时写入两个文件。Linux“USB 小工具”项目就是允许这样做的一个方案。
我见过 USB 开关,它们可以帮助避免来回移动驱动器。有些可以通过软件控制,以允许编写脚本。
如果一些人对底层硬件和固件有足够的了解,那么他们就可以创建一个双端口 USB 驱动器。也许可以在某种 FPGA 开发板上做到这一点,或者打开一些闪存驱动器并用烙铁焊接它们。我有一些想法,但我不确定我是否应该把我的不成熟的想法告诉别人。
选择哪种方案取决于自己感觉最舒服的地方。Linux USB 小工具将是一种软件密集型解决方案。某种 FPGA 是一种固件解决方案。用美工刀和烙铁破解一些闪存驱动器是一种硬件解决方案。
PC 到 PC USB 传输线的链接已损坏,因此我不确定这是怎么回事。我猜它模拟的是串行或网络连接,而不是存储,因此在这种情况下不太可能起作用。一台计算机要将文件提供给另一台希望看到 USB 驱动器的计算机,需要 Linux USB 小工具和 OTG 线之类的东西才能工作。
再说一次,我知道这已经很老套了,但我偶然发现了它,发现它很有趣,并且认为我可以分享一些想法,让有类似问题的人可以在哪里寻找解决方案。
答案2
几年前,在类似情况下,我们也做过类似的事情。
将一些软件放在 USB 存储上,这将是第一阶段的引导加载程序。它指示嵌入式设备从网络文件服务器加载操作系统,以及从哪里加载。
每次构建新操作系统时,让构建将其复制到启动服务器上的文件中。然后按下嵌入式设备上的重置按钮。
看着bootp
。