www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mit selbstgemachter USB-HID Tastatur programme steuern?


Autor: Paul H. (powl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

man hat ja die Möglichkeit per AVR und USB ganz einfach eine HID 
Tastatur oder Maus zu bauen.

Nun wollte ich mal fragen was eine Tastatur ans Betriebsystem alles 
senden darf und worauf das Betriebsystem reagieren kann. Wäre es 
möglich, dass ein HID-Gerät einfach beliebige vorher vorgegebene Codes 
ans Betriebsystem schickt und irgendein Programm diese auffängt und 
darauf reagiert? Beispielsweise nur um ein paar Buttons oder 
Schieberegegler auf einfachem Wege ohne Treiberinstallation oder CDC und 
pipapo mit einem Programm zu verknüpfen.

Oder gibt es da nur eine Reihe von Standardcodes die u.A. das normale 
Tastaturlayout und eine Reihe von Multimedia-Tasten umfängt, welche zur 
Kommunikation freigegeben sind?

mfg PoWl

Autor: Esquilax (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich hab mal mein SonyEricsson-Handy per Bluetooth als 
HID-"Fernbedienung" am Laptop eingebunden. Von SE gibt es ein Tool, mit 
dem man Profile erstellen kann, in denen die Zuordnung Handy-Taste -> 
HID-Tastenkombination hinterlegt ist.
Mit einem in AutoIT-Skript (www.autoitscript.com) geschriebenen Programm 
habe ich dann die Tastenkombinationen abgefangen. Das hat eigentlich 
ganz zuverlässig funktioniert. Man sollte halt möglichst seltene 
Tastenkombinationen verwenden (STRG + ALT + Zahl oder so).

Mit dem Programm haben wir unsere Berufsschullehrer geärgert. Beim 
drücken einer Taste auf dem Handy wurde ein Soundfile am Laptop 
abgespielt... ;-)

Autor: Markus E. (engelmarkus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das würde mich auch mal interessieren. Die englische Wikipedia sagt 
folgendes:

The HID protocol makes implementation of devices very simple. Devices 
define their data packets and then present a "HID descriptor" to the 
host. The HID descriptor is a hard coded array of bytes that describe 
the device's data packets. This includes: how many packets the device 
supports, how large are the packets, and the purpose of each byte and 
bit in the packet. For example, a keyboard with a calculator program 
button can tell the host that the button's pressed/released state is 
stored as the 2nd bit in the 6th byte in data packet number 4.
...
The host needs to retrieve the HID descriptor from the device and parse 
it before it can fully communicate with the device.


Die Frage ist halt, heißt das, dass man keinen eigenen Treiber schreiben 
muss?
Außerdem hier noch zwei Spezifikationen:
http://www.usb.org/developers/devclass_docs/HID1_11.pdf
http://www.usb.org/developers/devclass_docs/Hut1_12.pdf

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.