Sto provando a scrivere codice Java per consentire al mio XOOM di comunicare con il nostro dispositivo incorporato via USB a cavo seriale.spiegazione su controltransfer in android per impostare la comunicazione USB
Ho usato questo chunck di codice:
connection.controlTransfer(0x21, 34, 0, 0, null, 0, 0);
connection.controlTransfer(0x21, 32, 0, 0, new byte[] { (byte) 0x80,
0x25, 0x00, 0x00, 0x00, 0x00, 0x08 }, 7, 0);
So che questo è quello di inviare la richiesta di installazione sul dispositivo USB. Non capisco perché requestType è 0x21, perché requestID è 32, 34, ecc.
Secondo le specifiche qui: http://www.beyondlogic.org/usbnutshell/usb6.shtml#SetupPacket, nella richiesta di dispositivo standard, richiesta di interfaccia standard e richiesta endpoint standard, nessuno del requestType è 0x21 e nessuno del requestID è 32 o 34. C'è qualche spiegazione per questi parametri incluso il datebuffer trasmesso ??
Grazie Gesù. Ora funziona. Ti voterò dopo aver ottenuto altri quattro punti nella mia reputazione. – dan
Ciao. Sto usando xamarin per sviluppare un'applicazione che utilizza questo tipo di chip. In xamarin, il metodo ControlTransfer() fornisce un enum come primo parametro. Ogni volta che chiamo questa funzione con questi valori restituisce -1. ControlTransfer (UsbAddressing.Out, 0x0000, 0x0001, 0, null, 0, 5000); Potresti aiutarmi a risolvere anche questo problema? –
@ a.toraby - sentiti libero di fare una domanda. Se vuoi, mandami un ping nei commenti per assicurarmi di vederlo – JesusFreke