Oceano2012
Anmeldungsdatum: 31.05.2010 Beiträge: 4
|
Verfasst am: 10.06.2010, 00:31 Titel: Lesen und Schreiben in der HID-Gerät. |
|
|
Mein Code funktioniert nicht.
Wie zu lesen und zu schreiben, um eine HID-Gerät?
Ich versuche, mit PIC 18F4550, HID-Modus in WinXP kommunizieren.
Vielen Dank!
Code: |
#Include Once "Windows.bi"
Dim As HANDLE hEvent, RH, WH
Dim As String HID_DEVICE, VALUE, GUID
Dim As OVERLAPPED HIDOverlapped
Dim As Ubyte Get2HID(0 To 63)
Dim As Ubyte Put2HID(0 To 63)
Dim As Integer iBytesRead, TestR, TestW
GUID="{4d1e55b2-f16f-11cf-88cb-001111000030}"
VALUE="hid#vid_1781&pid_07d0#6&1c842270&5&0000" ' My HID Device.
HID_DEVICE="\\?\" & VALUE & "#" & GUID
WH=CreateFile( Strptr( HID_DEVICE ) ,_
GENERIC_WRITE,_
FILE_SHARE_READ Or FILE_SHARE_WRITE,_
Null,_
OPEN_EXISTING,_
0,_
NULL )
RH=CreateFile( Strptr( HID_DEVICE ) ,_
GENERIC_READ,_
FILE_SHARE_READ Or FILE_SHARE_WRITE,_
NULL,_
OPEN_EXISTING,_
FILE_FLAG_OVERLAPPED,_
NULL )
If ( WH = INVALID_HANDLE_VALUE ) Or ( RH = INVALID_HANDLE_VALUE ) Then
Print "ERROR!"
Sleep
End
Else
Locate 3,1: Print "Device = "; Hex(RH), Hex(WH)
Endif
Put2HID(0) = 169 'Load this value to send.
TestW=WriteFile (WH, @Put2HID(0), 8, @iBytesRead, 0)
TestR=ReadFile (RH, @Get2HID(0), 8, @iBytesRead, @HIDOverlapped)
Locate 5, 1: Print TestW, TestR
Locate 4, 1: Print "Result :"; Get2HID(0); " "
CloseHandle(RH)
CloseHandle(WH)
Sleep
End
|
|
|