Forum: Mikrocontroller und Digitale Elektronik USB Tastatur an AVR


von Florian S. (der_picknicker)


Lesenswert?

Ich würde gern eine USB-Tstatur an einen AVR anschließen (mega8 
bevorzugt). Ich habe jetzt mehrere Stunden Google und die Forensuche 
bemüht, aber nichts verwertbares gefunden. Es geht immer nur um 
Emulation.

Das es möglich ist, kann man hier sehen:
http://www.asahi-net.or.jp/~qx5k-iskw/robot/usbhost.html
Leider kann ich mit japanisch nix anfangen. Und die Googleübersetzung 
ist auch nicht zu gebrauchen.

Da meine Tastatur auch PS/2 unterstützt, habe ich die BASCOM Funktion 
getatkbd() ausprobiert. Das ganze mit dem Beispiel unter 
http://avrhelp.mcselec.com/index.html?getatkbd.htm
und einem USB>PS/2 Adapter.
Leider funktioniert das nicht. Normalerweise sollte der 
Tastatur-Controller erkennen, dass PS/2 verwendet wird, aber das klappt 
wohl nicht.

Hat also jemand Erfahrung/Ideen?

Grüße,
Florian

von Reinhard S. (rezz)


Lesenswert?

Einmal reicht doch, oder?

von Florian S. (der_picknicker)


Lesenswert?

Sorry...beim Eintargen wurde immer ein 503 Fehler angezeigt, deswegen 
hab ich nicht mitbekommen, dass der Artikel eingetragen ist. Kann man 
den Artikel irgendwie löschen???

von wt (Gast)


Lesenswert?

was hast du für tastatur?

USB Tastatur ist ein USB Device, welches in low speed, über Interrupt 
Transfer die Daten überträgt (s. dazu HID Spec auf usb.org). Also muß du 
ein host nachbilden, der entsprechend HID Klasse unterstützt.

von Stefan (Gast)


Lesenswert?


von Florian S. (der_picknicker)


Lesenswert?

Hm, ja, interessant. Aber Arduino-Kram hilft mir da spontan auch nicht. 
Da bräucht ich erstmal ein Arduino-Board, dann ein USB-Shield dafür. Das 
ganze funktiopniert mit einem USB-Host Chip. Dies wollte ich vermeiden 
und das komplett durch Software lösen.

von wt (Gast)


Lesenswert?

vergiss es, schade um verlorene Zeit, du zündest deinen Grill auch nicht 
durch Steine an einander hauen, sondern nimmst einen Streichholz, dem 
Fortschritt sei dank. Also besorge dir einen Hostkontroller.

von Reinhard S. (rezz)


Lesenswert?

Oder eine PS/2-Tastatur, dafür gibts schon SW.

von Helge T. (htefs)


Lesenswert?

Oder man nimmt einfach den Quellcode des entsprechenden Projektes, der 
als Download auf der im ersten Beitrag verlinkten Seite angeboten wird, 
und passt den den eigenen Anforderungen entsprechend an. Dazu muss man 
auch kein japanisch können, denn der Quelltext (Assembler) ist englisch 
kommentiert.

von avr-herbi (Gast)


Lesenswert?

Hallo,
verstehe ich nicht ganz, wo Dein Problem ist.
Die letzte Datei von der .jp Seite, da ist doch der gesamte Source Code 
drin:
...
;----------------------------------------------------------------------- 
-------
; usbconv for AT90S2313  Ver 1.0  2005.03.10 by K.Ishikawa
;----------------------------------------------------------------------- 
-------

  .include "2313def.inc"

;----------------------------------------------------------------------- 
-------
;  AVR Port Assign List
;
;  PortB bit0  LED
;        bit1  Select 0:Mouse 1:Keyboard
;        bit2
;        bit3
;        bit4
;        bit5  (MOSI)
;        bit6  (MISO)
;        bit7  (SCK)
;  PortD bit0  RxD
;        bit1  TxD
;        bit2  USB BUS D+
;        bit3  USB BUS D-
;        bit4
;        bit5
;        bit6
...
Das von einem anderen auf den ATmega8 zu ändern kann ja wohl nicht so 
schwer sein. Etwas muß man sich schon damit auseinandersetzten.
Ob es klappt und funktioniert, kann ich nicht sagen. Das zu testen, dazu 
fehlt mir im Moment die Zeit. Vielleicht habe ich auch was übersehen, 
dann bitte ich um Entschuldigung.
Viel Erfolg und viele Grüße Herbert

von avr-herbi (Gast)


Lesenswert?

Na hat sich gerade überschnitten mit einer Antwort von Helge . Aber 
doppelt genäht hält besser.

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
Noch kein Account? Hier anmelden.