Étape 1: Étape 1: Comment faire pour simuler l’entrée au clavier ?
(1) afin d’injecter des frappes, nous avons besoin de mapper les événements tactiles
de banane à l’événement des séquences de touches standard, tels que KEY_0, KEY_Z, etc., qui correspond aux frappes entre 0 et 9, X_Z. Plus précisément, nous avons besoin d’utiliser un fichier « / dev/input/événement/X » et d’écrire une structure de données nommée input_event à lui injecter une certaine combinaison de touches. Pour connaître tous les dispositifs d’entrée, nous pouvons utiliser la commande suivante : $cat /proc/bus/input/devices. Nous avons constaté que dans notre cas, event1 est le clavier.
(2) maintenant que nous avons découvert le fichier d’entrée, il faut écrire l’input_event de structure de données. L’événement est défini dans /usr/include/linux/input.h. Nous avons besoin de le remplir avec la frappe que nous voulons injecter. La structure est définie comme suit :
struct input_event {struct timeval time;__u16 type;__u16 code;__s32 value;}
type : le type d’événement.
EV_KEY : l’événement de la séquence de touches, par exemple, quelle touche clavier n’est enfoncée et si gauche bouton ou bouton droit de la souris est enfoncée.
EV_REL : Les coordonnées relatives, qui désignent principalement les mouvements de souris
EV_ABS : coordonnées absolues, qui porte principalement sur l’écran tactile.
Code : le code d’événement. Si le type est EV_KEY, le code est le code de la clé. Le code 0-127 correspond à la touche de clavier. Code 0 × 110-0 × 116 se réfère au code de la presse de la souris, où 0 × 110 (BTM_LEFT) signifie que le bouton gauche de la souris, 0 × 111 (BTN_RIGHT) signifie que le bouton droit de la souris, 0 × 112 (BTN_MIDDLE) désigne le bouton du milieu de la souris. Pour tout autre code, veuillez vous reporter au fichier "/ usr/inclure/linux /input.h".
Valeur : la valeur de l’événement. Lorsque le type est EV_KEY, lorsque la touche est enfoncée, la valeur est 1 et 0 quand il est libéré. Si le type est EV_REL, la valeur positive et négative signifie que le mouvement relatif dans deux directions différentes.
Makey Makey utiliser USB-HID pour simuler les événements de clavier au PC hôte. Dans pcDuino, zéro est exécuté lui-même sur pcDuino, donc nous pouvons injecter directement la frappe.