このデバイスにはUSBポートが組み込まれていないため、AVRチップ(Attiny 2313)からコンピューターにUSBポートを介してデータを送信する簡単なプログラム(次のチュートリアルに基づく)を作成しました。 V-USBライブラリを使用して、ソフトウェアを介してそのようなポートをエミュレートしました。
デバイスは期待どおりに動作し、 libusbライブラリを使用してCとインターフェイスするのに問題はありませんでしたが、Javaでアクセスしたいので、libusbのJava実装を探しました。私が管理した唯一のライブラリセットアップするために、バス上のusbが「libusb-win32ラッパー」であることが正常に検出されました。
唯一の問題は、デバイスを開こうとすると例外がスローされることです。
ch.ntb.usb.USBException: No USB endpoints found. Check the device configuration
at ch.ntb.usb.Device.updateMaxPacketSize(Device.java:82)
at ch.ntb.usb.Device.initDevice(Device.java:114)
どうすれば修正できますか?それを行う別の方法はありますか?何かお勧めはありますか?
これが例外をスローするコードです
Device dev = USB.getDevice((short) 0x16c0, (short) 0x05dc);
dev.open(1, 0, -1);
これが私がUSBviewを使ってデバイスについて得たデータです
Device Descriptor:
bcdUSB: 0x0110
bDeviceClass: 0xFF
bDeviceSubClass: 0x00
bDeviceProtocol: 0x00
bMaxPacketSize0: 0x08 (8)
idVendor: 0x16C0
idProduct: 0x05DC
bcdDevice: 0x0100
iManufacturer: 0x01
0x0409: "mymail@gmail.com"
iProduct: 0x02
iSerialNumber: 0x00
bNumConfigurations: 0x01
ConnectionStatus: DeviceConnected
Current Config Value: 0x01
Device Bus Speed: Low
Device Address: 0x03
Open Pipes: 0
Configuration Descriptor:
wTotalLength: 0x0012
bNumInterfaces: 0x01
bConfigurationValue: 0x01
iConfiguration: 0x00
bmAttributes: 0x80 (Bus Powered )
MaxPower: 0x32 (100 Ma)
Interface Descriptor:
bInterfaceNumber: 0x00
bAlternateSetting: 0x00
bNumEndpoints: 0x00
bInterfaceClass: 0x00
bInterfaceSubClass: 0x00
bInterfaceProtocol: 0x00
iInterface: 0x00
関連する質問の答えですが、何を変更すればよいのか理解できませんでした。デバイスに関連している場合、VUSBでどのように行うことができますか?