Arduino Tastaturabfragen abfangen lassen und Meldung zurückschicken - Möglich?

Hi,

Ist es möglich, dass ich auf dem Arduino (mit dem PC per USB verbunden) ein Programm laufen lasse, bei dem ich dann auf meiner PC-Tastatur z.B. die Taste "A" drücke, der Arduino dies registriert und entsprechend eine Nachricht wie z.B. "Taste A wurde gedrückt" an den PC zurück sendet und diese auf der Konsole ausgegeben wird? Der Arduino wird sozusagen nur als "Maschine" genutzt, auf dem das Programm läuft.

Falls ja, kann ich dies dann eigentlich genauso in C programmieren, als wenn ich dies als reines PC-C-Programm programmieren würde (Also mti scanf() usw)?

Ich nutze einen Arduino Mega.

Ja. Das ist kein Problem.

Der Arduino enthält einige Standard C Libs die automatisch inkludiert sind (und deshalb von vielen Anfängern übersehen werden), diverse AVR Libs für die das gleiche gilt, aber hat auch viele eigene Libs. Eben gerade zur seriellen Kommunikation. Dafür gibt es die Serial Klasse: http://arduino.cc/en/Reference/Serial

Schau dir mal die Beispiele dafür an. In der IDE Datei -> Beispiele -> 4. Communication

Und Beispiele bei der Dokumentation der Methoden. Das ist was du willst: http://arduino.cc/en/Serial/Available

Hat nur eine handvoll Zeilen

EDIT: Die Frage ist noch ob du jeglichen Tastendruck registrieren willst. Das oben ist dafür gedacht, dass man die Daten in ein Terminal Programm wie den SerialMonitor eingibt. Wenn du allgemeine Tastatur-Aktivitäten registrieren willst musst du ein PC Programm schreiben (z.B. in Java oder .NET) das dass für dich macht und die Kommunikation übernimmt.

Man auch eine PS/2 Tastatur direkt an den Arduino anschließen. Da gibt es eine Lib dafür.

hi,

aus der IDE kannst Du den seriellen monitor aufrufen, damit kannst Du zeichen schicken und empfangen, also auch zb ein A schicken und als reaktion ein "A empfangen" (oder was immer Du willst) zurückschicken lassen. probier' das aus, dann kannst Du ja ein eigenes programm zum senden und empfangen schreiben.

gruß stefan

Wenn ich das richtig verstenden habe willst Du Arduino zwischen PC Tastatur und PC hängen und bestimmte Zeichen durch Zeichenfolgen ersetzen?

Ja geht auch wenns ein bißchen Programmieraufwand (Tastaturcode finden) ist. Am einfachsten geht es mit einer PS2 Tastatur. Die kannst Du von Arduino auswerten lassen und mit Arduino eine PS2 Tastatur emulieren. Im Netz findest Du Beispiele für die eine oder andere Funktion dafür. Bei einer USB-Tastatur wird's schon schwieriger. Mit dem Leonardo kannst Du ohne Probleme eine Tastatur emulieren. Die USB-Tastatur an den Arduino anzuschließen brauchst Du aber ein USB-HOST Shield.

Grüße Uwe