【问题标题】:How to write data to USB port serially in Linux [duplicate]如何在Linux中将数据串行写入USB端口[重复]
【发布时间】:2014-01-10 13:40:47
【问题描述】:

我想在 Linux 中使用 C 向 USB 端口写入数据。

基本上,我想从文件中读取数据并发送到 USB 端口,我将从目标板接收数据。

任何人都可以建议如何成功地做到这一点或为此提出任何申请吗?

【问题讨论】:

  • 如果您不需要高比特率,请考虑使用广泛支持的 HID 设备。您还没有具体说明“目标板”到底是什么,但有一些针对不同微控制器的 HID 实现。然后,您将不需要主机端的任何特殊驱动程序,因为 HID 设备在任何地方都受支持。
  • 我只使用串行通信,因为我无法将 RS232 电缆连接到我的笔记本电脑,所以我使用了 USB 到 rs232 转换器。早些时候,我使用了 Windows Comm Operator(如 Hyperterminal)。我可以从中发送数据。由于我想从文件中读取并串行发送该数据,因此我将使用 linux。所以你能根据我的申请推荐我吗
  • @unwind 这个问题是关于 Windows,而不是 Linux。
  • @Kevin,我之前告诉过我在 Windows 中使用过它。但现在我想在 linux 中使用
  • 仅仅因为 OP 说“串行”并不意味着他实际上是在谈论 COM 端口。请准确告诉我们您要与哪个设备通信,并提供lsusb -v 的输出,以便我们查看描述符。插入时它会创建一个/dev/tty* 条目吗?

标签: c linux usb


【解决方案1】:

您可以为此使用 libusb 库。看一看:https://libusb.info/

不过,您需要了解一些有关 USB 协议的知识。 USB 不像串行端口,您可以在一侧发送原始数据并在另一侧接收它们。您需要了解 USB 的工作原理。

【讨论】:

  • 我只使用串行通信,因为我无法将 RS232 电缆连接到我的笔记本电脑,所以我使用了 USB 到 rs232 转换器。早些时候,我使用了 Windows Comm Operator(如 Hyperterminal)。我可以从中发送数据。由于我想从文件中读取并串行发送该数据,因此我将使用 linux。所以根据我的申请建议我
  • @user3095102 建议在您的帖子中添加“我正在使用仅串行通信”评论。实际上,您有一个虚拟端口,而不是 USB 问题。结帐 comport 应用程序。
猜你喜欢
  • 1970-01-01
  • 2021-09-20
  • 2013-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-30
  • 2011-04-21
  • 2012-08-29
相关资源
最近更新 更多