Einzelnen Beitrag anzeigen

SirTwist

Registriert seit: 28. Sep 2006
196 Beiträge
 
Delphi XE Professional
 
#33

Re: usb raketenwerfer software suckt...

  Alt 2. Apr 2007, 20:56
Also in dem Python-Source werden drei Nachrichten an das Device geschrieben. Die ersten beiden Nachrichten sind jeweils 8 Bytes lang und immer gleich, die dritte Nachricht 64 Bytes und enthält die eigentlichen Steuerbefehle.

Nachricht 1: 85, 83, 66, 67, 0, 0, 4, 0
Nachricht 2: 85, 83, 66, 67, 0, 64, 2, 0
Nachricht 3:
Byte #1 ist immer 0
Byte #2 = 1 heißt Bewegung nach links, sonst 0
Byte #3 = 1 heißt Bewegung nach rechts
Byte #4 = 1 heißt Bewegung nach oben
Byte #5 = 1 heißt Bewegung nach unten
Byte #6 = 1 heißt Feuern
Byte #7 = 8
Byte #8 = 8
Byte #9..64 = 0

Die Bewegungsbytes #2 bis #5 kann man kombinieren, zumindestens in sinnvollen Kombinationen.

Das eigentliche Senden macht diese Funktion hier:
Code:
self.dev.handle.controlMsg(0x21, 0x09, <nachricht>, 0x02, 0x01)
wobei ich nicht herausgefunden habe, wofür die anderen Parameter sind:
Code:
requestType: specifies the direction of data flow, the type of request, and the recipient.
request: specifies the request.
buffer: ...
value: specific information to pass to the device. (default: 0)
index: specific information to pass to the device. (default: 0)
timeout: operation timeout in miliseconds. (default: 100)
Den Rest müsste jetzt jemand zusammenbasteln, der weiß, wie man USB von Delphi aus programmiert.

Zwei Pearl-Raketenwerfer hab ich hier auch stehen
  Mit Zitat antworten Zitat