2016-11-26 2 views
0

Я пытаюсь найти способ отправки/получения данных через USB-порт процессора ARM на плате zynq (ZC706), работающем с petalinux.Как передавать данные с высокой скоростью через USB?

Я искал в сети, и я совершенно смущен, с чего начать. Я нашел решения, но они не рассматривали USB для подключения к процессору ARM, высокоскоростной передаче данных или petalinux.

Я знаю, как писать простые коды ядра Linux, и я знаю, как работать с платой zynq.

Чтобы быть конкретным, я хочу знать, как написать фрагмент кода, лучше сказать библиотеку функций, в petalinux, чтобы читать и записывать на USB-порт, подключенный к ARM, как можно более высокоскоростной.

+0

С чем связана USB-порт? Является ли Zynq хостом или периферией в этом отношении? –

+0

@JameyHicks Для меня не очень важно быть хозяином или гостем. подумайте, что лучше. – MJay

ответ

1

Похоже, вы пытаетесь сделать довольно сложную вещь. Сначала я хотел бы сказать, что USB - это не какой-то порт, который вы можете читать «байтом после байта» данных, как в случае последовательных или параллельных портов.

Я бы порекомендовал вам ознакомиться с документацией по USB 2.0 и EHCI (требуется некоторое время). Кроме того, вам нужно знать, какой USB-контроллер - это хост или устройство USB-типа? В случае типа устройства USB - возможно, вам нужно написать собственный драйвер для этой платы и подключить его к некоторому USB-хосту (например, ПК). Затем вам нужно создать протокол связи через USB. К счастью на стороне ПК вы использовали бы библиотеку libusb для этого. Я имею в виду, что вам нужно написать программу, которая использует библиотеку libusb для связи с вашей доской.

Достаточно много работы.

Смежные вопросы