0

Java および USB4Java ライブラリを使用して、HID 構成で LPC1347 からデータバイトを送信および読み取る方法は?

次のプロパティでデバイスを識別できます。

private static short VENDORID = 0x1fc9;// 8137
private static short PRODUCTID = 0x2000;// 8192

LPC1347 のエンドポイントは次のとおりです。

private static short HID_ENDPOINT_OUT = 0x01;
private static short HID_ENDPOINT_IN = 0x81;

私のコードでは、次を使用しました。

UsbEndpoint endpoint = iface.getUsbEndpoint((byte) 0x55);
UsbPipe pipe = endpoint.getUsbPipe();
pipe.open();
try {
// read
byte[] data = new byte[8];
int received = pipe.syncSubmit(data);
System.out.println(received + " bytes received");
} finally {
pipe.close();
}   

そして、次のエラーが表示されます。

USB エラー 1: 割り込みエンドポイントでの転送エラー: 入力/出力エラー

また、LPC1347 では次のように設定されています。 extern uint8_t InReport[23]; extern uint8_t OutReport[23];

最初のバイトでは、レポート (INPUT_REPORT) 0x55 を読み取り、(OUTPUT REPORT) 0xAA を書き込みます。

4

1 に答える 1

0

データを送信する前にインターフェイスを要求したことがわかりません。これを試して:

iface.claim(new UsbInterfacePolicy()
    {            
        @Override
        public boolean forceClaim(UsbInterface usbInterface)
        {
            return true;
        }
    });

次に、コードを挿入できます。最後に、インターフェイスを解放する必要があります (finally 句で行います)。

iface.release();
于 2016-07-18T20:19:31.450 に答える