首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检测USB端口连接

检测USB端口连接
EN

Ask Ubuntu用户
提问于 2018-11-12 19:10:48
回答 1查看 434关注 0票数 0

我正在用C++编写一个控制台应用程序。到目前为止,我的代码可以检测我的设备(linux)是否已经通过TCPIP连接到另一个设备(通常是windows)。一旦我打开Windows上的Putty连接到运行控制台应用程序的设备,我的代码就会识别它并自动将数据从我的设备(Linux)发送到我的计算机。

我也想用USB做同样的事情。现在,我的控制台应用程序可以从我的Windows设备发送/接收数据,但前提是我首先发送数据。我希望我的控制台应用程序自动检测它是否已通过putty或其他应用程序连接,并自动开始向我的微处理器发送数据。我通过运行在USB设备连接和断开时显示的代码来阅读和播放libudev。我想知道我的设备(Linux)是否有办法知道它已经通过Putty连接到我的PC上,而不是热插拔事件。如果是这样的话,是否有一个我可以使用的例子。

使用套接字是个好主意吗?我可以使用带usb设备的套接字吗?

谢谢你的进阶。

完全公开,我是相对较新的Linux操作系统。

EN

回答 1

Ask Ubuntu用户

发布于 2018-11-12 19:33:16

嗯,你的建议有一些重大问题。一个普通的USB电缆是主从,这意味着一台机器是控制机器,另一台是从机。无论是Windows机器还是Ubuntu机器,都希望成为主机,将USB操作控制为USB-Master。没有什么现成的东西可以改变这种关系(但是许多嵌入式设计会改变主从关系)。

但是,您可以使用USB桥(或传输)电缆在两台计算机之间通过USB进行通信。我在亚马逊的“即插即用Windows传输电缆”上找到了这个。您应该能够使用它来编写双方的控制台应用程序,但是需要一些Windows和Linux驱动程序的经验。不是微不足道的。

我认为另一个想法,将是使用两个USB网络,并连接到彼此的以太网交叉电缆,并建立一个本地网络。您仍然可以使用您的网络功能在这两个设备之间进行通信,但是当USB端口被插入时,这是可以检测到的。

以太网交叉电缆和usb网络线缆是现成的,驱动程序很好地定义(显然)为Windows和Ubuntu。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1092313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档