Hallo, da ich Maschinenbauingenieur bin und dementsprechend, bis auf Arduino Spielereien, keine großen Erfahrungen mit Mikrocontrollern habe, wollte ich hier im Forum nachfragen. Ich suche zur Zeit nach einer Moeglichkeit einen Schalter per USB mit einem PC zu verbinden, der bei Betaetigung einen Tastaturtastendruck (Buchstabe "e") simuliert. Ich habe etwas recherchiert und herausgefunden, dass die HID Schnittstelle genutzt werden sollte, da diese keine zusaetzlichen Treiber benoetigt. Weiterhin benoetige ich wohl einen Mikrocontroller, der einen Programmcode aufnimmt und bei einem Eingangssignal des Tasters einen Befehl per USB an den PC ausgibt. Hat jemand konkrete Beispiele, welchen Mikrocontroller ich verwenden koennte und wie ich eine Prototypenschaltung bauen kann, die diese Anforderungen uebernehmen kann? Ueber jeden Hinweis waere ich sehr dankbar. Mit freundlichen Grueßen Tim
Tim M. schrieb: > Arduino Spielereien Da hast du doch schon was passendes. Hol dir einen mit USB z.B Pro Mini oder Teensy. Dann brauchst du noch das HID Beispiel mit deinem Input verhäkeln.
ATMega8U2 Oder einen seiner größeren Brüder Im Datenblatt findet sich sicherlich die Grundbeschaltung
Hallo Tr, danke fuer deinen Beitrag. Nur wuerde ich gerne irgendwann den Schritt zwischen Prototypen mittels Arduino zur Platine machen, um fuer mich selber die Entwicklungsablaeufe zu verstehen.
Tr schrieb: > Hol dir einen mit USB z.B Pro Mini Der Pro Mini hat kein USB. Und nicht jeder USB Adapter kann HID
Hallo Tim, da du Arduino Erfahrung hast ist dies für dich eine kleine Aufgabe. Nimm einfach einen Arduino Leonardo und schreib das Programm. Der kann das alles. Gruß JensM
Es geht jeder Atmel mit USB interface: 90USBxxx, 32u4, 16u4 ... Es gibt eine freie Bibliothek die HID und auch fast alle anderen gängigen USB devices abbildet, sowohl aktiv wie auch passiv: LUFA http://www.fourwalledcubicle.com/LUFA.php Mit LUFA und zb. einem 32U4 ist das ganze ein Kinderspiel.
:
Bearbeitet durch User
Moin moin, wenns nur um die Taster geht, dann könnte das was sein: http://r.ebay.com/jqQLtQ Software dazu sowie weitere Teile dann hier: http://www.pcsensor.com/software-d6.html Die Soft kann auch Zeichenfolgen senden. Eigenentwicklung wie hier bereits beschrieben bringt natürlich eigene Erfahrungen und auch kann die Hard-/Software spezieller auf den Anwendungsfall angepasst werden! Mfg Jens
Rufus Τ. F. schrieb: > Eine weitere Möglichkeit wäre das hier: > > https://www.obdev.at/products/vusb/hidkeys.html Nee! Keine VUSB Geschichten, außer man will sich seinen USB Zweig total ausbremsen. Der Atmega ist nicht gedacht direkt an einem super schnellen Bus zu hängen. Das ist vergewaltigung. Vorallem wo die USB Megas doch nur noch ein paar euros kosten!! Man baut doch auch keinen 50 PS motor auf ein Fahrrad ...
Thomas W. schrieb: > Keine VUSB Geschichten, außer man will sich seinen USB Zweig total > ausbremsen. Der Atmega ist nicht gedacht direkt an einem super schnellen > Bus zu hängen. Das ist vergewaltigung. Das ist ... Humbug. HID-Geräte wie Tastaturen und Mäuse sind Low-Speed-Devices mit 1.5 MBit, d.h. die V-USB-Lösung ist komplett standardkonform. Da wird nichts ausgebremst, und da wird auch nichts "vergewaltigt".
Genau, der atmega zwingt alle Geräte am selben Hub hin auf Low Speed. Das ack kommt auch stark verzögert. Weil durch Software emuliert. Natürlich kann ich auch Software Uart oder Software Spi verwenden statt Hardwarer. Da ist es genau dasselbe. Funktioniert irgendwie mit Einschränkungen. Aber wozu, wenn es günstig Hardware gibt die das viel besser kann???
:
Bearbeitet durch User
BlaBla schrieb: > Nimm ein alte USB-Tastatur auseinander. und verbinde die 2 richtigen Kontakte und du kannst jede Taste schicken die du brauchst. zB http://www.doctormonk.com/2011/08/hack-usb-computer-keyboard-to-make.html
JensM schrieb: > Nimm einfach einen Arduino Leonardo und schreib das Programm. Wieso schreiben? Das ist doch bei der Arduino IDE schon als Beispiel schon fast fertig dabei.
BlaBla schrieb: > Nimm ein alte USB-Tastatur auseinander. Wieso auseinander? Wenn der TO möglichst einfach ein "E" senden will, dann kann er das mit der Tastatur doch am besten. Später kann er ja noch ein Vokal kaufen.
Arduino F. schrieb: > Tr schrieb: >> Hol dir einen mit USB z.B Pro Mini > > Der Pro Mini hat kein USB. > Und nicht jeder USB Adapter kann HID Der meinte den Pro Micro von Sparkfun: https://www.sparkfun.com/products/12640 Der ist für sowas genau richtig - einfach und schön klein. Per USB Bootloader super einfach zu programmieren und der Code für ein Tastenanschlag ist simples Copy&Paste... Gibts wenn man warten kann billig aus China z.B, hier: http://www.ebay.de/itm/Leonardo-Pro-Micro-ATmega32U4-Arduino-5V-16MHz-Bootloader-Micro-USB-Pro-mini-/381813793804 Oder wenn man Apothekenpreise zahlen will auch bei Watterott (teurer hab ich ihn in DE nicht gefunden): http://www.watterott.com/de/Pro-Micro-5V/16MHz
Mit den Cypress PSoCs lassen sich Full-Speed Geräte auch recht schnell und einfach realisieren. Guck mal hier: http://www.cypress.com/file/139611/download "Project 1: Keyboard with LEDs" (Kapitel 8, S.14ff)
Thomas W. schrieb: > Genau, der atmega zwingt alle Geräte am selben Hub hin auf Low Speed. So ein Unsinn. Selbst wenn man das gezielt erreichen wollte: das geht einfach nicht, das gibt der USB-Standard einfach nicht her... Kurzfassung: du hast sowas von keine Ahnung, das tut schon echt weh...
> da ich Maschinenbauingenieur bin und dementsprechend, bis auf Arduino > Spielereien, keine großen Erfahrungen mit Mikrocontrollern habe da würde ich das vielleicht auf den zweiten Prototypen verlegen mit dem nackten Chip ein eigenes Gerät zu bauen...
Thomas W. schrieb: > Genau, der atmega zwingt alle Geräte am selben Hub hin auf Low Speed. Das ist Unfug.
Tim M. schrieb: > da ich Maschinenbauingenieur bin und dementsprechend, bis auf Arduino > Spielereien, keine großen Erfahrungen mit Mikrocontrollern habe, wollte > ich hier im Forum nachfragen. Brauchst Du eine Lösung oder willst Du Wissen aufbauen? > Ich suche zur Zeit nach einer Moeglichkeit einen Schalter per USB mit > einem PC zu verbinden, der bei Betaetigung einen Tastaturtastendruck > (Buchstabe "e") simuliert. Lösungsorientiert würde ich eine PC-Tastatur zerlegen. Die mir bekannten Siemens-Tastaturen habe eine kleine Platine, weniger als halbe Postkarte groß, wo die Tastenmatrix dran hängt. An der Matrix ausmessen, welche Pins das "E" verbindet, Taster an die Platine und fertig. Ist unsportlich, kostet eine Tastatur - aber bereitet am wenigsten Zeitaufwand. Pro Micro schrieb: > Der meinte den Pro Micro von Sparkfun: > https://www.sparkfun.com/products/12640 > Der ist für sowas genau richtig - einfach und schön klein. Per USB > Bootloader super einfach zu programmieren und der Code für ein > Tastenanschlag ist simples Copy&Paste... "für ein Tastenanschlag" - Deutsche Grammatik schwer? Ein en Anschlag! Ich glaube, den Arduino-Sketch lädt man genau einmal und nie wieder hoch - wenn der USB des 32u4 als HID-Device umprogrammiert wurde, kann er nicht mehr zu weiteren Uploads benutzt werden?
Die mit Abstand billigste Lösung mit einem Mikrocontroller mit Hardware-USB-Device ist der PIC16F1454/1455. Der '55 hat noch analoge Eingänge und einige andere Funktionen, die hier aber unwesentlich sind. Weiteres Plus für den Bastler: das Ding gibts als DIP für Lochraster. Schau her: Hier findest Du Schaltplan und Software und Erklärungen. Teil 1: http://www.codeproject.com/Articles/830856/Microchip-PIC-F-USB-Stack Teil 2: http://www.codeproject.com/Articles/832135/Microchip-PIC-F-USB-Stack-Part Hier gibts den Chip: https://www.reichelt.de/PIC-16C-16F17-Controller/PIC-16F1455-I-P/3/index.html?ACTION=3&GROUPID=7201&ARTICLE=144953&SEARCH=16f1455&OFFSET=16&; fchk PS: Zur Schaltung in Teil 1: Du solltest noch einmal 100nF zwischen VCC und GND direkt am PIC packen. Der läuft dann stabiler.
:
Bearbeitet durch User
Wenn Du die ganzen Tipps umgesetzt hast und Dein Custom HID Gerät nun läuft, brauchst Du auch noch was für die PC Seite. Schau mal hier: http://ahidlib.com/pages/index.php?lang=de
Thomas W. schrieb: > Natürlich kann ich auch Software Uart oder Software Spi verwenden statt > Hardwarer. Da ist es genau dasselbe. Funktioniert irgendwie mit > Einschränkungen. Wenn man das richtig macht, ist die einzige Einschränkung, dass man Rechenleistung vom UC braucht. Und genau das ist die einzige "Einschränkung" beim VUSB.
:
Bearbeitet durch Moderator
Ja, der Arduino Micro ist wirklich perfekt geeignet! Funktioniert auf Anhieb! Selbst Nicht-C-Programmierer bringen in 5min. ein Programm fertig, das einen Buchstaben ausgibt! Etwas knifflig ist das Flashen wenn schon als HID geflasht: Der Reset muss muss nach dem kompilieren schnell gedrückt werden, dass der Micro in den Bootloader-Modus geht. Gruss Chregu
Tim M. schrieb: > Nur wuerde ich gerne irgendwann den Schritt > zwischen Prototypen mittels Arduino zur Platine machen, um fuer mich > selber die Entwicklungsablaeufe zu verstehen. dann sieh dir doch den Schaltplan des Arduino an und binde ihn in deinen Schaltplan ein
Manfred schrieb: > Ich glaube, den Arduino-Sketch lädt man genau einmal und nie wieder hoch Nein, den kann man genau so oft programmieren, wie der Flash das aushält. Es gibt nämlich bei dem Einschalten ein Zeitfenster in dem der Bootloader zu der Verfügung steht.
Tim M. schrieb: > Ich suche zur Zeit nach einer Moeglichkeit einen Schalter per USB mit > einem PC zu verbinden, der bei Betaetigung einen Tastaturtastendruck > (Buchstabe "e") simuliert. Warum das? Eine billige USB Tastatur, alles abklemmen und die Zeilen Spalten Matrix der Taste 'e' mit einem Taster überbrücken. wozu der Arduino? Tim M. schrieb: > da ich Maschinenbauingenieur bin kannst du dir auch sicher ein kleine Gehäuse aus dem Block (Material nach Belieben) fräsen dafür. Tim M. schrieb: > Weiterhin benoetige ich wohl einen Mikrocontroller der das übernehmen kann, da musst du dich nicht mit USB Treiber und Co rumplagen.
:
Bearbeitet durch User
Wenn jemand etwas bauen will, ok. Aber wenn jemand sich nicht mit Elektronik auskennt und nur ein bestimmtes Ziel erreichen möchte, dann sagt man ihm den einfachsten Weg dahin. Oben hat es schon jemand vorgeschlagen und ich habe es dann noch mal genauer gesagt. So eine BT Tastatur gibt es auch in sehr klein, kosten ab ca. 30 Euro und es bedarf keiner weiteren Kenntnisse um ein "E" zu senden.
So etwas gibts für wenig Geld schon fertig: https://learn.adafruit.com/trinket-usb-keyboard/overview Die fertige Platine gibts für 6,75? hier: http://www.exp-tech.de/catalogsearch/result/?q=EXP-R15-242 Martin
Geht auch sehr viel einfacher. Hab den mal nachgebaut und siehe da, funktioniert einwandfrei. http://blog.flipwork.nl/?x=entry:entry081009-142605
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.