Отправить байт с ПК на порт связи USB с помощью java

Могу ли я отправить байт с ПК на порт связи USB через программу Java? если да. Есть ли какой-нибудь пример кода, который может помочь в этом вопросе??

Я ищу примеры кодов или хорошие учебники


person user1077980    schedule 30.12.2011    source источник
comment
Чего ты хочешь достичь? Простая отправка байта по USB бесполезна. Данные, передаваемые через USB, более сложны, чем через традиционный последовательный порт, поскольку несколько устройств используют один и тот же порт. Итак, на какое устройство вы хотите отправить свои данные?   -  person Roger Lindsjö    schedule 30.12.2011
comment
Мне нужно отправить последовательность байтов ... но сейчас я хочу проверить, как отправлять данные с ПК на PIC с использованием последовательной связи.   -  person user1077980    schedule 30.12.2011


Ответы (3)


Если вы используете преобразователь USB-последовательный порт (именно так это и звучит), то программное обеспечение драйвера ОС предоставляет приложениям последовательный интерфейс.

Я думаю, вам нужно обратить внимание на JavaComms API — http://www.oracle.com/technetwork/java/index-jsp-141752.html.

Эта страница вообще помогает - http://alumni.media.mit.edu/~benres/simpleserial/ ?

person Paul Cager    schedule 30.12.2011
comment
Нет .. Я просто хочу отправить данные с ПК на PIC184550, который находится в наборе для разработки, через порт USB. - person user1077980; 30.12.2011

При использовании адаптера USB-Serial часть USB можно (обычно) игнорировать, и вместо этого вы должны просто сосредоточиться на последовательной части. Драйверы адаптера USB предоставят вам виртуальный последовательный порт для использования в качестве любого другого последовательного порта.

Для использования последовательного порта с Java см. Java Communications API или Serialio

person Roger Lindsjö    schedule 30.12.2011

Вы не указали, какой тип USB-соединения вы хотите, поэтому это будет немного общим.

Если ваше устройство идентифицирует себя как USB CDC, ваша система, вероятно, уже загружает драйвер и позволяет вам получить к нему доступ как к последовательному порту. Аналогично, если кости идентифицируют себя как клавиатуру HID (устройство взаимодействия с человеком), мышь и т. д.

Если у вас есть свой тип устройства, вы можете использовать javax.usb из Linux (может быть порт для Windows). Вам необходимо идентифицировать ваше устройство по идентификатору поставщика/устройства, возможно, настроить ваши конечные точки, устройство, если вы хотите управлять, объемные или изохронные данные, создать пакет, заполнить его вашими байтами, а затем передать его. Javax.usb содержит пример кода.

Для простоты я бы порекомендовал вашему устройству быть CDC (код доступен, проверьте Google), и он будет идентифицировать себя как последовательный порт, и вам не нужно обрабатывать какие-либо сложности USB при общении.

person Roger Lindsjö    schedule 01.01.2012