PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie schließe ich eine USB-Tastatur an einen ATMega an ?



Holzwurm56
08.03.2013, 07:23
Hallo ,
kann ich eine USB Tastatur an einen ATMega anschließen ? Ich habe gesucht gegoogelt aber nichts gefunden . Mir ist klar das eine PS2 Tastatur verhältnismäßig einfach angeschlossen werden kann ,
aber ich bräuchte nur einen Zehnertastenblock und da gibt es günstig welche mit USB-Anschluß die wasserdicht sind .

MfG

Hans

Besserwessi
08.03.2013, 07:44
Eine USB Tastatur anzuschließen ist recht kompliziert, denn dafür bräuchte man einen USB Host controller. Dafür gibt es FTDI einen Chip (Vinculum), der allerdings relativ teuer ist und auch noch verbaut werden will.

RoboHolIC
08.03.2013, 14:22
Mit einem "USB zu PS/2"-Konverter (millionenfaches Mauszubehör) solltest du das beste aus beiden Welten verknüpfen können.

peterfido
09.03.2013, 08:42
Die bei den Geräten mitgelieferten Adapter sind im wahrsten Sinne des Wortes doof. Das ist ein einfacher Adapter. Die eigentliche Elektronik sitzt dann in der Maus selbst. Diese erkennt, ob sie an USB oder PS/2 hängt und nutzt dann dieses Protokoll.

Es bringt normal auch nichts, die 10er Tastatur zu zerlegen, in der Hoffnung, dass man das nötige Signal einfach zwischen Tastaturcontroller und USB-Chip abgreifen kann. Normal ist das nur noch ein IC. Es gibt aber 10er Tastenblocks, welche man mit 8 Drähten recht einfach an einen Mikrocontroller anschließen kann. Bascom bringt dafür auch schon Befehle (getkbd) mit.

Wenn die 10er USB-Tastatur es zulässt, kann man sich auch recht einfach eine Tastatur mit eigenem Protokoll selbst bauen. Die Matrix der Tastatur auf einen eigenen Atmel und dann nur ein 4-Adriges Kabel zu dem anderen Atmel. Z.B. per Steckverbindung.

Ich selbst nutze für sowas einfach eine Fernbedienung. Diese besitzt normal mindestens eine 10er Tastatur und noch einige Taste mehr. Die x10 von Pollin habe ich schon mehrfach eingesetzt. Bei dieser kommt man übrigens an das Signal zwischen Empfänger und USB-IC. Als "Auswerteeinheit" kommt ein eigener atTiny 2313 zum Einsatz, welcher die Empfangene Taste per UART ausgibt. Den Code dafür hat ein "Holli" geschrieben.

oberallgeier
09.03.2013, 09:07
Hallo Hans,

nicht direkt ne Antwort auf Deine USB-Frage, aber ein Kommentar zum Ziffernblock.
... ich bräuchte nur einen Zehnertastenblock ...So ne "Kommandotastatur" für meine Controller hatte ich lange gesucht und nichts gefunden das mich richtig zufrieden gestellt hätte. Bis ich auf die Idee kam, ne TV-Fernsteuerung zu nehmen. Zum Glück lag im Altbestand ne RC-5-Tastatur, die habe ich mittlerweile als äusserst praktisches Gerät schätzen gelernt (hier ein Beispiel - klicken) (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=503279&viewfull=1#post503279) um z.B. verschiedene Tasks bei meinen Projekten zu starten oder zu stoppen. Hier (klick) (https://www.roboternetz.de/community/threads/60035-Mein-Dekoder-für-RC-5-in-C-im-Interruptbetrieb) ein bisschen mehr dazu. Und es geht dabei nicht nur um Tasksteuerung - auch ein Keycode (z.B. bei m/einem autonomen Autochen) ist gut möglich.