Usb и все что с ним

  • Автор темы -
  • Дата начала
Статус
Закрыто для дальнейших ответов.

Гость
#1
У меня стоит задача заставить работать USB девайс , спецификация протокола его работы у меня есть , а вот как с УСБ работать я не очень осведомлен.. Вот какой вопрос у меня:
Недавно начал изучать с++(30 минут назад) , и увидел что очень похож С и java, но ЖАБА не особо любит работать на более низком уровне в отличие от С, что было проделано на ЖАБЕ для того чтоб подружиться с УСБ: скачал виндовозную билиотеку , посмотрел javadoc, пробовал различные комбинации для того чтоб вышло у меня так:
Код:
 USBSocket socket = new USBSocket(Bus[k].getDevice);
socket.getInputStream();
socket.getOutputStream();
но все как обычно не вышло.. , обратился к java гуру на различных форумах(не буду рекламировать) , но даже вопрос висит на одном из янковских форумов, ответа нет вопще.. Говорю: дайте мне примеры какие нибудь.. - тишина, весь инет облазил - инфы = 0...
Вот решил , что к Си разработчикам этот вопрос ближе.
В чем требуется ваша помощь:
1)требуется ли доп.библиотека для УСБ на Си?
2)Если да ,то где взять?
3)Пример приведите пожалуйста работы с УСБ и собственно захвата потоков Input/Output конкретного устройства..
Заранее спасибо... :rolleyes:

http://codeby.net/forum/threads/26004.html
Вот на этом форуме давно запостил вопрос на JAVA форуме ответы= 0..
 

Kmet

Well-Known Member
Java Team
25.05.2006
1 036
8
#2
Говорю: дайте мне примеры какие нибудь.. - тишина, весь инет облазил - инфы = 0...
никто за тебя гуглить не будет
оделано на ЖАБЕ для того чтоб подружиться с УСБ: скачал виндовозную билиотеку , посмотрел javadoc, пробовал различные комбинации для того чтоб вышло у меня так:

USBSocket socket = new USBSocket(Bus[k].getDevice);
socket.getInputStream();
socket.getOutputStream();

но все как обычно не вышло..
что именно не получилось, может поможем
 

Гость
#3
Знаю , и ожидал такого ответа... вполне одекватного , потому что на форумах столько леньтяев, но :
В Сях я еще пока редиска, а проект будет иметь вид:
Ядро - JAVA приложение , 4- Си программулины(или демоны пока не решил) реализовавшие связь с девайсами по УСБ интерфесу( по протоколу работы каждого девайса) и объем работы по получению возможности управления I/O - я считаю минимальной частью, и поэтому я пришел сюда с просьбой примера, ну да ладно про яву могу кинуть код в котором я обращался к девайсу , формировал объект и пробовал взять I/O на себя в итоге все сходилось на вот такую ошибку :
Код:
java.io.IOException: NonJusb.claimInterface()  >>> NO JUSB DRIVER SUPPORT! Install jusb driver for that device to use this method.
at usb.windows.NonJUSB.claimInterface(NonJUSB.java:74)
at usb.core.Interface.claim(Interface.java:191)
at usb.util.USBSocket.init(USBSocket.java:94)
at usb.util.USBSocket.<init>(USBSocket.java:68)
at RunUSBControllerTest.printUSBStack(RunUSBControllerTest.java:125)
at RunUSBControllerTest.main(RunUSBControllerTest.java:61)
установил я ЮСБ дрова для явы все как по интсрукции не меньше 10 раз...
Есть ли у вас пример Сишный для работы с усб , включающий в себя поиск устроиств вывод параметров УСБ вот примерно так:
Код:
 [ 0 ] :  [ROOT]		 numOfPort:8 Address:0
[ 1 ] :  [USB DEVICE]	on Port 7 Address		  : 1
uniqueID		 : USB/Adr_1&Port_7&Vid_0bda&Pid_0111&Rev_1122&Ver_0200&DevClass_00&DevSubClass_00&NumC_01
driverKeyName	 : {36FC9E60-C465-11CF-8056-444553540000}\0005
friendlyDeviceName: ???????????? ?????????? ??? USB
Object Type	  : Device, DeviceImpl, NonJUSB
Device Descriptor:
bcdUSB				  : 2.0
Device Class			 : 0 ( device )
Device Subclass		 : 0
Device Protocol		 : 0
Max Packet Size		 : 64
idVendor				 : 3034	 0xbda
idProduct				: 273	 0x111
bcdDevice release number : 11.22
iManufacturer			: 1
iProduct				 : 2
iSerialNumber			: 3
NumConfiguration		 : 1
Ну и захват I/O нужного девайса ?
А если говорить про гугл , то 99,9% вопросов форума уже можно там найти, а остальные 0,1 - ошибки пользователей :)
 

Kmet

Well-Known Member
Java Team
25.05.2006
1 036
8
#4
а еще стоит указывать название,версию и тд библиотеки и от откуда скачивали. а так же читать что замечания ращработчикаов, особенно если видно что проект не развивается.

At the moment enumeration and monitoring of the USB is complete. Interrupt transfer and control transfer are partly implemented. Bulk transfer is still subject of future work.
и еще, в исходниках сила

Код:
/**
* Provides all functionality from the DeviceImpl class.
* A device in that class is not using the jUSB driver and is therefore
* not suited for the jUSB API
*
* @author Mike Stahl
* @version $id: NonJUSB.java, v1.0 Created on 30. Juli 2003, 10:37 
*/
public class NonJUSB extends DeviceImpl implements DeviceSPI {
Код:
/** Never available, because this device does not use the jUSB driver. */	
public void claimInterface(int ifnum) throws IOException {
throw new IOException("NonJusb.claimInterface()  >>> NO JUSB DRIVER SUPPORT! Install jusb driver for that device to use this method.");
}
 

Гость
#5
Для работы с USB в Java , требуется библиотека , в ней лежат классы для работы с USB, и инструкция для установки файлов JUSB.dll и еще ряд вещей , устанавливаешь и как сказанно работаешь отлично.. но неодного ответа по работе с этой библиотекой в java не на одном форуме.. :(
счас потихоньку изучаю СИ ..
Так есть примеры в Си для работы с УСБ ? :)

а еще стоит указывать название,версию и тд библиотеки и от откуда скачивали. а так же читать что замечания ращработчикаов, особенно если видно что проект не развивается.



и еще, в исходниках сила

Код:
/**
* Provides all functionality from the DeviceImpl class.
* A device in that class is not using the jUSB driver and is therefore
* not suited for the jUSB API
*
* @author Mike Stahl
* @version $id: NonJUSB.java, v1.0 Created on 30. Juli 2003, 10:37 
*/
public class NonJUSB extends DeviceImpl implements DeviceSPI {
Код:
/** Never available, because this device does not use the jUSB driver. */	
public void claimInterface(int ifnum) throws IOException {
throw new IOException("NonJusb.claimInterface()  >>> NO JUSB DRIVER SUPPORT! Install jusb driver for that device to use this method.");
}
Так указать ? Впринципе вы ответили на свой вопрос, и ответили на то что почему я не могу работать с девайсами по УСБ в жабе :) .
 
Статус
Закрыто для дальнейших ответов.