[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gulliver] keymap clavier pour PIC


From plaunay1 <pierre dot launay at ac-rennes dot fr>
Subject Re: [gulliver] keymap clavier pour PIC
Date Mon, 12 May 2008 21:42:18 +0200

Patrick Lamaizière a écrit :
Le Wed, 07 May 2008 19:28:52 +0200,
plaunay1 <pierre dot launay at ac-rennes dot fr> a écrit :

YO,

Je gère un clavier PS/2 avec un PIC16F88 et j'obtiens le code des touches, ca marche bien.

Le clavier est AZERTY et je cherche un fichier de "Keyboard Scan
Codes: Set 2"
http://www.computer-engineering.org/ps2keyboard/scancodes2.html pour
AZERTY pour mon clavier la touche A me renvoie quand j'appuie 0x15 et
au relachement 0xF0 0X15 (touche Q des anglais).

Sur Debian j'ai trouvé http://www.debian.org/intl/french/lexique
"Du côté de l'ordinateur, le clavier envoie ce que les anglophones nomment « keycode » qui est grosso modo l'information sur la place de
la touche enfoncée. Ce keycode est interprété par le noyau via ce qui
est appelé le « keymap », et qui donne la signification de chaque
touche."


J'ai cherché du coté de keymap dans /usr/share/keymaps/i386/azerty
mais je trouve pas de tableau de correspondance.

Tu peux essayer ces keymaps là : http://www.freebsd.org/cgi/cvsweb.cgi/src/share/syscons/keymaps/


(sans garantie)

Merci mais les codes ne correspondent pas.

Je cherche comment connaitre le scancode d'une touche sous FreeBSD à
propos.


Voici ce que j'ai compris et relevé d'un clavier
http://jpbachy.free.fr/Projets2005/PIC/Sixtem/Le_Protocole_PS-2_Souris-Clavier.htm
Les sources en anglais viennent de http://www.computer-engineering.org/
La figure 3 correspond très bien au relevé d'un oscilloscope, avec 2 résistances de polarisation (pull-up) de 4.7k, les fonts sont même plus propre.
Le scancode d'une touche est indépendant du système d'exploitation Gnu Linux, BSD ...
Je n'ai aucun système d'exploitation sur le PIC que j'utilise.


Par contre le scancode correspond non-pas à une touche mais à un emplacement physique. C'est pourquoi le scancode de mon A (0x15 appui, ou 0xF0 0x15 relachement) correspond au scancode du Q (anglais) même emplacement.

J'ai fini par faire mon tableau moi-même pour un clavier AZERTY.

Par contre je ne sais toujours pas comment GNU Linux et encore moins comment FreeBSD gère le scancode. C'est géré par le noyau apparemment mais comment ?

Pierre