linux - 如何通过USB高速传输数据?

标签 linux usb data-transfer zynq

我正在尝试找到一种方法来通过运行 petalinux 的 zynq 板 (ZC706) 上的 ARM 处理器的 USB 端口发送/接收数据。

我在网上搜索过,完全不知道从哪里开始。我找到了解决方案,但没有考虑 USB 连接到 ARM 处理器、高速数据传输或 petalinux。

我知道如何编写简单的 Linux 内核代码,我知道如何使用 zynq 开发板。

具体来说,我想知道如何在 petalinux 中编写一段代码,最好是一个函数库,以尽可能高速地读写连接到 ARM 的 USB 端口。

最佳答案

看起来你正在尝试做一些非常复杂的事情。 首先,我想说 USB 不是某种端口,您可以像串行或并行端口那样“逐字节”读取数据。

我建议您先阅读有关 USB 2.0 和 EHCI 的文档(这需要一些时间)。此外,您需要知道您的开发板是哪种类型的 USB - 是主机 USB 类型还是设备 USB 类型?如果是 USB 设备类型——您可能需要为该板编写自己的驱动程序并将其连接到某个 USB 主机(例如 PC)。然后您需要通过 USB 创建一些通信协议(protocol)。幸运的是,在 PC 端,您可以为此使用 libusb 库。我的意思是你需要编写使用 libusb 库与你的板进行通信的程序。

还有很多工作要做。

关于linux - 如何通过USB高速传输数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40819012/

相关文章:

sql-server - SSIS 将连续数据从一台服务器/数据库插入到另一台服务器/数据库

java - 我需要通过 WiFi-Direct 从传感器获取数据。如何向传感器发送命令?

linux - 撤消全局 STDERR -> STDOUT 重定向

linux - 更改 vim 快捷方式

c++ - Libudev 和 AT 命令

c# - 您能否以编程方式查看 USB 设备在 Windows 中请求的安培数?

自 Windows 10 1809 以来,通过 USB HID 设备创建文件失败并出现访问被拒绝 (5)

java - FTP客户端问题

linux - 如何在 Linux 中比较一个文件和一堆文件

php - 编译后php在linux上哪里搜索模块.so库?