USB: Readfile

OP #1774569
Lesenswert?
• ▲
▼
Hi,

ich möchte gern 6Bytes per USB HID vom Device auslesen per ReadFile(); 
leider hängt sich der Computer dabei auf....
1
BYTE  buffer[6];
2
ok = ReadFile(DevHandle, buffer, sizeof(buffer), cnt, NULL);
1
HidP_GetCaps(PreparsedData, &Capabilities);
Hier wird mir angegeben, dass InputReportByteLength = 6 ist.


Beim Device hab ich ein ByteArray installiert
1
BYTE InReport[6]; 
2

3
USB_WriteEP(0x81, &InReport[0], sizeof(InReport));

Mit zwei Bytes hab ich es hinbekommen, aber mit sechs Bytes scheitert 
es. Wenn ich ReadFile() mit 5Bytes oder weniger aufrufe, wird Null 
zurückgegeben.

Gruß
Bernd
OP #1774620
Lesenswert?
• ▲
▼
ist mein Report Deskriptor für den Inputbereich so richtig?
1
UsagePage (0x00)
2
Usage (0x01)
3
Collection(application)
4
LogicalMin (0x00)
5
LogicalMax (0xFF)
6
ReportSize (24)
7
ReportCount (1)
8
Usage (1)
9
Input(Data, Variable, Absolute)

Wenn ich ReportSize(8) verwende, dann funktioniert es reibungslos mit 
einem Byte.
Gast #1782524
Lesenswert?
• ▲
▼
Eine funktionierende und kostenlose Software um HID-Geräte unter Windows 
anzusprechen findest Du bei www.rahand.eu. Da ist auch eine 
Beispielapplikation (für Visual Studio C++ Express) dabei, die Dir die 
ankommenden Daten visualisiert. Alles was Du einstellen musst sind die 
VID/PID (ggf. noch das Interface) und die IN/OUT-Buffer-Größen. Schau 
Dir das Beispiel an - ist selbsterklärend. Programmiert mit der Win32 
API.

Damit kannst Du zumindest mal testen, ob Dein Treiber oder Dein 
USB-Gerät fehlerhaft sind.

Gruß

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.