Общение через конечные точки USB с девайсом

Простейшие вопросы в области инженерной разработки
Ответить
dakishi
assistant
assistant
Сообщения: 120
Зарегистрирован: 05 сен 2019, 21:01
Версия LabVIEW: 2019
Контактная информация:

Общение через конечные точки USB с девайсом

Сообщение dakishi »

Добрый день!
Мне нужно организовать общение через конечные точки USB. В случае COM портов я справлялся с помощью VISA configure serial port.
Здесь, подозреваю, нужен VISA USB Control In, но во входных параметрах это SubVI не видно явным образом основных параметров для общения, которые мне даны в спецификации используемого устройства:

1. VID – 0xFFFE
2. PID – 0x0001
3. Номер конфигурации – 1
4. Номер интерфейса – 1
5. Конечная точка записи (EP_OUT) – 0x02
6. Конечная точка для чтения (EP_IN) – 0x82

Как правильно организуется процедура общения через конечные точки ?
1) Так понимаю, index (см. Рис) может соответствовать 4. либо 6. (следуя мануалу) - но почему обоим в таком случае и как задавать каждый, если это нужно ?
2) С Value не совсем понятно - т.к. отправляю на устройство я команду типа String, а этот входной параметр типа integer.
3) Остальные параметры не понял как соотносятся с приведенной спецификации.
Вложения
USB end points.JPG
USB end points.JPG (17.38 КБ) 1813 просмотров
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

Re: Общение через конечные точки USB с девайсом

Сообщение dadreamer »

Почитайте сначала эту статью: http://microsin.net/programming/pc/ni-v ... orial.html Далее, вы должны определить, что у вас за класс устройств (USBTMC, USB RAW, HID или что-то иное) и в какой канал (Endpoint) вам нужно передать информацию (Control, Bulk, Interrupt, Isochronous). Имея эти данные, сможете подобрать правильную последовательность :vi: из NI-VISA. Сейчас вы взяли инструмент для записи команд в Control Pipe, т.е. в канал управления. Этот канал не может принимать случайные данные, он принимает команды (запросы), в соответствии с которыми оборудование выдаёт реакцию. Погуглите по словам usb, bulk, raw на форумах NI, я много тем в своё время встречал по связи через USB.
В реальных задачах я ни разу не испытывал необходимости спускаться на уровень RAW USB. Обычно к каждой железке идёт собственный драйвер и набор DLL, которые успешно выполняют всю "грязную" низкоуровневую работу.
При желании можно сделать всё через WinAPI. Вот, к примеру, функция записи в Bulk-канал: https://docs.microsoft.com/en-us/window ... _writepipe На stackoverflow можно найти примеры приёма-передачи.
dakishi
assistant
assistant
Сообщения: 120
Зарегистрирован: 05 сен 2019, 21:01
Версия LabVIEW: 2019
Контактная информация:

Re: Общение через конечные точки USB с девайсом

Сообщение dakishi »

dadreamer писал(а):Почитайте сначала эту статью: http://microsin.net/programming/pc/ni-v ... orial.html Далее, вы должны определить, что у вас за класс устройств (USBTMC, USB RAW, HID или что-то иное) и в какой канал (Endpoint) вам нужно передать информацию (Control, Bulk, Interrupt, Isochronous). Имея эти данные, сможете подобрать правильную последовательность :vi: из NI-VISA. Сейчас вы взяли инструмент для записи команд в Control Pipe, т.е. в канал управления. Этот канал не может принимать случайные данные, он принимает команды (запросы), в соответствии с которыми оборудование выдаёт реакцию. Погуглите по словам usb, bulk, raw на форумах NI, я много тем в своё время встречал по связи через USB.
В реальных задачах я ни разу не испытывал необходимости спускаться на уровень RAW USB. Обычно к каждой железке идёт собственный драйвер и набор DLL, которые успешно выполняют всю "грязную" низкоуровневую работу.
При желании можно сделать всё через WinAPI. Вот, к примеру, функция записи в Bulk-канал: https://docs.microsoft.com/en-us/window ... _writepipe На stackoverflow можно найти примеры приёма-передачи.
Спасибо за ответ!
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Для чайников»