Hallo,
wie kann ich meinen Mega2560 als Tastatur agieren lassen,
d.h. ich löte ein USB A Kabel an bestimmte Pins meines Arduinos an und sende/simuliere bestimmte Tastendrücke?
Mfg. Nathan
Hallo,
wie kann ich meinen Mega2560 als Tastatur agieren lassen,
d.h. ich löte ein USB A Kabel an bestimmte Pins meines Arduinos an und sende/simuliere bestimmte Tastendrücke?
Mfg. Nathan
Nur das Arduino Leonardo, Micro und Due haben einen Native-Port, d.h. einen weiteren controller und einen USB Anschluss, mit dem sie als Maus bzw. Tastatur erkannt werden können. Siehe: http://arduino.cc/en/Reference/MouseKeyboard
Mit dem Mega gibt es bestimmt auch eine Möglichkeit, ein PS2 Gerät zu emulieren. Die PS2dev sollte das können. Leider gibt's da nicht viele Infromationen drüber.
Nathax:
wie kann ich meinen Mega2560 als Tastatur agieren lassen,
d.h. ich löte ein USB A Kabel an bestimmte Pins meines Arduinos an und sende/simuliere bestimmte Tastendrücke?
Nein, so einfach nicht. Du benötigst schon einiges an zusätzlicher Beschaltung für ein "normales" Arduino Board. "Damals" gab es immer die USB-Host-Shields und wie ich gerade sehe, ist diese inzwischen obsolete Hardware immer noch lieferbar:
http://www.watterott.com/de/SparkFun-USB-Host-Shield (aktueller Lagerbestand: 1)
Obsolet sind die USB-Host-Shields dadurch geworden, dass es inzwischen Arduino-Boards gibt, die die USB-Host Funktionalität bereits im eigenen Prozessor mitbringen, und dabei ist das ganze Board mit USB-Host-Funktionalität sogar teilweise noch insbesamt billiger als früher das USB-Host-Shield für sich alleine, z.B. das Arduino-Leonardo Board.
Mit dem "Arduino ADK" existiert auch ein MEGA2560 kompatibles Board, das von Haus aus eine USB-Host-Funktionalität mitbringt, ohne dass dafür ein extra Shield benötigt wird. Wobei ich mir allerdings nicht sicher bin, ob die Host-Shield-Library vollständig kompatibel zum ADK ist, da würde ich mich nochmal informieren, ob das tatsächlich der Fall ist.
Edit: Wie ich gerade sehe, ist es immer möglich, zwar nicht eine USB-Tastatur, aber wenigstens eine PS2-Tastatur zu emulieren:
http://playground.arduino.cc/Main/PS2KeyboardExt2
Ok. Vielen Dank soweit. Die von dir verlinkte PS2 Library dient aber doch nur dazu, eine PS2 Tastatur auszulesen, oder?
jurs, bist du sicher dass man einen Host Port braucht? So wie ich die Sache verstanden habe benötigt man einen USB-Host, wenn man Geräte, die man normalerweise an einen Computer anschließt (d. h. Mäuse, Tastaturen, USB-Sticks, Webcams, USB-Midi-Controller, BT-Dongles, etc.) mit dem Arduino verbinden möchte. Ein Native-Port hingegen funktioniert genau andersherum, d. h. das Arduino verhält sich wie ein USB-Gerät (Maus, Tastatur, Stick, etc.) wenn man es an den PC anschließt.
Die Native-Ports auf den Arduinos können zwar auch als Host fungieren, dass aber ein Host-Shield sich wie ein Native Port verhalten kann glaube ich nicht.
http://arduino.cc/de/Main/ArduinoBoardDue:
Der native USB Port ist mit dem SAM3X verbunden. [...] Es ermöglicht dem Due außerdem eine USB Maus oder Tastatur am verbundenen Computer zu emulieren. Um diese Funktionen zu nutzen besuchen Sie die Mouse und Keyboard Library Referenz Seiten.Der native USB Port kann sich außerdem als USB Host für verbundene Geräten wie z.B. Mäusen, Tastaturen und Smartphone verhalten. Um diese Funktion zu nutzen beachten Sie die USBHost Referenz Seiten.
jurs:
Obsolet sind die USB-Host-Shields dadurch geworden, dass es inzwischen Arduino-Boards gibt, die die USB-Host Funktionalität bereits im eigenen Prozessor mitbringen, und dabei ist das ganze Board mit USB-Host-Funktionalität sogar teilweise noch insbesamt billiger als früher das USB-Host-Shield für sich alleine, z.B. das Arduino-Leonardo Board.
Sehe ich anders. Der Leonardo bringt nach meinem Kenntnisstand keine Host-Funktionalität mit. Soweit ich weiß, können das nur der angesprochene Mega ADK und der Due. Alles was auf dem Atmega 328 basiert (Duemilanove, Uno usw.) und die Varianten mit Atmega32U4 (Leonardo, Micro) benötigen entsprechende Shields.
Das hat aber recht wenig mit der Aufgabenstellung des Threadstarters zu tun, Host-Funktionalität brauchen wir hier ja nicht.
Hier wären die Leonardo und Micro-Modelle gefragt, ebenso entsprechende Teensyduinos.
Hmm... wie es aussieht lässt sich also nicht so einfach eine Tastatur emulieren. Danke trotzdem.