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

问题描述:

我试图找到一种方式来通过运行petalinux的zynq板(ZC706)上的ARM处理器的USB端口发送/接收数据。如何通过USB高速传输数据?

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

我知道如何编写简单的linux内核代码,我知道如何使用zynq板。具体来说,我想知道如何在petalinux中编写一段代码,更好地说一个函数库,以读取和写入连接到ARM的usb端口作为尽可能高的速度。

+0

什么是USB端口连接? Zynq在这方面是主机还是外设? –

+0

@JameyHicks作为主持人或嘉宾,对我来说这不是一件大事。考虑它是更好的。 – MJay

好像你正在尝试做一些相当复杂的事情。 首先我想说的是,USB不是某种端口,您可以像“串口或并口”一样读取“字节后的字节”数据。

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

相当多的工作要做。