Так как я любопытный человек, искал информацию о USB, главным образом о том, как использовать USB в ваших собственных проектах.

Я пришел в LibUSB, которая является библиотекой и драйвером, который позволяет вам это делать. Но это немного смутило меня.

Я ожидал, что Windows имеет драйвер ядра USB по умолчанию, который управляет всеми функциями USB. И если вы хотите, например, отправить данные в какую-либо конечную точку, вы просто вызовете некоторую функцию winAPI и отправите ей пару PID VID устройства и информацию о том, какие данные отправлять и в какую точку.

Но, посмотрев немного подробнее в LibUSB, у него есть другой драйвер, который вы должны установить в первую очередь. Итак, с моей точки зрения новичка у вас есть 2 драйвера сейчас, один драйвер USB HW и один драйвер для LibUSB. Итак, мой вопрос: зачем вам второй драйвер? Благодарю.

1 ответ1

2

Шина USB не похожа на шины PCI; USB-контроллеры не доступны напрямую, но доступны через шину PCI. Таким образом, самому контроллеру USB необходим драйвер, и вам необходим программный стек для управления всеми этими уровнями (аппаратная часть <-> шина PCI <-> контроллер USB (как устройство PCI) <-> шина USB <-> устройство USB <- > приложение)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .