mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik USB PC interface selber bauen


Autor: Chris S. (hondaracer1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Im grunde will ich einen carpc bauen, aber zunaechst erstmal die 
Steuerung dafuer. Ich habe mich bereits hier im forum umgeschaut und 
auch die nette suchfunktion genutzt, allerdings nicht so ganz das 
gefunden was ich eigentlich suche.
Sachen wie "tastatur zerlegen, tastenmatix analysieren und passend 
anschliesen" oder "keywarrior" klingen schoen und gut aber haben nicht 
so ganz den lerneffekt den ich mir von dem projekt erhoffe.
gibt es eine relativ guenstige und realisierbare moeglichkeit einen uC 
per usb mit dem PC zu verbinden um programme wie winamp und aehnliches 
zu steuern?   gewisse Programmierkenntnisse mal vorrausgesetzt.
Habe erfahrung mit Assember, C, C++ und C#.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, das einfachste wäre wohl ein USB-RS232 Adapter. Oder wenn du alles 
selbst machen willst, eine Software USB Implementierung, die ein HID 
oder ein CDC Gerät implementiert. Damit kannst du dann zum Beispiel per 
EventGhost den PC steuern.

Autor: Marco W. (watz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier auch noch der passende Link dazu:

http://www.obdev.at/products/vusb/index-de.html

Ich hab mit dieser Softwareimplementierung echt gute Erfahrungen 
gemacht. Vielleicht kannst Du z.B. das "HIDKeys" Referenzprojekt für 
dich abwandeln, dann brauchst Du auch keinen speziellen Treiber.

Wichtig ist, daß die Pegel auf den USB Datenleitungen auf ~3.6V begrenzt 
werden (z.B. per 3,6V Z-Dioden), falls der uC z.B. direkt mit den 5V des 
USB betrieben wird. Sonst funktionierts nur mit manchen Boards/Host 
Controllern.

Gruß,
Watz

Autor: Potter68 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Chris S.,

mit einem HID-Gerät kannst Du eine Maus und/oder eine Tastatur 
simulieren, was zum Ansteuern von PC-Programmen ausreicht.

Gruß Potter

Autor: Chris S. (hondaracer1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke, das hat mir schonmal einen schritt weitergeholfen und mich 
hoffentlich auf die richtige spur gebracht ;-)

auf der elektor homepage ist mir folgendes ueber den weg gelaufen, 
leider finde ich keinerlei weitere angaben zu dem modul. Also ich will 
das ding nicht verwenden, mich wuerde allerdings die hardware und 
vorallem der sourcecode der software interessieren.
http://www.elektor.com/products/kits-modules/kits-...


Alles was ich jetzt schreibe sind meine heutigen erkenntnisse, somit 
keine garantie das alles stimmt was ich poste :-P

Beispiel eines Keypads (17keys) mit dem von Marco W. erwaehnten Treiber:
http://www.obdev.at/products/vusb/hidkeys.html

HID Usage Tables:
http://www.usb.org/developers/devclass_docs/Hut1_12.pdf

Alle informationen ueber das Eingabegeraet werden in einem 
usbHidReportDescriptor festgehalten. Dieser kann entweder aus den HID 
Usage Tables selber erstellt werden oder mit einem tool generiert 
werden. Dieser usbHidReportDescriptor enthaelt informationen ueber 
welche art eingabegeraet es sich handelt (maus, joystick, tastatur.....) 
und angaben zu dem jeweiligen geraet.

Im oben erwaehnten Beispiel Projekt werden die 17keys per 
pollingverfahren mit 46hz abgefragt. Jeder der schonmal mit externen 
interrupts gearbeitet hat weiss warum hier polling die deutlich bessere 
Loesung ist. aber wenn sich jemand mit prellenden Schaltern rumaergern 
will, nur zu ;-)
der aktuelle Status der 17keys wird dann mit der vorheringen Abfrage 
verglichen und wenn sich etwas veraendert hat per KeyReport 
uebermittelt. Die laenge des KeyReports haengt dabei auch von dem 
usbHidReportDescriptor ab.


da muss man ja ganzschoen was beachten wenn man sich so ein geraetchen 
bastelt. ich schau jetzt mal nach dem usbHidReportDescriptor 
erstellungstool. bitte korrigiert mich wenn ich hier muell geschrieben 
hab :-)

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.