我正在尝试找到一种通过运行 petalinux 的 zynq 板(ZC706)上的 ARM 处理器的 USB 端口发送/接收数据的方法。
我在网上搜索,我完全不知道从哪里开始。我找到了解决方案,但没有考虑将 USB 连接到 ARM 处理器、高速数据传输或 petalinux。
我知道如何编写简单的 linux 内核代码,也知道如何使用 zynq 板。
具体来说,我想知道如何编写一段代码,最好说一个函数库,在petalinux中尽可能高速地读写连接到ARM的usb端口。
我正在尝试找到一种通过运行 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 创建一些通信协议。幸运的是,在 PC 端,您将为此使用 libusb 库。我的意思是你需要编写使用 libusb 库与你的板通信的程序。
相当多的工作要做。