FR2695222A1 - Generic keyboard with configuration modifiable according to the user. - Google Patents

Generic keyboard with configuration modifiable according to the user. Download PDF

Info

Publication number
FR2695222A1
FR2695222A1 FR9309665A FR9309665A FR2695222A1 FR 2695222 A1 FR2695222 A1 FR 2695222A1 FR 9309665 A FR9309665 A FR 9309665A FR 9309665 A FR9309665 A FR 9309665A FR 2695222 A1 FR2695222 A1 FR 2695222A1
Authority
FR
France
Prior art keywords
tray
code
switch
switches
series
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
FR9309665A
Other languages
French (fr)
Inventor
Zvuluny Eli
Morag Azriel
Morag Guy
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHAMELEON SYSTEMS Ltd
Original Assignee
CHAMELEON SYSTEMS Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CHAMELEON SYSTEMS Ltd filed Critical CHAMELEON SYSTEMS Ltd
Publication of FR2695222A1 publication Critical patent/FR2695222A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/0202Constructional details or processes of manufacture of the input device
    • G06F3/0219Special purpose keyboards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0238Programmable keyboards

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

L'invention concerne un système de clavier à configuration modifiable pour appareil (24) de traitement de données Il comprend une base (10) servant à accepter un ou plusieurs plateaux (20) d'une série et à transmettre des données audit appareil de traitement de données; un plateau pourvu d'une série d'actionneurs et de commutateurs, chaque actionneur étant associé à un ou plusieurs commutateurs, chaque commutateur étant dans un état choisi parmi plusieurs, ledit plateau étant en outre pourvu de moyens de spécification d'un code d'identification de plateau (20) indiquant l'identité dudit plateau (20), ladite base (10) étant pourvue de moyens servant à recevoir dudit plateau (20) ledit code d'identification de plateau; un moyen de production d'un code de balayage indiquant l'identité et l'état d'un commutateur dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur; et un moyen de couplage (51, 52), dudit système de clavier audit appareil de traitement de données, qui envoie ledit code d'identification de plateau et lesdits codes de balayage par un trajet unique de données.A configurable keyboard system for a data processing apparatus (24) includes a base (10) for accepting one or more platters (20) from a series and transmitting data to said processing apparatus. of data; a plate provided with a series of actuators and switches, each actuator being associated with one or more switches, each switch being in a state chosen from among several, said plate being further provided with means for specifying a code of; tray identification (20) indicating the identity of said tray (20), said base (10) being provided with means for receiving from said tray (20) said tray identification code; means for producing a scan code indicating the identity and state of a switch whose state has changed, at least one scan code being associated with each switch; and means for coupling (51, 52), from said keyboard system to said data processing apparatus, which sends said platter identification code and said scan codes through a single data path.

Description

La présente invention concerne un clavier et, plus particulièrement, unThe present invention relates to a keyboard and, more particularly, to a

système de clavier, destiné à un appareil de traitement de données, dont la  keyboard system, intended for a data processing device, the

configuration peut être modifiée.configuration can be changed.

Les ordinateurs personnels sont typiquement utilisés avec des claviers alphanumériques à configurations fixes, qui sont adaptés à de nombreuses applications De nombreux autres types d'ordinateurs qui utilisent des claviers, par exemple des caisses enregistreuses de supermarchés, utilisent eux aussi des claviers à configurations fixes Les claviers à configurations fixes offrent l'avantage qu'un utilisateur de clavier s'habitue à frapper une touche ou une combinaison de touches particulières pour donner à l'ordinateur des instructions d'effectuer une fonction particulière En revanche, pour de nombreux programmes d'application, le nombre de touches disponibles d'un clavier à configuration fixe est relativement important par rapport au nombre réellement nécessaire pour l'application Cette caractéristique rend difficile à des enfants, et même à des adultes qui ne sont pas familiarisés avec l'utilisation d'ordinateurs, de choisir la touche ou la combinaison de touches particulières nécessaires  Personal computers are typically used with alphanumeric keyboards with fixed configurations, which are suitable for many applications. Many other types of computers which use keyboards, for example supermarket cash registers, also use keyboards with fixed configurations. Fixed-configuration keyboards have the advantage that a keyboard user gets used to hitting a particular key or combination of keys to give the computer instructions to perform a particular function. However, for many application, the number of keys available on a keyboard with a fixed configuration is relatively large compared to the number actually necessary for the application This characteristic makes it difficult for children, and even adults who are not familiar with the use of '' computers, choose the key or the key combination by required

pour exécuter une fonction souhaitée.  to execute a desired function.

En outre, les claviers alphanumériques classiques ne sont pas adaptés à certaines applications Par exemple, pour mettre en oeuvre un programme de simulation de piano, il est souhaitable que la configuration de clavier simule aussi fidèlement que possible un clavier de piano De même, pour mettre en oeuvre un programme comme une simulation d'un avion à réaction, il est souhaitable que le clavier simule les commandes de la cabine de pilotage Alors qu'il est possible à des développeurs d'application de distribuer des claviers spécialisés pour travailler avec leurs applications spécifiques, les dépenses encourues par l'utilisateur de programme réduiraient les avantages résultant du fonctionnement des  In addition, conventional alphanumeric keyboards are not suitable for certain applications. For example, to implement a piano simulation program, it is desirable that the keyboard configuration simulate as accurately as possible a piano keyboard. Similarly, to put implement a program like a simulation of a jet plane, it is desirable that the keyboard simulate the controls of the cockpit While it is possible for application developers to distribute specialized keyboards to work with their applications expenses incurred by the program user would reduce the benefits of operating the

applications sur des ordinateurs universels.  applications on universal computers.

Certains autre programmes d'applications par exemple le Lab View, un produit de National Instruments Corp de Austin, Texas, qui fonctionne sur un ordinateur Apple Macintosh d'Apple Computer Co de Cupertino, Californie, simulent un panneau de commande d'un instrument de laboratoire en effectuant une représentation graphique de ce dernier sur un écran d'ordinateur Ces programmes permettent à l'utilisateur "d'actionner une touche" ou "de tourner un bouton" en utilisant une souris pour déplacer un curseur vers la "touche" ou le "bouton" affiché sur l'écran de l'ordinateur, en utilisant le bouton de la  Certain other application programs, for example the Lab View, a product of National Instruments Corp of Austin, Texas, which runs on an Apple Macintosh computer from Apple Computer Co of Cupertino, California, simulate a control panel of a laboratory by making a graphic representation of the latter on a computer screen These programs allow the user to "press a key" or "to turn a button" using a mouse to move a cursor to the "key" or the "button" displayed on the computer screen, using the button on the

souris pour actionner la touche ou le bouton.  mouse to operate the key or button.

Cependant, ce type d'interaction "graphique" ne fournit pas la même "impression" qu'un clavier physique, et il n'est donc pas souhaitable dans de  However, this type of "graphical" interaction does not provide the same "impression" as a physical keyboard, and therefore is not desirable in

nombreuses situations.many situations.

Alors que des représentations graphiques peuvent apporter une amélioration par rapport à des claviers classiques à configuration inaltérable, l'utilisation d'une souris pour déplacer un curseur dans une position d'écran désignée comme touche ou bouton implique principalement le sens de la vision Dans de nombreuses situations, un clavier qui est mis en oeuvre par des moyens tactiles est plus naturel et donc plus facile à mettre en oeuvre Par exemple, il serait pratiquement impossible d'effectuer une simulation de piano sur un ordinateur en utilisant un clavier à simulation graphique mis en oeuvre par souris Et, alors qu'il peut être possible d'effectuer une simulation d'avion en utilisant un "panneau de commande" à simulation graphique mis en oeuvre par une souris, ce type d'interface d'entrée ne permet pas à l'opérateur de la simulation de piloter l'avion simulé  While graphical representations may provide an improvement over conventional keyboards with unalterable configuration, the use of a mouse to move a cursor to a screen position designated as a key or button mainly involves the sense of vision. many situations, a keyboard that is operated by tactile means is more natural and therefore easier to implement For example, it would be practically impossible to perform a piano simulation on a computer using a graphical simulation keyboard implemented by mouse And, while it may be possible to carry out an aircraft simulation using a graphically simulated "control panel" implemented by a mouse, this type of input interface does not allow the simulation operator to pilot the simulated aircraft

comme un avion réel serait piloté par un pilote réel.  like a real plane would be flown by a real pilot.

Une tentative de remédier aux inconvénients des claviers à configurations fixes est décrite dans le brevet US no 4 688 020 de Kuehneman et al Ce brevet décrit un clavier à configuration modifiable incluant une base et une surface de clavier o des touches sont disposées sur la surface de clavier Chacune des touches est associée à un commutateur de touche et un recouvrement couvre les commutateurs de touches qui ne sont pas reliés à des touches, de sorte que seules des touches choisies sont accessibles Le clavier contient un processeur dans lequel sont mémorisées des tables de touches qui définissent la fonction de chacune des touches accessibles Cependant, une modification de configuration dans l'appareil décrit par Kuehneman et al est peu commode; l'utilisateur doit enlever un panneau de recouvrement, faire sortir des touches individuelles à l'aide d'un tournevis, placer les touches à des emplacements souhaités et remplacer l'ancien panneau de recouvrement par un nouveau panneau qui correspondent à la nouvelle configuration des touches L'utilisateur choisit ensuite parmi un certain nombre de tables de touches choisies au préalable dans la mémoire du clavier, ou bien l'utilisateur peut programmer sa propre table de touches en reliant les modules d'interface du clavier à une console de développement De nombreux utilisateurs ne sont pas compétents techniquement pour configurer un clavier et pour programmer les tables de touches nécessaires pour définir les fonctions de chacune des touches accessibles du clavier Alors que de nombreuses tables prédéfinies de touches peuvent être fournies aux utilisateurs, le nombre limité qui peut être fourni limite la flexibilité dont dispose un  An attempt to remedy the drawbacks of keyboards with fixed configurations is described in US Patent No. 4,688,020 to Kuehneman et al. This patent describes a keyboard with modifiable configuration including a base and a keyboard surface where keys are arranged on the surface of keyboard Each key is associated with a key switch and an overlap covers the key switches which are not connected to keys, so that only selected keys are accessible The keyboard contains a processor in which key tables are stored which define the function of each of the accessible keys However, a configuration modification in the device described by Kuehneman et al is not very convenient; the user must remove a cover panel, remove individual keys using a screwdriver, place the keys in desired locations and replace the old cover panel with a new panel that corresponds to the new configuration of the keys The user then chooses from a certain number of key tables chosen beforehand in the memory of the keyboard, or else the user can program his own key table by connecting the interface modules of the keyboard to a development console De many users are not technically competent to configure a keyboard and to program the key tables necessary to define the functions of each of the accessible keys of the keyboard While many predefined key tables can be provided to users, the limited number which can be provided limits the flexibility that a

utilisateur pour modifier la configuration du clavier.  user to change the keyboard layout.

Ainsi, le système de clavier de Kuehneman et al. charge l'utilisateur de toute la difficulté de la nouvelle configuration et exige que la modification s'effectue entièrement au clavier. Le brevet US N 4 692 740 de Washizuka et al. décrit un clavier qui peut être relié de façon interchangeable au corps d'un calculateur électronique programmable Lorsque des saillies de choix de mode poussent un ou plusieurs commutateurs de choix de mode sur le corps des calculateurs, le calculateur détecte le type de clavier qui lui est attaché Cependant, ce clavier souffre de l'inconvénient que sa mise en oeuvre à l'aide du corps du calculateur exige deux trajets de signaux, un trajet identifier un mode, et un autre pour identifier une touche actionnée, et l'interface entre le clavier et l'ordinateur, telle qu'elle est réalisée pour la majeure partie des ordinateurs personnels universels, n'offre qu'un trajet unique de signaux Ainsi, il serait impossible d'utiliser le clavier décrit par Washizuka et al avec un ordinateur universel sans modifier l'interface du  Thus, the keyboard system of Kuehneman et al. loads the user with all the difficulty of the new configuration and requires that the modification be carried out entirely on the keyboard. US Patent No. 4,692,740 to Washizuka et al. describes a keyboard which can be interchangeably connected to the body of a programmable electronic computer When mode selection projections push one or more mode choice switches on the body of the computers, the computer detects the type of keyboard that is attached However, this keyboard suffers from the drawback that its implementation using the computer body requires two signal paths, a path to identify a mode, and another to identify a key pressed, and the interface between the keyboard and the computer, as it is realized for the majority of the universal personal computers, offers only a single path of signals Thus, it would be impossible to use the keyboard described by Washizuka et al with a universal computer without modifying the interface of the

clavier à l'ordinateur.computer keyboard.

C'est donc le but premier de l'invention que de réaliser un clavier dont la configuration soit facile à modifier La modification de configuration devrait être facile à réaliser par des utilisateurs qui ne sont pas des techniciens et des programmes spéciaux nécessaires devraient être fournis pour un environnement avec lequel la plupart des programmeurs d'applications sont familiers et pour lesquels de  It is therefore the primary object of the invention to provide a keyboard whose configuration is easy to modify. The configuration modification should be easy to carry out by users who are not technicians and necessary special programs should be provided for an environment with which most application programmers are familiar and for which

nombreux outils de développement son disponibles.  many development tools are available.

C'est un deuxième but de l'invention que la liaison réalisée entre le clavier et l'ordinateur soit type normalisé généralement disponible dans les  It is a second object of the invention for the connection made between the keyboard and the computer to be a standard type generally available in

ordinateurs universels.universal computers.

Ces buts sont atteints selon l'invention grâce à un système, qui peut se présenter sous le premier ou deuxième aspect de l'invention, et à un procédé qui peut se présenter sous le troisième, le quatrième ou le cinquième aspect de l'invention. Selon le premier aspect, il est réalisé un système de clavier à configuration modifiable destiné à un appareil de traitement de données, caractérisé en ce qu'il comprend: a une base servant à accepter un ou plusieurs plateaux d'une série et à transmettre des données audit appareil de traitement de données; b un plateau pourvu d'une série d'actionneurs et de commutateurs, chaque actionneur étant associé à un ou plusieurs commutateurs, chaque commutateur étant dans un état choisi parmi plusieurs, ledit plateau étant en outre pourvu de moyens de spécification d'un code d'identification de plateau indiquant l'identité dudit plateau, ladite base étant pourvue de moyens servant à recevoir dudit plateau ledit code d'identification de plateau; c un moyen de production d'un code de balayage indiquant l'identité et l'état d'un commutateur dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur; et d un moyen de couplage dudit système de clavier audit appareil de traitement de données, ledit moyen de couplage envoyant ledit code d'identification de plateau et lesdits codes de balayage par un trajet  These objects are achieved according to the invention thanks to a system, which can be presented under the first or second aspect of the invention, and to a method which can be presented under the third, fourth or fifth aspect of the invention. . According to the first aspect, there is provided a keyboard system with modifiable configuration intended for a data processing apparatus, characterized in that it comprises: has a base serving to accept one or more trays of a series and to transmit data to said data processing apparatus; b a plate provided with a series of actuators and switches, each actuator being associated with one or more switches, each switch being in a state chosen from among several, said plate being further provided with means for specifying a code d 'tray identification indicating the identity of said tray, said base being provided with means serving to receive from said tray said tray identification code; c means for producing a scan code indicating the identity and the state of a switch whose state has varied, at least one scan code being associated with each switch; and means for coupling said keyboard system to said data processing apparatus, said coupling means sending said tray identification code and said scan codes by a path

unique de données.unique data.

De façon générale, l'invention peut comprendre  In general, the invention can include

les modalités suivantes.the following modalities.

Le moyen de spécification d'un code d'identification de plateau peut consister en saillies situées à l'arrière d'un plateau qui activent mécaniquement les commutateurs de la base, ou bien les codes d'identification peuvent être réalisés par des circuits électroniques du plateau qui peuvent être dans un ou plusieurs états, les états étant transmis à la base lorsque les plateaux sont insérés et que la puissance de l'énergie est appliquée au clavier. Un microprocesseur peut être utilisé pour balayer une matrice de commutateurs, l'état d'un commutateur particulier dépendant de l'activation éventuelle d'un actionneur correspondant sur le plateau ou la base Un code de balayage représente l'emplacement de matrices d'un commutateur correspondant à une touche activée. Des codes de balayage et des codes d'identification de plateau sont rendus disponibles à un appareil de traitement de données à partir du clavier par l'intermédiaire d'un câble normalisé d'interface d'un ordinateur à un clavier Un programme d'exécution de l'appareil de traitement de données détermine le caractère à afficher et/ou à déposer dans un tampon de clavier de l'appareil de traitement de données en utilisant une table correspondant à un code d'identification de plateau reçu du clavier en traduisant chaque code de balayage reçu en son  The means for specifying a tray identification code may consist of projections located at the rear of a tray which mechanically activate the switches of the base, or else the identification codes can be produced by electronic circuits of the platter which can be in one or more states, the states being transmitted to the base when the platters are inserted and the power of the energy is applied to the keyboard. A microprocessor can be used to scan a matrix of switches, the state of a particular switch depending on the possible activation of a corresponding actuator on the plate or the base A scanning code represents the location of matrices of a switch corresponding to an activated key. Scan codes and tray identification codes are made available to a data processor from the keyboard via a standard computer interface cable to a keyboard Execution program of the data processing device determines the character to be displayed and / or deposited in a keyboard buffer of the data processing device using a table corresponding to a tray identification code received from the keyboard by translating each scan code received in sound

caractère approprié.appropriateness.

De façon plus spécifique l'appareil conforme à ce premier aspect peut présenter les modalités décrites ci-dessous. Le moyen de spécification d'un code d'identification de plateau peut comprendre en outre un moyen de transmission, situé sur ledit plateau,  More specifically, the device conforming to this first aspect can present the methods described below. The means for specifying a tray identification code may further comprise a transmission means, located on said tray,

d'un code d'identification de plateau à ladite base.  a tray identification code at said base.

Le système peut comprendre en outre, dans l'appareil de traitement de données, un moyen d'association, à une combinaison particulière d'un code de balayage et d'un code d'identification de  The system may further include, in the data processing apparatus, means for associating, with a particular combination of a scan code and an identification code of

plateau, d'une chaîne d'un ou plusieurs caractères.  tray, of a string of one or more characters.

Ladite base peut inclure en outre a une série d'actionneurs et de commutateurs, chaque commutateur étant dans un état parmi plusieurs; et b un moyen de production d'un code de balayage afin d'indiquer l'identité et l'état d'un commutateur dont l'état a varié, au moins un code de balayage  The base may further include a series of actuators and switches, each switch being in one of several states; and b means for producing a scan code in order to indicate the identity and the state of a switch whose state has varied, at least one scan code

étant associé à chaque commutateur.  being associated with each switch.

Dans ce cas, il peut être prévu que au moins l'un desdits commutateurs de ladite base et dudit plateau indique un état particulier et ledit état particulier est envoyé par ledit moyen audit appareil de traitement de données en vue d'un couplage. Le moyen de spécification dudit code d'identification de plateau, présent dans chaque plateau, peut consister en une série de saillies sur ledit plateau et le moyen de réception, dans ladite base, dudit code d'identification de plateau peut consister en une série de commutateurs d'identification de plateau, un commutateur d'identification de plateau étant activé par une saillie d'identification de plateau  In this case, it can be provided that at least one of said switches of said base and of said tray indicates a particular state and said particular state is sent by said means to said data processing apparatus for coupling. The means for specifying said tray identification code, present in each tray, can consist of a series of projections on said tray and the means for receiving, in said base, said tray identification code can consist of a series of tray identification switches, a tray identification switch being activated by a tray identification projection

lorsque ladite base a accepté ledit plateau.  when said base has accepted said plateau.

Le système peut comprendre en outre un moyen de production d'un code particulier non identifié à un commutateur dudit plateau, ledit code particulier indiquant la présence d'un code d'identification de plateau. Dans ce cas, ledit code particulier peut indiquer la présence dudit code d'identification de plateau parce qu'il possède une relation prédéterminée dans le  The system may further comprise means for producing a particular code not identified at a switch of said tray, said particular code indicating the presence of a tray identification code. In this case, said particular code can indicate the presence of said tray identification code because it has a predetermined relationship in the

temps avec ledit code d'identification de plateau.  time with said tray identification code.

Ladite relation prédéterminée peut comprendre le fait que ledit code particulier précède ledit code d'identification de plateau, ledit code particulier étant transmis par ledit moyen de couplage avant la transmission, par ledit moyen de couplage, dudit code d'identification de plateau. ou bien, en variante, ladite relation prédéterminée peut comprendre le fait que ledit code particulier suit le code d'identification de plateau, ledit code particulier étant transmis par ledit moyen de couplage après la transmission, par ledit moyen de couplage, du code d'identification de plateau. Il peut être associé à au moins un commutateur dudit plateau une série de codes spécifiant un état  Said predetermined relationship may include the fact that said particular code precedes said tray identification code, said particular code being transmitted by said coupling means before the transmission, by said coupling means, of said tray identification code. or alternatively, said predetermined relationship may include the fact that said particular code follows the tray identification code, said particular code being transmitted by said coupling means after the transmission, by said coupling means, of the code tray identification. It can be associated with at least one switch of said tray a series of codes specifying a state

dudit plateau.of said tray.

Ledit commutateur au moins unique peut alors indiquer un état particulier, ledit état particulier étant envoyé par ledit moyen de couplage audit moyen  Said at least single switch can then indicate a particular state, said particular state being sent by said coupling means to said means

de traitement de données.data processing.

Pour un plateau particulier, ledit plateau particulier peut comprendre en outre un moyen de production d'un premier code d'une série de codes d'identification de plateau d'une manière telle que ledit plateau particulier peut produire un code quelconque de ladite série de codes d'identification  For a particular tray, said particular tray can further comprise means for producing a first code of a series of tray identification codes in such a way that said particular tray can produce any code of said series of identification codes

de plateau.of tray.

Un utilisateur dudit système peut alors spécifier ledit premier code d'une série de codes d'identification de plateau afin de placer ainsi ledit  A user of said system can then specify said first code of a series of tray identification codes in order to thus place said

plateau dans l'un des états de la série.  plateau in one of the states of the series.

Le système peut comprendre en outre un moyen de produire un éclairage lors de l'activation d'un ou  The system may further include means for providing illumination upon activation of one or more

plusieurs actionneurs.several actuators.

Le système peut comprendre un moyen de production d'un bruit lors de l'actionnement d'un ou plusieurs  The system may include a means of producing a noise upon actuation of one or more

desdits actionneurs.of said actuators.

Ledit code d'identification de plateau comprend un ou plusieurs souscodes indépendants, le sous-code ou chacun d'eux étant déterminé par un état d'un circuit séparé, ledit circuit étant susceptible d'être dans un état parmi plusieurs. Dans ce cas, on peut prévoir que les états  Said tray identification code comprises one or more independent subcodes, the subcode or each of them being determined by a state of a separate circuit, said circuit being capable of being in one of several states. In this case, we can predict that the states

desdits circuits peuvent être choisis indépendamment.  said circuits can be chosen independently.

Les états d'un ou plusieurs desdits commutateurs peuvent être modifiés en actionnant lesdits  The states of one or more of said switches can be changed by actuating said switches

actionneurs associés auxdits commutateurs.  actuators associated with said switches.

Les états d'un ou plusieurs desdits commutateurs peuvent être modifiés par un coulissement desdits  The states of one or more of said switches can be changed by sliding said

actionneurs associés auxdits commutateurs.  actuators associated with said switches.

Les états d'un ou plusieurs desdits commutateurs peuvent être modifiés par une rotation desdits  The states of one or more of said switches can be changed by rotating said switches

actionneurs associés auxdits commutateurs.  actuators associated with said switches.

Les états d'un ou plusieurs des commutateurs peuvent être modifiés en serrant lesdits actionneurs  The states of one or more of the switches can be changed by tightening said actuators

associés auxdits commutateurs.associated with said switches.

Chaque actionneur de ladite série peut être d'une ou plusieurs configurations, d'une ou plusieurs  Each actuator of said series can be of one or more configurations, of one or more

couleurs, et d'une ou plusieurs textures.  colors, and one or more textures.

De façon avantageuse, le système peut comprendre en outre un moyen d'association d'un message  Advantageously, the system can further comprise a means for associating a message.

particulier à un code de balayage particulier.  particular to a particular scan code.

Dans ce cas, ledit moyen d'association peut comprendre une table mémorisée dans la mémoire dudit appareil de traitement de données, ladite table produisant une traduction, dudit code de balayage particulier, qui forme ledit message particulier. Ledit appareil de traitement de données peut alors afficher ledit message particulier après ladite traduction. Dans le cas de la modalité avantageuse décrite plus haut, ledit moyen d'association peut déterminer ledit message particulier par une combinaison dudit code de balayage particulier et de ladite  In this case, said association means can comprise a table stored in the memory of said data processing apparatus, said table producing a translation, of said particular scanning code, which forms said particular message. Said data processing apparatus can then display said particular message after said translation. In the case of the advantageous modality described above, said association means can determine said particular message by a combination of said particular scanning code and said

identification de plateau.tray identification.

Le système peut comprendre en outre un ou plusieurs plateaux additionnels, chacun desdits plateaux additionnels étant pourvu d'une série d'actionneurs et de commutateurs, chaque actionneur étant associé à un ou plusieurs commutateurs, chaque commutateur étant dans un état d'une série, chacun desdits plateaux additionnels comprenant des moyens de spécification d'un code d'identification de plateau indiquant l'identité dudit plateau, ladite base étant pourvue de moyens de réception, à partir dudit  The system may further comprise one or more additional plates, each of said additional plates being provided with a series of actuators and switches, each actuator being associated with one or more switches, each switch being in a state of a series, each of said additional trays comprising means for specifying a tray identification code indicating the identity of said tray, said base being provided with means for receiving, from said

plateau, dudit code d'identification de plateau.  tray, said tray identification code.

Ledit plateau peut comprendre en outre un moyen de spécification d'un emplacement X-Y à utiliser par  Said plate may further comprise a means of specifying an X-Y location to be used by

ledit appareil de traitement de données.  said data processing apparatus.

Ce moyen de spécification peut comprendre un  This means of specification may include a

panneau à touches.touch panel.

On peut prévoir qu'au moins l'un desdits actionneurs de ladite série d'actionneurs peut être activé d'au moins une première manière et une deuxième manière, et ladite première manière comprend une manière consistant à serrer, tourner, appuyer ou faire glisser, et ladite deuxième manière comprend une manière différente consistant à serrer, tourner,  It can be provided that at least one of said actuators of said series of actuators can be activated in at least a first way and a second way, and said first way comprises a way consisting in tightening, turning, pressing or sliding. , and said second way comprises a different way consisting in tightening, turning,

appuyer ou faire glisser.press or drag.

Dans ce cas, une activation selon une première manière peut produire un premier code de balayage, une activation selon une deuxième manière produisant un  In this case, activation in a first way can produce a first scan code, activation in a second way producing a

deuxième code de balayage.second scan code.

Ledit plateau peut être configuré de façon à fonctionner selon un programme particulier d'ordinateur qui est exécuté sur ledit appareil de  Said tray can be configured to operate according to a particular computer program which is executed on said

traitement de données.data processing.

la Dans ce cas, au moins certains desdits actionneurs dudit plateau peuvent être conçus mécaniquement de manière à fonctionner avec ledit  la In this case, at least some of said actuators of said plate can be designed mechanically so as to operate with said

programme particulier.particular program.

Ledit code d'identification de plateau peut être envoyé par ledit système de clavier audit appareil de traitement de données en réponse à une demande dudit  Said tray identification code can be sent by said keyboard system to said data processing apparatus in response to a request from said

appareil de traitement de données.data processing device.

Ledit moyen de spécification, inclus dans chaque plateau, du code d'identification de plateau peut comprendre des liaisons électriques produisant une valeur de signal représentative dudit code d'identification de plateau, ledit moyen récepteur comprenant, dans ladite base, des liaisons électriques correspondantes pour  Said means for specifying, included in each tray, the tray identification code may comprise electrical connections producing a signal value representative of said tray identification code, said receiving means comprising, in said base, corresponding electrical connections for

recevoir ladite valeur de signal.receive said signal value.

Ledit plateau peut être un premier plateau et le système peut comprendre en outre un deuxième plateau, ladite base acceptant simultanément ledit premier plateau et ledit deuxième plateau, ledit premier plateau et ledit deuxième plateau formant ensemble une matrice logique de commutateurs desdits deux plateaux, et ledit premier plateau envoyant un premier code d'identification de plateau et le deuxième plateau incluant un moyen de spécification d'un deuxième code d'identification de plateau qui est combiné audit premier code d'identification de plateau afin d'envoyer un code unique d'identification de plateau  Said tray may be a first tray and the system may further comprise a second tray, said base simultaneously accepting said first tray and said second tray, said first tray and said second tray together forming a logic matrix of switches of said two trays, and said first tray sending a first tray identification code and the second tray including means for specifying a second tray identification code which is combined with said first tray identification code in order to send a unique code for tray identification

par ledit trajet unique de données.  by said single data path.

Les états d'un ou plusieurs commutateurs peuvent être modifiés en réponse à des signaux vocaux d'un utilisateur, Un ou plusieurs des commutateurs peuvent être  The states of one or more switches may be changed in response to voice signals from a user, One or more of the switches may be

actionnés par la lumière.operated by light.

Les états de l'un desdits commutateurs qui sont actionnés par la lumière peuvent être modifiés en empêchant une lumière d'atteindre un capteur de  The states of one of said switches which are operated by light can be changed by preventing light from reaching a light sensor.

l'actionneur associé à l'un desdits commutateurs.  the actuator associated with one of said switches.

Selon un deuxième aspect de l'invention, il est réalisé un système à clavier à configuration modifiable destiné à un appareil de traitement de données caractérisé en ce que ledit système comprend a une base servant à accepter un ou plusieurs plateaux d'une série et à transmettre des données audit appareil de traitement de données; b un premier plateau pourvu d'une première série d'actionneurs et de commutateurs et un deuxième plateau pourvu d'une deuxième série d'actionneurs et de commutateurs, chaque actionneur étant associé à un ou plusieurs commutateurs de chacun desdits plateaux d'actionneurs, chaque commutateur se trouvant dans un état d'une série, ledit premier plateau étant en outre  According to a second aspect of the invention, there is provided a keyboard system with modifiable configuration intended for a data processing apparatus characterized in that said system comprises a base serving to accept one or more trays of a series and to transmitting data to said data processing apparatus; b a first plate provided with a first series of actuators and switches and a second plate provided with a second series of actuators and switches, each actuator being associated with one or more switches of each of said actuator plates, each switch being in a state of a series, said first plate being further

pourvu de moyens de spécification d'un premier sous-  provided with means for specifying a first sub-

code d'identification de plateau indiquant l'identité dudit premier plateau, ledit deuxième plateau étant en outre pourvu de moyens de réception dudit premier sous-code d'identification de plateau et de spécification d'un deuxième sous-code d'identification de plateau, indiquant l'identité dudit deuxième plateau, ladite base étant pourvue d'un moyen de réception dudit premier et dudit deuxième sous-codes d'identification de-plateau à partir dudit deuxième plateau; c un moyen de production d'un code de balayage indiquant l'identité et l'état d'un commutateur dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur; d un moyen de couplage dudit système de clavier audit appareil de traitement de données, ledit moyen de couplage envoyant ledit premier et ledit deuxième sous-codes d'identification de plateau, et lesdits  tray identification code indicating the identity of said first tray, said second tray being further provided with means for receiving said first tray identification sub-code and for specifying a second tray identification sub-code , indicating the identity of said second tray, said base being provided with means for receiving said first and said second tray identification sub-codes from said second tray; c means for producing a scan code indicating the identity and the state of a switch whose state has varied, at least one scan code being associated with each switch; means for coupling said keyboard system to said data processing apparatus, said coupling means sending said first and said second tray identification sub-codes, and said

codes de balayage par un trajet unique de données.  scan codes by a single data path.

Selon un troisième aspect de l'invention, il est fourni un procédé de réalisation d'un système à configuration modifiable destiné à un appareil de traitement de données, ledit procédé comprenant les étapes consistant à: a réaliser une base servant à accepter un ou plusieurs plateaux d'une série et à transmettre des données audit appareil de traitement de données b réaliser un ou plusieurs plateaux, chaque plateau étant pourvu d'une série d'actionneurs et de commutateurs, chaque actionneur étant associé à un ou plusieurs commutateurs, chaque commutateur étant dans un état d'une série, chaque plateau comprenant en outre des moyens de spécification d'un code d'identification de plateau indiquant l'identité dudit plateau, ladite base comprenant un moyen de réception desdits codes d'identification de plateau à partir  According to a third aspect of the invention, there is provided a method for producing a system with modifiable configuration intended for a data processing apparatus, said method comprising the steps consisting in: producing a base serving to accept one or more trays of a series and for transmitting data to said data processing device b making one or more trays, each tray being provided with a series of actuators and switches, each actuator being associated with one or more switches, each switch being in a state of a series, each tray further comprising means for specifying a tray identification code indicating the identity of said tray, said base comprising means for receiving said tray identification codes from

desdits plateaux.said plates.

c produire un code de balayage indiquant l'identité et l'état d'un commutateur dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur; et d envoyer audit appareil de traitement de données lesdits codes d'identification de plateau et lesdits codes de balayage par un trajet unique de donnés. Selon un quatrième aspect de l'invention, il est fourni un procédé de réalisation d'un système à configuration modifiable destiné à un appareil de traitement de données, ledit procédé comprenant les étapes consistant à: a réaliser une base servant à accepter un ou plusieurs plateaux d'une série et à transmettre des données audit appareil de traitement de données b réaliser un ou plusieurs plateaux, chaque plateau étant pourvu d'une série d'actionneurs et de commutateurs, chaque actionneur étant associé à un ou plusieurs commutateurs, chaque commutateur étant dans un état d'une série, chaque plateau comprenant en outre des moyens de spécification d'un code d'identification de plateau indiquant l'identité dudit plateau, ladite base comprenant un moyen de réception desdits codes d'identification de plateau à partir  c producing a scan code indicating the identity and the state of a switch whose state has varied, at least one scan code being associated with each switch; and sending said tray identification codes and said scanning codes to said data processing apparatus by a single data path. According to a fourth aspect of the invention, there is provided a method for producing a modifiable configuration system intended for a data processing apparatus, said method comprising the steps consisting in: producing a base serving to accept one or more trays of a series and for transmitting data to said data processing device b making one or more trays, each tray being provided with a series of actuators and switches, each actuator being associated with one or more switches, each switch being in a state of a series, each tray further comprising means for specifying a tray identification code indicating the identity of said tray, said base comprising means for receiving said tray identification codes from

desdits plateaux.said plates.

c produire un code de balayage indiquant l'identité et l'état d'un commutateur dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur; d produire un code particulier non identifié à un commutateur de l'un desdits plateaux, ledit code particulier indiquant la présence d'un code d'identification de plateau; e produire un code d'identification de plateau, et  c producing a scan code indicating the identity and the state of a switch whose state has varied, at least one scan code being associated with each switch; d producing a particular unidentified code at a switch of one of said platforms, said particular code indicating the presence of a platform identification code; e produce a tray identification code, and

f produire ledit code de balayage.f producing said scan code.

Selon un cinquième aspect de l'invention, il est fourni un procédé de réalisation d'un système de clavier susceptible d'une nouvelle configuration, destiné à un appareil de traitement de données, ledit procédé comprenant les étapes consistant à a réaliser une base servant à accepter un ou plusieurs plateaux d'une série et à transmettre des données audit appareil de traitement de données b réaliser un premier et un deuxième plateaux, chaque plateau étant pourvu d'une série d'actionneurs et de commutateurs, chaque actionneur étant associé à un ou plusieurs commutateurs, chaque commutateur étant dans un état d'une série d'états, ledit premier plateau comprenant en outre un moyen de spécification d'un premier sous-code d'identification de plateau indiquant l'identité dudit plateau, ledit deuxième plateau étant en outre pourvu de moyens de réception dudit premier sous-code d'identification de plateau et de spécification d'un deuxième sous-code d'identification de plateau indiquant l'identité dudit deuxième plateau, ladite base comprenant des moyens de réception dudit premier et dudit deuxième sous-codes d'identification de plateau à partir dudit deuxième plateau; c produire un code de balayage indiquant l'identité et l'état d'un commutateur dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur; et  According to a fifth aspect of the invention, there is provided a method for producing a keyboard system capable of a new configuration, intended for a data processing apparatus, said method comprising the steps consisting in producing a base serving accepting one or more plates from a series and transmitting data to said data processing device b producing a first and a second plate, each plate being provided with a series of actuators and switches, each actuator being associated with one or more switches, each switch being in a state of a series of states, said first tray further comprising means for specifying a first tray identification sub-code indicating the identity of said tray, said second tray also being provided with means for receiving said first tray identification sub-code and for specifying a second identifier sub-code tray ation indicating the identity of said second tray, said base comprising means for receiving said first and said second tray identification sub-codes from said second tray; c producing a scan code indicating the identity and the state of a switch whose state has varied, at least one scan code being associated with each switch; and

d envoyer ledit premier et ledit deuxième sous-  d send said first and said second sub-

codes d'identification de plateau et lesdits deuxièmes  tray identification codes and said second

codes de balayage par un trajet unique de données.  scan codes by a single data path.

Les buts, particularités et avantages de la présente invention ressortiront mieux de la  The aims, features and advantages of the present invention will emerge more clearly from the

description qui suit d'un exemple de mode de  description which follows of an example of

réalisation préféré et des dessins dans lesquels la FIG 1 est une vue en perspective éclatée d'un clavier à configuration modifiable selon un mode de réalisation de la présente invention Le clavier est  preferred embodiment and of the drawings in which FIG 1 is an exploded perspective view of a keyboard with modifiable configuration according to an embodiment of the present invention The keyboard is

représenté relié à un ordinateur serveur.  shown connected to a server computer.

La FIG 2 a représente une vue détaillée de dessus  FIG 2a shows a detailed top view

d'un plateau de clavier.of a keyboard tray.

La FIG 2 b représente une vue détaillée de  FIG 2b shows a detailed view of

derrière d'un plateau de clavier.behind a keyboard tray.

La FIG 2 c représente un circuit à l'intérieur du plateau destiné à spécifier un élément  FIG 2 c represents a circuit inside the plate intended to specify an element

d'identification de plateau.tray identification.

La FIG 3 est un schéma de l'électronique de  FIG 3 is a diagram of the electronics of

clavier.keyboard.

La FIG 4 est un schéma logique du sous-programme d'interruption fonctionnant sur l'ordinateur serveur  FIG 4 is a logic diagram of the interrupt routine running on the server computer

de manière à lire la donnée venant du clavier.  so as to read the data coming from the keyboard.

La FIG 5 a représente une touche rotative.  FIG 5a shows a rotary key.

La FIG 5 b représente une touche coulissante. La FIG 6 représente une table de traduction de clavier. La FIG 7 représente un clavier configuré pour être utilisé avec un programme de calculateur  FIG 5b shows a sliding button. FIG 6 shows a keyboard translation table. FIG 7 shows a keyboard configured for use with a computer program

fonctionnant sur l'ordinateur serveur.  running on the server computer.

La FIG 8 est un schéma logique du programme de microprocesseur qui balaye une matrice de commutateurs et d'un commutateur qui détermine la touche ou les touches actionnées ou relâchées et lit le code de plateau, et qui transmet le code de plateau ou le code de touche à l'ordinateur serveur, en même temps qu'un préfixe servant à indiquer quand le code de plateau  FIG. 8 is a logic diagram of the microprocessor program which scans a matrix of switches and a switch which determines the key or keys pressed or released and reads the tray code, and which transmits the tray code or the code key on the server computer, along with a prefix to indicate when the tray code

doit être transmis.must be transmitted.

La FIG 1 représente une vue éclatée d'un clavier à configuration modifiable selon un premier mode de réalisation Le clavier consiste en deux éléments de base, une base 10 et un plateau 20 Le plateau 20 peut être monté en le faisant coulisser dans un évidement de la base 10 dans le sens représenté par la flèche 40 Le plateau 20 est maintenu en place dans la base par des guides de coulissement 50 en saillie depuis les côtés d'un évidement 30 de la base 10, les guides concordant avec des évidements 60 ménagés dans le côté du plateau 10 Lorsque le plateau 20 est totalement inséré dans l'évidement 30 de la base, le plateau 20  FIG 1 shows an exploded view of a keyboard with modifiable configuration according to a first embodiment The keyboard consists of two basic elements, a base 10 and a tray 20 The tray 20 can be mounted by sliding it in a recess of the base 10 in the direction represented by the arrow 40 The plate 20 is held in place in the base by sliding guides 50 projecting from the sides of a recess 30 in the base 10, the guides coinciding with recesses 60 provided in the side of the tray 10 When the tray 20 is fully inserted in the recess 30 of the base, the tray 20

est verrouillé en place par des verrous mécaniques 70.  is locked in place by mechanical locks 70.

Les verrous mécaniques peuvent être rétractés en actionnant des boutons de libération 71, en permettant ainsi au plateau d'être libéré Le trajet de signaux entre la base 10 et un ordinateur serveur 24 est réalisé par un câble 18 pourvu d'un connecteur 19 relié à une douille 25 de l'ordinateur serveur 24 La combinaison de connecteur et de douille est d'un type utilisé classiquement pour relier des claviers à des appareils de traitement de données comme un ordinateur 24. La FIG 2 a représente un plateau 20 Le plateau consiste en un ensemble de touches et d'autres actionneurs De nombreuses configurations peuvent envisagées pour le plateau En outre, les touches elles-mêmes peuvent être d'une forme, d'une couleur, ou d'une texture quelconque En plus des touches, il est possibled'utiliser des coulisseaux 29, des boutons tournants 27, des billes de poursuite, des manipulateurs ou commutateurs à tiges et d'autres actionneurs, chacun de ces actionneurs pouvant être dans l'un de deux états discrets ou davantage Par exemple, un coulisseau peut se trouver dans une position parmi plusieurs, un commutateur peut être en fonction ou hors fonction et un commutateur sensible à la pression peut être enfoncé en utilisant une pression parmi plusieurs pressions discrètes Alors qu'un commutateur sensible à la pression peut être enfoncé au moyen d'une pression variable continue, des commutateurs internes traduisent la pression variable continue en une série de pressions discrètes Des touches à configurations complémentaires comme les touches numérotées 32 à 36 peuvent être groupées entre elles De plus, des actionneurs qui répondent à plus d'un type d'effets peuvent être inclus Par exemple, il peut exister des boutons tournants qui peuvent également être enfoncés, ou des poignées d'un manipulateur qui peuvent être serrées ou être déplacées. Selon une variante de mode de réalisation, un commutateur peut être sensible à des sons, de sorte que son état est modifié en fonction du niveau sonore ou de la hauteur d'un son; ceci peut être mis en oeuvre en utilisant des techniques bien connues de  The mechanical locks can be retracted by actuating release buttons 71, thus allowing the tray to be released. The signal path between the base 10 and a server computer 24 is produced by a cable 18 provided with a connector 19 connected to a socket 25 of the server computer 24 The connector and socket combination is of a type conventionally used for connecting keyboards to data processing devices such as a computer 24. FIG 2 a represents a tray 20 The tray consists in a set of keys and other actuators Many configurations can be envisaged for the tray In addition, the keys themselves can be of any shape, color, or texture In addition to the keys, there it is possible to use slides 29, rotary knobs 27, tracking balls, manipulators or switches with rods and other actuators, each of these actuators being able to be in the one of two or more discrete states For example, a slider may be in one of several positions, a switch may be on or off and a pressure sensitive switch may be depressed using one of several discrete pressures While pressure-sensitive switch can be pressed by means of continuous variable pressure, internal switches translate continuous variable pressure into a series of discrete pressures Keys with additional configurations such as the keys numbered 32 to 36 can be grouped together In addition, actuators which respond to more than one type of effect may be included. For example, there may be rotary knobs which may also be depressed, or handles of a manipulator which may be tightened or moved. According to an alternative embodiment, a switch can be sensitive to sounds, so that its state is modified as a function of the sound level or the pitch of a sound; this can be implemented using well known techniques of

reconnaissance des sons.sound recognition.

Selon un autre mode de réalisation, un commutateur particulier peut être actionné par la lumière; par exemple, l'état du commutateur peut être déterminé par le fait qu'une lumière atteint ou non un capteur d'actionneur du commutateur particulier Dans ce cas, si l'utilisateur empêche une lumière ambiante de parvenir au commutateur (par exemple en plaçant un doigt au-dessus de l'actionneur), l'état du  According to another embodiment, a particular switch can be actuated by light; for example, the state of the switch can be determined by whether a light reaches a particular switch actuator sensor or not In this case, if the user prevents ambient light from reaching the switch (for example by placing a finger above the actuator), the status of

commutateur est modifié.switch is changed.

Un clavier à configuration modifiable peut être configuré spécialement pour fonctionner avec des programmes d'ordinateurs particuliers Par exemple, la FIG 1 représente un clavier qui peut être utilisé dans un programme servant à aider les enfants à apprendre des formes, et la FIG 7 représente un clavier selon une configuration qui peut être utilisée  A keyboard with an editable configuration can be specially configured to work with particular computer programs. For example, FIG 1 shows a keyboard that can be used in a program to help children learn shapes, and FIG 7 shows a keyboard in a configuration that can be used

pour un programme de calculateur.for a computer program.

La FIG 2 b représente une vue en perspective de l'arrière du plateau 20 Un connecteur 51 est disposé sur l'arrière du plateau 20 pour relier un connecteur complémentaire 52 situé à l'arrière de l'évidement 30 de base afin de permettre une transmission de signaux du plateau à la base Des saillies 21 d'identification  FIG 2b shows a perspective view of the rear of the tray 20 A connector 51 is arranged on the back of the tray 20 to connect a complementary connector 52 located at the rear of the base recess 30 to allow a transmission of signals from the platform to the base Identification projections 21

de plateau sont disposées à l'arrière du plateau 20.  tray are arranged at the rear of the tray 20.

Lorsque le plateau 20 est inséré dans la base 10, un commutateur 17 d'identification de plateau situé à l'arrière de l'évidement 30 de base est actionné pour chaque saillie 21 d'identification de plateau du plateau 20 Le nombre et l'emplacement des saillies 21 d'identification de plateau sont particuliers à un plateau spécifique de façon à identifier le plateau couplé à la base 10 On peut comprendre qu'un utilisateur peut disposer d'un procédé lui permettant de configurer lui-même des saillies d'identification de plateau, par exemple des pattes en plastique qui peuvent être brisées ou des broches en saillie qui peuvent être insérées dans des trous aménagés à l'arrière du plateau. Selon un autre mode de réalisation possible, un circuit d'identification de plateau électronique est disposé dans le plateau 20 Plusieurs bits sont assignés pour identifier le plateau Comme illustré à la FIG 2 c, dans un tel mode de réalisation, une masse et un signal de 5 volts sont fournis au plateau 20 par  When the tray 20 is inserted into the base 10, a tray identification switch 17 located at the rear of the base recess 30 is actuated for each projection 21 of the tray identification of the tray 20 The number and the location of the projections 21 for identifying the tray are specific to a specific tray so as to identify the tray coupled to the base 10 It can be understood that a user can have a method allowing him to configure himself the projections of tray identification, for example plastic tabs which can be broken or protruding pins which can be inserted into holes in the rear of the tray. According to another possible embodiment, an electronic board identification circuit is arranged in the board 20 Several bits are assigned to identify the board As illustrated in FIG 2 c, in such an embodiment, a ground and a signal of 5 volts are supplied to the plate 20 by

la base 10 par des broches 53 et 54 respectivement.  the base 10 by pins 53 and 54 respectively.

L'identification de plateau est envoyée du plateau à la base par les connecteurs 51, 52 A la FIG 2 c, deux bits d'identification de plateau sont représentés comme envoyés à la base par les broches 55 et 56 des connecteurs 51, 52 Chaque bit de l'identification de plateau peut être dans l'un de deux états, à la masse ou à environ 5 volts, selon celles des broches 53, 54 qui est relié à des broches des connecteurs 51, 52 A la FIG 2 c, le bit envoyé par la broche 55 est d'environ 5 volts, (la résistance de la broche 54 à la broche 55 peut être omise) et le bit fourni par la  The tray identification is sent from the tray to the base by the connectors 51, 52 In FIG 2 c, two bits of tray identification are represented as sent to the base by the pins 55 and 56 of the connectors 51, 52 Each bit of the tray identification can be in one of two states, grounded or around 5 volts, depending on which of pins 53, 54 which is connected to pins of connectors 51, 52 In FIG 2 c, the bit sent by pin 55 is around 5 volts, (the resistance from pin 54 to pin 55 can be omitted) and the bit supplied by the

broche 56 est à la masse.pin 56 is grounded.

Selon un autre mode de réalisation éventuel, un utilisateur peut disposer d'un commutateur à boîtier à double rangée de broches, ou DIP, pour modifier l'identification de plateau d'une manière telle qu'il puisse relier sélectivement chaque bit de l'élément d'identification de plateau à la masse ou au signal de volts. Chaque plateau peut se trouver dans plusieurs états, qui peuvent être choisis par un coulisseau ou un autre actionneur sur le plateau ou la base Par exemple, pour un plateau d'un programme d'apprentissage d'enfants, chaque état du plateau peut  According to another possible embodiment, a user can have a switch with a double row pin housing, or DIP, to modify the tray identification in such a way that it can selectively link each bit of the platen identification element to ground or to volt signal. Each tray can be in several states, which can be chosen by a slide or another actuator on the tray or the base For example, for a tray of a children's learning program, each state of the tray can

correspondre à un niveau différent de difficultés.  correspond to a different level of difficulty.

Dans un mode de réalisation, un code différent de  In one embodiment, a code different from

plateau est assigné à chacun de ces états.  board is assigned to each of these states.

Selon une variante de mode de réalisation, deux cas sont utilisés: un code de plateau pour identifier le plateau et un code de niveau de plateau pour  According to an alternative embodiment, two cases are used: a plateau code to identify the plateau and a plateau level code for

identifier l'état du plateau.identify the condition of the platform.

Certains des plateaux 20 peuvent être configurés spécialement pour des applications d'ordinateurs largement répandus commercialisés par d'autres fabricants Par exemple, il peut exister un plateau spécial pour un simulateur de vol Microsoft, qui est un programme de simulation de vol largement répandu de la Microsoft Corporation, Redmond, Washington Un tel plateau peut permettre à un utilisateur d'utiliser un manipulateur, à la différence des touches de flèche d'un clavier classique Le code de plateau venant d'un plateau configuré spécialement de cette manière identifierait le type particulier de plateau et l'électronique incluse dans la base 10 ou le plateau  Some of the platters 20 can be specially configured for widely used computer applications marketed by other manufacturers. For example, there may be a special platter for a Microsoft flight simulator, which is a widely used flight simulation program of the Microsoft Corporation, Redmond, Washington Such a tray can allow a user to use a manipulator, unlike the arrow keys on a conventional keyboard. The tray code from a tray specially configured in this way would identify the particular type. and the electronics included in base 10 or the tray

pourrait interpréter un tel plateau.  could interpret such a plateau.

Selon un autre mode de réalisation, certaines touches d'un plateau peuvent être programmées au préalable pour amener un ordinateur serveur 24 à effectuer des actions particulières Dans un tel système, l'actionnement d'une touche unique amènerait une chaîne complète de caractères, ou une ligne  According to another embodiment, certain keys of a tray can be programmed beforehand to cause a server computer 24 to perform specific actions. In such a system, the actuation of a single key would bring about a complete string of characters, or a line

d'ordre, à être entrée dans l'ordinateur serveur 24.  to be entered in the server computer 24.

Le code de plateau identifierait un tel plateau Dans ce but, l'appareil de traitement de données décode une combinaison particulière unique de code de balayage et de code de plateau, envoyée au connecteur 18 d'ordinateur par le clavier, afin de produire une chaîne de caractères à placer dans le tampon de clavier de l'appareil de traitement de données En variante, le microprocesseur de la base du clavier peut être programmé pour engendrer une série de codes de balayage venant de l'activation d'un actionneur particulier du plateau, cette série de codes de balayage étant envoyée à l'ordinateur par l'intermédiaire du connecteur 18 On comprend que d'autres modes de réalisation peuvent être implantés afin de produire une série de caractères à entrer dans  The tray code would identify such a tray. For this purpose, the data processing device decodes a unique particular combination of scan code and tray code, sent to the computer connector 18 by the keyboard, in order to produce a chain. of characters to be placed in the keyboard buffer of the data processing device As a variant, the microprocessor at the base of the keyboard can be programmed to generate a series of scanning codes coming from the activation of a particular actuator of the table , this series of scanning codes being sent to the computer via the connector 18 It is understood that other embodiments can be implemented in order to produce a series of characters to be entered

l'ordinateur 24.computer 24.

La FIG 3 représente un schéma détaillé de l'électronique de clavier On comprend que l'électronique de clavier est bien connue et que des implantations connues autres que celles qui sont représentées à la FIG 3 peuvent être utilisées Le clavier représenté à la FIG 3 contient quatre conducteurs de colonnes lla à lld et huit conducteurs de rangées 12 a à 12 h Les conducteurs sont agencés selon une matrice Alors qu'une matrice physique rectangulaire est représentée, on comprend qu'il s'agit en général d'une matrice logique qui peut être agencée selon une disposition géométrique quelconque nécessaire pour une configuration particulière de commutateurs et d'actionneurs Chaque conducteur de colonne est relié en pouvant être commuté à chaque  FIG 3 represents a detailed diagram of the keyboard electronics. It is understood that the keyboard electronics are well known and that known layouts other than those which are represented in FIG 3 can be used. The keyboard represented in FIG 3 contains four column conductors lla to lld and eight row conductors 12 a to 12 h The conductors are arranged according to a matrix While a rectangular physical matrix is represented, it is understood that it is generally a logical matrix which can be arranged in any geometrical arrangement necessary for a particular configuration of switches and actuators Each column conductor is connected so that it can be switched to each

conducteur séparé de rangée 12 par un commutateur 15.  separate row conductor 12 by a switch 15.

Par exemple, le conducteur 12 f de rangée est relié en pouvant être commuté au conducteur de colonne llb par le commutateur 15 b Une connexion particulière est effectuée (c'est-à-dire qu'un commutateur est fermé) lorsqu'une touche (ou un autre actionneur) situé à proximité d'un commutateur particulier est actionnée en amenant le commutateur à se fermer Des mécanismes de commutateurs à touches sont connus dans l'art; par exemple, un mécanisme de ce type est décrit dans le brevet US N O 4 688 020 de Kuehneman et al Comme décrit plus haut, on comprend que des mécanismes de commutateurs à touches autres que le type à "plongeur" décrit par Kuehneman et al peuvent être utilisés Par exemple, des commutateurs tournant et coulissants comme représentés aux FIG 5 a et 5 b respectivement, peuvent également être prévus En se référant à la FIG 5 a, on voit que la rotation du bouton 82 autour du pivot 81 permet d'ouvrir ou de fermer sélectivement les commutateurs 83 a à 83 f De même, en se référant à la FIG 5 b, on voit que le coulissement de la touche 84 permet d'ouvrir ou de fermer sélectivement des  For example, the row conductor 12 f is connected so that it can be switched to the column conductor llb by the switch 15 b A special connection is made (i.e. a switch is closed) when a key ( or other actuator) located near a particular switch is operated by causing the switch to close. Key switch mechanisms are known in the art; for example, such a mechanism is described in US Patent No. 4,688,020 to Kuehneman et al. As described above, it is understood that key switch mechanisms other than the "plunger" type described by Kuehneman et al can be used For example, rotary and sliding switches as shown in FIGS 5 a and 5 b respectively, can also be provided With reference to FIG 5 a, it can be seen that the rotation of the button 82 around the pivot 81 makes it possible to open or selectively close the switches 83 a to 83 f Likewise, with reference to FIG 5 b, it can be seen that the sliding of the button 84 makes it possible to selectively open or close

commutateurs 85 a à 85 d.switches 85 a to 85 d.

De plus, on peut réaliser des actionneurs tels que chaque actionneur puisse être actionné de plus d'une manière Par exemple, un actionneur de ce type peut ouvrir ou fermer un commutateur lorsqu'il est serré, et ouvrir ou fermer un autre commutateur lorsque l'actionneur est enfoncé On comprendra qu'une touche coulissante 84 représentée à la FIG 5 b peut  In addition, actuators can be made such that each actuator can be actuated in more than one way. For example, an actuator of this type can open or close a switch when it is tight, and open or close another switch when the actuator is pressed It will be understood that a sliding button 84 shown in FIG 5b can

être utilisée pour modifier l'état d'un plateau.  be used to modify the state of a tray.

Selon un autre mode de réalisation, les plateaux peuvent comprendre, en plus des touches et autres actionneurs, des lumières qui s'éclairent en réponse à l'actionnement de certaines touches ou actionneurs Le plateau 20 peut également comprendre des mécanismes sonores, par exemple des cloches ou des vibreurs qui répondent aux actionnements de certaines touches ou de certains actionneurs Par exemple, appuyer sur le lapin 26 du plateau 20 de la FIG 1 peut amener une cloche à sonner L'énergie de ces mécanismes lumineux ou sonores peut être amenée au plateau 20 à partir de  According to another embodiment, the plates can comprise, in addition to the keys and other actuators, lights which light up in response to the actuation of certain keys or actuators. The plate 20 can also include sound mechanisms, for example bells or vibrators that respond to the actuations of certain keys or certain actuators For example, pressing the rabbit 26 on the tray 20 of FIG 1 can cause a bell to ring The energy of these light or sound mechanisms can be brought to the tray 20 from

l'unité de base 10.base unit 10.

Selon un autre mode de réalisation, il est possible d'insérer plus d'un plateau de touches ou d'actionneurs dans l'unité de base 10 Par exemple, si deux plateaux sont utilisés, le code de plateau peut être divisé en deux sous-codes Dans un mode de réalisation qui présente des saillies d'identification 21 et des commutateurs correspondants 17 d'identification de plateau à l'arrière de l'évidement de base 30, les saillies d'identification 21 de plateau des deux plateaux forment ensemble le code d'identification de plateau Dans un mode de réalisation utilisant des connecteurs 51, 52 pour fournir le code de plateau, deux connecteurs 52 peuvent être utilisés au lieu d'un, chacun des plateaux comprenant un connecteur 51 qui s'ajuste dans l'un des deux connecteurs 52 de l'unité de base 10 La partie de la matrice logique qui correspond à l'un des plateaux est située sur le plateau 20 et la partie de matrice logique qui correspond au deuxième des  According to another embodiment, it is possible to insert more than one plate of keys or actuators in the base unit 10 For example, if two plates are used, the code of plate can be divided into two sub -codes In an embodiment which has identification projections 21 and corresponding switches 17 for tray identification at the rear of the base recess 30, the identification projections 21 for tray of the two trays form together the tray identification code In one embodiment using connectors 51, 52 to provide the tray code, two connectors 52 can be used instead of one, each of the trays comprising a connector 51 which fits in the one of the two connectors 52 of the base unit 10 The part of the logic matrix which corresponds to one of the plates is located on the plate 20 and the part of logic matrix which corresponds to the second of the

plateaux est située sur le deuxième plateau.  trays is located on the second tray.

Selon un autre mode de réalisation encore, un connecteur électrique est disposé entre les deux plateaux Le connecteur électrique peut relier la partie de la matrice d'un plateau à la partie de la matrice du deuxième plateau Un connecteur entre les deux plateaux peut permettre à un premier plateau de  According to yet another embodiment, an electrical connector is disposed between the two plates. The electrical connector can connect the part of the matrix of a plate to the part of the matrix of the second plate. A connector between the two plates can allow a first set of

recevoir du deuxième plateau un sous-code de plateau.  receive from the second tray a tray subcode.

Le premier plateau fournit alors par une connexion 51, 52 un code d'identification de plateau contenant les  The first tray then provides a connection 51, 52 with a tray identification code containing the

sous-codes de plateaux des deux plateaux.  tray sub-codes of the two trays.

Un clavier à configuration normalisée fixe peut être relié à la base 10 par l'intermédiaire d'une connexion normalisée de plateau de l'ordinateur serveur particulier 24 Dans ce cas, la base 10 inclut un moyen d'arbitrage, (par exemple un microprocesseur 16) qui arbitre sur la base du premier entré premier servi, en utilisant des algorithmes bien connus d'arbitrage utilisant cette base L'algorithme est typiquement implanté dans un programme d'ordinateur qui est exécuté sur un microprocesseur 16 et qui arbitre entre le balayage du plateau/de la matrice logique de base et le passage par les codes de balayage depuis la matrice classique (qui inclut son propre microprocesseur pour balayer la matrice fixe de touche du clavier normalisé) Si une touche est actionnée sur le clavier normalisé à configuration fixe, si aucun code de balayage ou aucun autre code venant du plateau de la base 10 n'est actuellement envoyé par le microprocesseur 16, la base 10 laisse passer l'information reçue du clavier normalisé à travers la base 10 pour atteindre le processeur serveur 24 Si une touche est actionnée sur la base 10 ou le plateau 20, la base 10 fonctionne de la manière  A fixed standard configuration keyboard can be connected to the base 10 via a standardized tray connection of the particular server computer 24 In this case, the base 10 includes an arbitration means (for example a microprocessor 16) which arbitrates on a first come first served basis, using well known arbitration algorithms using this basis The algorithm is typically implemented in a computer program which is executed on a microprocessor 16 and which arbitrates between scanning of the tray / of the basic logic matrix and the passage by the scanning codes from the classic matrix (which includes its own microprocessor to scan the fixed key matrix of the standard keyboard) If a key is pressed on the standard keyboard with fixed configuration , if no scanning code or any other code coming from the base 10 tray is currently sent by the microprocessor 16, the base 10 lets the information pass n received from the standard keyboard through the base 10 to reach the server processor 24 If a key is pressed on the base 10 or the tray 20, the base 10 operates in the manner

décrite ici.described here.

Des touches normalisées comme les touches de flèches 22 sont nécessaires dans de nombreux programmes Puisqu'il est souhaitable que ces touches standardisées soient présentes sur le clavier dans toutes les configurations, ces touches peuvent être localisées sur la base 10 comme représenté aux FIG 1 et 7 Dans un tel cas, la partie de la matrice logique qui correspond aux touches variables, peut être située sur le plateau 20, tandis qu'une partie de la matrice logique correspondant aux touches normalisées se trouve sur la base 10 Par exemple, les emplacements de matrice du conducteur de rangée 12 a peuvent être situés physiquement dans la base et les connexions de a à 95 k entre la partie de la matrice du plateau et le reste de la matrice de la base peut être effectué à l'intérieur des connecteurs 51, 52 On comprend que la fonctionnalité de l'électronique est identique, quelle que soit la répartition des emplacements de matrices entre la base et le plateau, ou entre la base et plusieurs plateaux dans le cas o il existe plusieurs plateaux. En se référant à nouveau à la FIG 3, lorsqu'un actionneur est activé sur le plateau, par exemple lorsqu'une touche est actionnée, un commutateur 14 associé à la touche actionnée est fermé, en réalisant une liaison entre le conducteur 12 particulier de rangée et le conducteur 11 particulier de colonne reliés au commutateur 15 De même lorsqu'une touche du plateau 20 est libérée, son commutateur correspondant est ouvert, en interrompant la liaison entre le conducteur de rangée 12 et le conducteur particulier  Standardized keys like the arrow keys 22 are necessary in many programs Since it is desirable that these standardized keys are present on the keyboard in all configurations, these keys can be located on the base 10 as shown in FIGs 1 and 7 In such a case, the part of the logical matrix which corresponds to the variable keys, can be located on the plate 20, while a part of the logical matrix corresponding to the standardized keys is located on the base 10 For example, the locations of row conductor matrix 12 a can be physically located in the base and the connections from a to 95 k between the part of the matrix of the plate and the rest of the matrix of the base can be made inside the connectors 51, 52 It is understood that the functionality of the electronics is identical, whatever the distribution of the locations of dies between the base and the plate, or between the base and several trays in the case where there are several trays. Referring again to FIG 3, when an actuator is activated on the plate, for example when a key is actuated, a switch 14 associated with the actuated key is closed, by making a connection between the particular conductor 12 of row and the particular column conductor 11 connected to the switch 15 Likewise when a key on the plate 20 is released, its corresponding switch is open, interrupting the connection between the row conductor 12 and the particular conductor

de colonne il reliés au commutateur 15.  column connected to switch 15.

Un des rôles du microprocesseur 16 à la FIG 3 consiste à déterminer quand un commutateur a été ouvert ou fermé et identifier ce commutateur Pour déterminer si un commutateur particulier a été ouvert  One of the roles of microprocessor 16 in FIG 3 is to determine when a switch has been opened or closed and identify that switch To determine if a particular switch has been opened

ou fermé, le microprocesseur interroge le commutateur.  or closed, the microprocessor interrogates the switch.

Le microprocesseur 16 amène d'abord la tension du conducteur de ligne 12 correspondant à ce commutateur à passer au niveau bas, et examine ensuite la tension du conducteur de colonne Il correspondant à l'emplacement. Le microprocesseur 11 amène la tension d'un conducteur particulier de rangée à passer au niveau bas en plaçant une valeur sur ses sorties Q 2 Q 1 Q O qui sont reliées aux entrées A 2 A 1 AO respectivement, sur un  The microprocessor 16 first brings the voltage of the line conductor 12 corresponding to this switch to go low, and then examines the voltage of the column conductor II corresponding to the location. The microprocessor 11 causes the voltage of a particular row conductor to go to the low level by placing a value on its outputs Q 2 Q 1 Q O which are connected to the inputs A 2 A 1 AO respectively, on a

décodeur 13 de rangée à trois entrées et huit sorties.  row decoder 13 with three inputs and eight outputs.

En plaçant une valeur sur les sorties Q 2 Q 1 Qo du microprocesseur 16, et donc sur les entrées d'adresses A 2 A 1 Ao du décodeur 13 de rangée, on amène le décodeur 13 de rangée à activer l'une des lignes de sortie, Qon, Q 1, Q 2, Q 3, Q 4, Q 5, Q 6 ou Q 7 Chaque conducteur de rangée 12 a à 12 h est connecté à une sortie séparée parmi les sorties de données Q O à Q 7, respectivement, du décodeur de rangée 13 Par exemple, lorsque le microprocesseur 16 place 101 (en base 2) sur ses sorties d'adresse de rangée Q 2 Ql Q 0 reliées aux entrées du décodeur 13 de rangée A 2 A 1 Ao, la sortie Q 5 passe au niveau bas (parce que le décodeur couple la sortie Q 5 à la masse) et la rangée 12 f est ainsi activée alors que les autres rangées restent au niveau haut parce que les autres rangées restent au niveau haute en raison des résistances élévatrices 12 aa, 12 bb, 12 cc, 12 dd, 12 ee, 12 ff, 12 gg, et 12 hh. Le microprocesseur 16 examine la tension d'un conducteur de colonne particulier en adressant le conducteur de colonne par l'intermédiaire de son adresse sur ses sorties Q 4 Q 3 qui sont reliées aux entrées d'adresse A 1 AO, respectivement, sur le sélecteur 14 de donnée de colonne qui est un multiplexeur à quatre entrées et à 1 sortie Les entrées d'adresse A 1 AO servent de lignes de choix pour le multiplexeur Placer une adresse de colonne à une sortie Q 4 Q 3 et donc sur les entrées A 1 Ao du sélecteur 14 de donnée de colonne amène à la sortie Q reliée à l'entrée D du microprocesseur 16 à prendre une valeur identique au signal présent sur le conducteur 11 en  By placing a value on the outputs Q 2 Q 1 Qo of the microprocessor 16, and therefore on the address inputs A 2 A 1 Ao of the row decoder 13, the row decoder 13 is caused to activate one of the lines of output, Qon, Q 1, Q 2, Q 3, Q 4, Q 5, Q 6 or Q 7 Each row conductor 12 a at 12 h is connected to a separate output among the data outputs QO to Q 7, respectively , of the row decoder 13 For example, when the microprocessor 16 places 101 (on base 2) on its row address outputs Q 2 Ql Q 0 connected to the inputs of the decoder 13 of row A 2 A 1 Ao, the output Q 5 goes to low level (because the decoder couples the output Q 5 to ground) and row 12 f is thus activated while the other rows remain at high level because the other rows remain at high level due to the lifting resistors 12 aa, 12 bb, 12 cc, 12 dd, 12 ee, 12 ff, 12 gg, and 12 hh. The microprocessor 16 examines the voltage of a particular column conductor by addressing the column conductor via its address on its outputs Q 4 Q 3 which are connected to the address inputs A 1 AO, respectively, on the selector 14 of column data which is a multiplexer with four inputs and 1 output The address inputs A 1 AO serve as choice lines for the multiplexer Place a column address at an output Q 4 Q 3 and therefore on the inputs A 1 Ao of the column data selector 14 leads to the output Q connected to the input D of the microprocessor 16 to take a value identical to the signal present on the conductor 11 in

cours d'adressage de la colonne particulière.  addressing course for the particular column.

Par exemple, lorsque le microprocesseur 16 place simultanément 101 (en base 2) sur ses sorties d'adresses de rangées Q 2 Q 1 Qo et 10 (en base 2) sur ses sorties d'adresses de colonnes Q 4 Q 3, les entrées A 1 Ao d'adresses du sélecteur 14 de donnée de colonne sont 10 (en base 2), de sorte que la sortie Q du sélecteur de donnée de colonne devient identique à l'entrée D 2 du sélecteur de donnée de colonne Le microprocesseur a ainsi interrogé le commutateur à l'emplacement de matrice o le conducteur 12 f de rangée et le  For example, when the microprocessor 16 simultaneously places 101 (in base 2) on its row address outputs Q 2 Q 1 Qo and 10 (in base 2) on its column address outputs Q 4 Q 3, the inputs A 1 Ao of addresses of the column data selector 14 are 10 (in base 2), so that the output Q of the column data selector becomes identical to the input D 2 of the column data selector The microprocessor has so polled the switch at the matrix location o the row driver 12 f and the

conducteur lic sont en intersection.  lic driver are at intersection.

En se référant à nouveau à la FIG 3, un commutateur en cours d'interrogation (adressé) par le microprocesseur 16) est dans l'état fermé lorsque D 1 du microprocesseur 16 est au niveau bas et il est dans l'état ouvert lorsque D 1 du microprocesseur 16 est au niveau haut Le microprocesseur interroge tous les emplacements de matrice en plaçant successivement, sur ses sorties Q 4 Q 3 et Q 2 Ql Qo, des valeurs correspondant à chacun des emplacements de la matrice Lorsque le microprocesseur trouve que son entrée Dl pour un emplacement particulier diffère de la valeur lue lors du balayage précédent, il transmet à l'ordinateur serveur une indication de la variation, un code de balayage de touche, par l'intermédiaire de la sortie  Referring again to FIG 3, a switch being interrogated (addressed) by the microprocessor 16) is in the closed state when D 1 of the microprocessor 16 is at the low level and it is in the open state when D 1 of microprocessor 16 is high The microprocessor interrogates all the matrix locations by successively placing, on its outputs Q 4 Q 3 and Q 2 Ql Qo, values corresponding to each of the locations of the matrix When the microprocessor finds that its input Dl for a particular location differs from the value read during the previous scan, it transmits to the server computer an indication of the variation, a key scan code, via the output

sérielle 22 de clavier, ou KBD, comme détaillé ci-  keyboard serial 22, or KBD, as detailed below

dessous.below.

On comprendra que des détails comme un circuit anti-rebondissement ne sont pas représentés à la FIG. 3 La structure d'un tel circuit est bien connue dans l'art D'autres détails concernant le circuit de clavier qui sont bien connus dans l'art sont également omis afin de ne pas obscurcir la présente invention  It will be understood that details such as an anti-rebound circuit are not shown in FIG. 3 The structure of such a circuit is well known in the art Other details concerning the keyboard circuit which are well known in the art are also omitted so as not to obscure the present invention

par des détails inutiles.by unnecessary details.

Le sélecteur 14 de donnée et l'encodeur 13 de donnée peuvent être situés, soit dans la base 10, soit dans le plateau 20 Cependant, il peut être préférable de les disposer dans la base 10 afin de minimiser le nombre des composants qui doivent être contenus dans les plateaux interchangeables, et de minimiser ainsi la duplication de composants Si le sélecteur 14 de donnée et le décodeur 13 de donnée sont situés dans la base 10, les entrées de donnée du sélecteur de l'encodeur de donnée ne sont reliées aux conducteurs 11, 12 de colonne et de rangée que lorsque les connecteurs 51 et 52 concordent, c'est-à-dire lorsque le plateau 20 a été inséré dans la base 10 Dans un mode de réalisation dans lequel le plateau inclut des lumières et des moyens sonores, en réponse à l'actionnement de touches ou d'actionneurs particuliers par l'utilisateur, une électronique additionnelle des lumières et des éléments sonores est  The data selector 14 and the data encoder 13 can be located either in the base 10 or in the tray 20 However, it may be preferable to place them in the base 10 in order to minimize the number of components which must be contained in the interchangeable plates, and thus minimizing the duplication of components If the data selector 14 and the data decoder 13 are located in the base 10, the data inputs of the data encoder selector are only connected to the conductors 11, 12 of column and row only when the connectors 51 and 52 match, that is to say when the tray 20 has been inserted into the base 10 In an embodiment in which the tray includes lights and means sound, in response to the actuation of particular keys or actuators by the user, additional electronics of lights and sound elements are

incluse dans le plateau 20.included in tray 20.

En se référant encore à la FIG 3, on peut apprécier qu'un commutateur 23 peut être introduit dans la sortie sérielle 22 de clavier afin de ne permettre une communication entre le microprocesseur 16 et le processeur serveur 24 que lorsqu'un plateau est inséré dans la base 10 Selon un mode de réalisation, lorsqu'un plateau 20 est inséré dans la base 10, un bouton 72 situé dans l'évidement de la base est actionné, en fermant le commutateur 23 et en permettant une communication entre le microprocesseur 16 et le processeur serveur 24 Selon une variante du mode de réalisation, le bouton 72 n'ouvre et ne ferme pas la sortie sérielle de clavier, mais donne plutôt au microprocesseur 16 une indication de la présence ou  Referring again to FIG 3, it can be appreciated that a switch 23 can be inserted into the serial output 22 of the keyboard so as to allow communication between the microprocessor 16 and the server processor 24 only when a tray is inserted in the base 10 According to one embodiment, when a tray 20 is inserted into the base 10, a button 72 located in the recess of the base is actuated, by closing the switch 23 and allowing communication between the microprocessor 16 and the server processor 24 According to a variant of the embodiment, the button 72 does not open or close the serial keyboard output, but rather gives the microprocessor 16 an indication of the presence or

de l'absence d'un plateau dans l'évidement de la base.  the absence of a tray in the base recess.

Dans ce mode de réalisation, le microprocesseur transmet ensuite l'indication au processeur serveur 24 par l'intermédiaire de la sortie sérielle de clavier 22. Selon un mode de réalisation, le microprocesseur 16 transmet un "SCANCODE", c'est-à-dire littéralement un code de balayage, au processeur serveur 24 chaque fois qu'une variation de l'état d'un commutateur à un  In this embodiment, the microprocessor then transmits the indication to the server processor 24 via the serial keyboard output 22. According to one embodiment, the microprocessor 16 transmits a "SCANCODE", that is to say literally tell a scan code to the server processor 24 whenever a change in the state of a switch to a

emplacement d'une matrice particulier est détecté.  location of a particular matrix is detected.

SCANCODE indique l'emplacement de matrice du commutateur dont l'état a varié et la variation d'état Dans un mode de réalisation spécifique de l'invention, huit bits sont utilisés pour SCANCODE Au moins un code particulier à huit bits est réservé pour d'autres utilisations Selon une implantation possible décrite de façon plus détaillée ci-dessus, un code  SCANCODE indicates the matrix location of the switch whose state has varied and the state variation In a specific embodiment of the invention, eight bits are used for SCANCODE At least one particular eight-bit code is reserved for d 'other uses According to a possible implementation described in more detail above, a code

réservé à huit bits appelé TRAYCODEPREFIX, c'est-à-  reserved for eight bits called TRAYCODEPREFIX, that is to say

dire littéralement préfixe de code de plateau, est utilisé pour indiquer au processeur serveur que le code suivant à huit bits transmis du microprocesseur 16 au processeur serveur 24, n'est pas un SCANCODE mais un code d'identification de plateau ("TRAYCODE"), et, si le plateau est un plateau à états multiples, une indication de l'état du plateau Ainsi, dans cette implantation particulière, afin d'éviter une confusion, ni un SCANCODE ni un TRAYCODE ne peut  literally say shelf code prefix, is used to indicate to the server processor that the following eight-bit code transmitted from microprocessor 16 to server processor 24, is not a SCANCODE but a shelf identification code ("TRAYCODE") , and, if the stage is a multi-state stage, an indication of the state of the stage Thus, in this particular layout, in order to avoid confusion, neither a SCANCODE nor a TRAYCODE can

jamais prendre la valeur de TRAYCODEPREFIX.  never take the value of TRAYCODEPREFIX.

Chaque fois que le microprocesseur détecte que l'état d'un commutateur a varié, le microprocesseur 16 lit aussi les états des commutateurs d'identification 17 de plateau, c'est-à-dire le code d'identification de plateau, ou "TRAYCODE" Le TRAYCODE est transmis par le microprocesseur 16 au processeur serveur 24, qui utilise le TRAYCODE pour associer des SCANCODE à une table particulière de traduction de clavier, comme décrit plus loin Dans la variante de mode de réalisation, o le TRAYCODE est envoyé à la base 10 à partir du plateau 20 par l'intermédiaire des connecteurs 51, 52, le microprocesseur lit le TRAYCODE fourni par l'intermédiaire des connecteurs Dans le mode de réalisation o l'utilisateur dispose d'un commutateur à boîtier à double rangée de broches, ou DIP sur le plateau ou sur la base pour modifier le TRAYCODE, le microprocesseur lit le TRAYCODE qui a été placé par l'utilisateur Dans tous les cas, le TRAYCODE est lu dans l'entrée 55 du microprocesseur 16. Selon une variante de mode de réalisation, le TRAYCODE est lu par le microprocesseur 16 non seulement lorsque le microprocesseur détecte que l'état d'un commutateur a varié, mais aussi chaque fois que le processeur serveur 24 demande cette donnée Selon un autre mode de réalisation encore, le microprocesseur 16 ne lit le TRAYCODE que lorsque l'utilisateur actionne une touche particulière sur le  Whenever the microprocessor detects that the state of a switch has varied, the microprocessor 16 also reads the states of the tray identification switches 17, i.e., the tray identification code, or " TRAYCODE "The TRAYCODE is transmitted by the microprocessor 16 to the server processor 24, which uses the TRAYCODE to associate SCANCODEs with a particular keyboard translation table, as described below In the variant embodiment, where the TRAYCODE is sent to the base 10 from the plate 20 via the connectors 51, 52, the microprocessor reads the TRAYCODE supplied via the connectors In the embodiment where the user has a switch with a double row housing of pins, or DIP on the tray or on the base to modify the TRAYCODE, the microprocessor reads the TRAYCODE which has been set by the user In all cases, the TRAYCODE is read in input 55 of the microprocessor 16 According to an alternative embodiment, the TRAYCODE is read by the microprocessor 16 not only when the microprocessor detects that the state of a switch has varied, but also each time that the server processor 24 requests this data. According to another mode In another embodiment, the microprocessor 16 reads the TRAYCODE only when the user actuates a particular key on the

plateau 10 ou la base 20.tray 10 or base 20.

Pour des plateaux qui ne peuvent être que dans un seul état, le TRAYCODE peut n'être qu'un simple code d'identification de plateau Pour des plateaux qui peuvent être dans plus d'un état, le TRAYCODE peut être constitué à la fois par un code d'identification de plateau et par l'état, ou "niveau" du plateau (par exemple plusieurs bits du code peuvent être réservés  For trays which can only be in one state, the TRAYCODE can be only a simple tray identification code For trays which can be in more than one state, the TRAYCODE can be constituted at the same time by a tray identification code and by the status, or "level" of the tray (for example several bits of the code can be reserved

pour indiquer l'état du plateau).to indicate the state of the plate).

La FIG 8 est un schéma logique du processus par lequel le microprocesseur 16 détermine quand l'état d'un commutateur a varié et identifie le commutateur dont l'état a varié De base, la microprocesseur 16 détermine l'état d'un commutateur à un emplacement particulier de matrice en plaçant son "adresse de colonne" sur des sorties Q 4 Q 3 et son "adresse de rangée" sur des sorties Q 2 Ql Q 0, et en lisant ensuite l'entrée D 1 qui est l'état du commutateur En incrémentant successivement l'adresse qu'il place sur les sorties d'adresses de colonnes et de rangées (et en balayant ainsi la matrice logique), le microprocesseur 16 interroge successivement l'état de chaque commutateur de la matrice Le microprocesseur balaye de façon continue la matrice logique Lorsque le microprocesseur détermine que l'état d'un commutateur a varié, le microprocesseur 16 transmet au processeur serveur 24 l'identité du commutateur et indique si l'état du commutateur est passé de ouvert à fermé ou de fermé à ouvert Avant qu'une information de variation ne soit donnée, cependant, le microprocesseur interroge plusieurs fois l'état du commutateur pour s'assurer que la variation est stabilisée. Le microprocesseur 16 envoie au processeur serveur 24 une donnée en écrivant de façon sérielle, sur la ligne de sortie sérielle de clavier venant du microprocesseur, la donnée indiquant quelle ligne 22 est couplée à l'ordinateur 24 par le connecteur 18 Un circuit d'interface de l'appareil 24 de traitement de données dépose la donnée dans un registre de matériel ("registre de matériel de clavier") qui peut être adressé par le processeur serveur 24 Par exemple, dans un ordinateur IBM PC, le registre du matériel est typiquement situé à une adresse 60 Hex D'autre ordinateurs, comme le Apple Macintosh, utilisent différentes adresses et des mécanismes quelque peu différents qui sont connus de l'homme de l'art Le matériel du processeur serveur 24 détecte que cette donnée a été écrite dans le registre matériel de clavier et il engendre un signal d'interruption de matériel Dans l'ordinateur IBM PC, le signal d'interruption engendré est une interruption 9 de  FIG. 8 is a logic diagram of the process by which the microprocessor 16 determines when the state of a switch has varied and identifies the switch whose state has varied. Basically, the microprocessor 16 determines the state of a switch to a particular location of the matrix by placing its "column address" on outputs Q 4 Q 3 and its "row address" on outputs Q 2 Ql Q 0, and then reading the input D 1 which is the state of the switch By incrementing successively the address that it places on the outputs of column and row addresses (and thus scanning the logical matrix), the microprocessor 16 successively interrogates the state of each switch of the matrix The microprocessor scans continuously the logic matrix When the microprocessor determines that the state of a switch has varied, the microprocessor 16 transmits to the server processor 24 the identity of the switch and indicates whether the state of the switch has changed from open to iron open or closed to open Before variation information is given, however, the microprocessor interrogates the state of the switch several times to ensure that the variation is stabilized. The microprocessor 16 sends a data to the server processor 24 by writing in a serial manner, on the serial keyboard output line coming from the microprocessor, the data indicating which line 22 is coupled to the computer 24 by the connector 18 An interface circuit of the data processing apparatus 24 deposits the data in a hardware register ("keyboard hardware register") which can be addressed by the server processor 24 For example, in an IBM PC computer, the hardware register is typically located at an address 60 Hex Other computers, such as the Apple Macintosh, use different addresses and somewhat different mechanisms which are known to those skilled in the art. The hardware of the server processor 24 detects that this data has been written in the keyboard hardware register and it generates a hardware interrupt signal In the IBM PC computer, the generated interrupt signal is an interrupt 9 of

matériel En réponse à l'interruption, un sous-  hardware In response to the interruption, a sub-

programme classique de traitement d'interruption de clavier est exécuté afin de lire la donnée Un tel mécanisme de communication de donnée entre un clavier  conventional keyboard interrupt processing program is executed in order to read the data Such a data communication mechanism between a keyboard

et un processeur serveur est bien connu dans l'art.  and a server processor is well known in the art.

Plusieurs variables sont utilisées dans le processus de la FIG 8 En premier lieu, SWITCH, c'est-à-dire littéralement commutateur, est une variable qui indique le commutateur qui est actuellement en cours d'interrogation Les trois bits de poids faible de SWITCH adressent la rangée, et les deux bits de poids fort de SWITCH adressent les  Several variables are used in the process of FIG 8 First, SWITCH, that is to say literally switch, is a variable which indicates the switch which is currently being interrogated The three least significant bits of SWITCH address the row, and the two most significant bits of SWITCH address the

colonnes comme décrit plus haut Last State, c'est-à-  columns as described above Last State, i.e.

dire littéralement dernier état, est un réseau maintenu dans la mémoire adressée par le microprocesseur 16, comprenant un élément pour chaque commutateur, et utilisé pour se souvenir d'un état initial pour chaque commutateur Counter, c'est-à- dire littéralement compteur, est utilisé pour se souvenir du nombre de fois o un commutateur particulier a été interrogé dans le processus d'assurance de la  literally say last state, is a network maintained in the memory addressed by the microprocessor 16, comprising an element for each switch, and used to remember an initial state for each switch Counter, that is to say literally counter, is used to remember the number of times a particular switch has been polled in the assurance process.

stabilité d'une variation d'état.stability of a state variation.

En se référant encore à la FIG 8, à l'étape 803, le microprocesseur lance chaque élément de Last State pour "ouvrir" et lance aussi Counter à zéro Le lancement de l'étape 803 ne se produit que lors de la mise en marche et lorsqu'un nouveau plateau est placé sur l'unité de base L'étape 805 lance une boucle d'ensemble pour vérifier successivement le commutateur à chaque emplacement A l'étape 807, le microprocesseur interroge l'état du commutateur à  Referring again to FIG 8, in step 803, the microprocessor launches each element of Last State to "open" and also launches Counter to zero The launch of step 803 only occurs during start-up and when a new tray is placed on the base unit Step 805 initiates an assembly loop to successively check the switch at each location In step 807, the microprocessor interrogates the state of the switch at

l'emplacement de la matrice indiqué par SWITCH.  the location of the matrix indicated by SWITCH.

L'interrogation est effectuée en plaçant la valeur SWITCH sur les sorties d'adresses Q 4 Q 3 Q 2 Ql QO et en inspectant leur niveau résultant de D 1, comme décrit plus haut Le niveau résultant de Dl est appelé TEST (SWITCH), c'est-à-dire littéralement ESSAI DE (COMMUTATEUR), et il est assigné à un STATE variable, c'est-à-dire littéralement un état variable Puis, à l'étape 809, le microprocesseur 16 vérifie si l'état du commutateur a varié depuis la dernière fois o il a  The interrogation is carried out by placing the value SWITCH on the address outputs Q 4 Q 3 Q 2 Ql QO and by inspecting their level resulting from D 1, as described above. The level resulting from Dl is called TEST (SWITCH), that is to say literally TEST OF (SWITCH), and it is assigned to a variable STATE, that is to say literally a variable state Then, in step 809, the microprocessor 16 checks whether the state of the switch has varied since the last time it was

été vérifié en comparant STATE à Last Switch(SWITCH).  was verified by comparing STATE to Last Switch (SWITCH).

Si l'état du commutateur n'a pas varié, le microprocesseur restaureCOUNTER à zéro à l'étape 810 et le microprocesseur incrémente ensuite SWITCH à l'étape 815, de façon qu'un autre commutateur soit interrogé à l'étape 807 S'il s'est produit une variation de l'état du commutateur à l'emplacement SWITCH, le microprocesseur 17 vérifie aux étapes 811 et 813 que la variation d'état du commutateur reste la même pendant le nombre de fois particulier indiqué par une variable STABLE Par exemple, si STABLE = 3, les étapes 811 et 813 vérifient que la variation de l'état du commutateur reste la même pendant trois lectures consécutives de ce dernier Si l'état est stable, le microprocesseur 16 relance à l'étape 835 Last State(SWITCH) et COUNTER Puis, à l'étape 837 le microprocesseur 16 transmet le TRAYCODEPREFIX sur la sortie sérielle de clavier 22 et il transmet à l'étape 839 le TRAYCODE pour le plateau qui contient l'actionneur dont l'activation a provoqué la variation d'état du commutateur Puis, le microprocesseur 16 transmet à l'étape 841 sur la sortie sérielle de clavier 22 le code de balayage de l'état du commutateur dont l'état a varié, en même temps que l'adresse du commutateur L'état et l'adresse spécifient ensemble le code de balayage de l'actionneur Puis, la variable SWITCH est incrémentée à l'étape 815 Le microprocesseur 16 détermine à l'étape 817 si la variable SWITCH a été incrémentée pour correspondre à tous les emplacements de commutateurs pendant un balayage des emplacements de matrice Si tous les emplacements ont été balayés, le traitement passe à l'étape 805 pour commencer un autre balayage, alors que le traitement continue dans le cas contraire vers un emplacement d'adresse suivant de la  If the state of the switch has not changed, the microprocessor restores COUNTER to zero in step 810 and the microprocessor then increments SWITCH in step 815, so that another switch is interrogated in step 807 S ' there has been a change in the state of the switch at the SWITCH location, the microprocessor 17 checks in steps 811 and 813 that the change in state of the switch remains the same for the particular number of times indicated by a variable STABLE For example, if STABLE = 3, steps 811 and 813 verify that the variation of the state of the switch remains the same during three consecutive readings of the latter If the state is stable, the microprocessor 16 restarts at step 835 Last State (SWITCH) and COUNTER Then, in step 837 the microprocessor 16 transmits the TRAYCODEPREFIX on the serial keyboard output 22 and it transmits in step 839 the TRAYCODE for the tray which contains the actuator whose activation caused the varia state of the switch Then, the microprocessor 16 transmits at step 841 on the serial keyboard output 22 the code for scanning the state of the switch, the state of which has varied, together with the address of the switch The state and address together specify the actuator scan code. Then, the SWITCH variable is incremented in step 815. The microprocessor 16 determines in step 817 whether the SWITCH variable has been incremented to correspond to all of the switch locations during a scan of the array locations If all of the locations have been scanned, processing proceeds to step 805 to begin another scan, while processing continues otherwise to a next address location in the

matrice en passant à l'étape 807.matrix going to step 807.

On va maintenant décrire la mise en marche d'un sous-programme qui fonctionne sur l'ordinateur serveur  We will now describe the start-up of a subroutine that works on the server computer.

pour rentre des données à partir du clavier.  to enter data from the keyboard.

Selon un mode de réalisation possible, un manipulateur normalisé d'interruption de clavier (réalisé par exemple, dans le cas d'un IBM PC, par d'un système d'exploitation dans le système d'entrée/sortie binaire de la mémoire morte, ou ROM BIOS), est remplacé par un autre programme qui peut reconnaître et décoder les codes de balayage produits par un clavier à configuration modifiable Dans le cas d'un IBM PC, un programme qui a remplacé un manipulateur d'interruption est appelé dans l'art un programme terminate and stay resident ou TSR, littéralement: terminer et rester résident Un programme TSR est réglé de manière à être actionné lors de l'apparition de l'interruption qui aurait actionné le programme qu'il a remplacé En d'autres termes, le programme TSR est exécuté, en réponse à une interruption de matériel (interruption de matériel 9 sur un IBM PC) qui se produit chaque fois qu'une donnée est écrite par le microprocesseur 16 au registre de matériel du clavier du processeur serveur 24 Dans le mode de réalisation décrit ici, l'exécution du sous programme d'interruption dépose dans un tampon de clavier de l'appareil de traitement de données (pour l'IBM PC, cette adresse est typiquement une adresse 480 Hex) un message correspondant au commutateur dont l'état a varié Un message est typiquement une chaîne de caractères, mais ce peut être également, par exemple, des entiers, ou des nombres à virgule flottante Lorsqu'un message est plus grand que le registre de matériel de clavier, il peut exiger plusieurs écritures, par le microprocesseur 16 au registre 24 de matériel de  According to one possible embodiment, a standardized keyboard interrupt manipulator (produced for example, in the case of an IBM PC, by an operating system in the binary I / O system of the read only memory , or ROM BIOS), is replaced by another program which can recognize and decode the scanning codes produced by a keyboard with modifiable configuration In the case of an IBM PC, a program which replaced an interrupt handler is called in art a terminate and stay resident or TSR program, literally: terminate and stay resident A TSR program is set so as to be activated when the interruption occurs which would have activated the program which it replaced other words, the TSR program is executed, in response to a hardware interrupt (hardware interrupt 9 on an IBM PC) which occurs each time a data item is written by the microprocessor 16 to the hardware register of the server processor keyboard 24 In the embodiment described here, the execution of the interrupt subroutine deposits in a keyboard buffer of the data processing device (for the IBM PC, this address is typically an address 480 Hex) a message corresponding to the switch whose state has varied A message is typically a character string, but it can also be, for example, integers, or floating point numbers When a message is larger than the register keyboard hardware, it may require multiple writes, by microprocessor 16 to register 24 of hardware

clavier et un nombre égal d'exécutions de sous-  keyboard and an equal number of sub- executions

programme d'interruption pour transmettre et recevoir le message complet Un programme d'applications exécutant sur l'appareil 24 de traitement de données serveur peut ensuite restituer le message à partir du  interrupt program for transmitting and receiving the complete message An application program executing on the server data processing apparatus 24 can then play the message from the

tampon de clavier.keyboard pad.

La FIG 4 représente un schéma logique du fonctionnement du programme TSR selon un mode de réalisation possible Dans ce mode de réalisation, lorsque le sous-programme d'interruption est installé en premier lieu dans la mémoire de l'appareil 24 de traitement de données (habituellement à la mise en marche de l'appareil de traitement de données serveur), deux drapeaux variables TRAYCODEIN et TABLE-IN, c'est-à-dire littéralement code de plateau  FIG. 4 represents a logic diagram of the operation of the TSR program according to a possible embodiment. In this embodiment, when the interrupt subroutine is first installed in the memory of the data processing apparatus 24 ( usually when switching on the server data processing device), two variable flags TRAYCODEIN and TABLE-IN, i.e. literally table code

entré et tableau entré, sont placés à "faux".  entered and table entered, are set to "false".

TRAYCODEIN indique si la donnée qui se trouve dans le  TRAYCODEIN indicates whether the data found in the

registre de matériel de clavier est un TRAYCODE.  keyboard hardware register is a TRAYCODE.

TABLEIN indique si une table de traduction appropriée  TABLEIN indicates whether an appropriate translation table

d'un plateau dans la base a ou non été chargée.  a tray in the base may or may not have been loaded.

* Le sous-programme commence à l'étape 401 chaque fois qu'il se produit une interruption de matériel, c'est-à-dire chaque fois que le microprocesseur 16 envoie une donnée au processeur serveur 24 sur la sortie sérielle de clavier 22 A l'étape 403, le microprocesseur 16 lit la donnée du registre de matériel de clavier en une variable DATA, c'est-à-dire littéralement donnée Puis, à l'étape 405, l'état actuel du drapeau TRAYCODEIN est vérifié Si la* The subroutine starts at step 401 each time there is a hardware interruption, that is to say each time that the microprocessor 16 sends data to the server processor 24 on the serial keyboard output 22 In step 403, the microprocessor 16 reads the data from the keyboard hardware register into a variable DATA, that is to say literally given Then, in step 405, the current state of the TRAYCODEIN flag is checked If the

donnée est un code de plateau, il faut que le sous-  given is a tray code, the sub-

programme charge dans la table de traduction appropriée Ceci est effectué aux étapes 409 à 421 A l'étape 409, la validité du TRAYCODE est vérifiée Une erreur est placée à l'étape 411 si le TRAYCODE n'est pas valide, et le programme TSR se termine à l'étape 451 Si DATA contient un code de plateau valide à l'étape 409, le microprocesseur vérifie à l'étape 413 TABLEIN pour voir si une table de traduction est déjà chargée Dans le cas contraire, la table de traduction de ce TRAYCODE est chargée à l'étape 417 et TABLEIN est placé à "vrai" à l'étape 419 Si TABLEIN indique à l'étape 413 qu'une table de traduction est déjà chargée, la table chargée est vérifiée pour voir s'il s'agit de la table correcte pour TRAYCODE Si elle n'est pas correcte, une nouvelle table est chargée à l'étape 417 Dans le cas contraire, le chargement de la table est sauté Puis, TRAYCODE est placé à "faux" à l'étape 421 et l'exécution du sous-programme est  program loaded in the appropriate translation table This is done in steps 409 to 421 In step 409, the validity of the TRAYCODE is checked An error is placed in step 411 if the TRAYCODE is not valid, and the TSR program ends at step 451 If DATA contains a valid tray code at step 409, the microprocessor checks at step 413 TABLE to see if a translation table is already loaded Otherwise, the translation table of this TRAYCODE is loaded in step 417 and TABLEIN is set to "true" in step 419 If TABLEIN indicates in step 413 that a translation table is already loaded, the loaded table is checked to see if it this is the correct table for TRAYCODE If it is not correct, a new table is loaded in step 417 Otherwise, the loading of the table is skipped Then, TRAYCODE is set to "false" at l step 421 and the execution of the subroutine is

terminée à l'étape 451.completed at step 451.

S'il est déterminé à l'étape 405 que DATA ne contient pas de code de plateau valide, DATA est vérifié à l'étape 429 pour déterminer s'il s'agit d'un TRAYCODEPREFIX Si DATA est un TRAYCODEPREFIX, la donnée suivante reçue est un TRAYCODE Dans ce cas,  If it is determined in step 405 that DATA does not contain a valid shelf code, DATA is checked in step 429 to determine if it is a TRAYCODEPREFIX If DATA is a TRAYCODEPREFIX, the following data received is a TRAYCODE In this case,

TRAYCODE_IN est placé à vrai à l'étape 431 et le sous-  TRAYCODE_IN is set to true at step 431 and the sub-

programme se termine à l'étape 451 S'il est déterminé à l'étape 429 que DATA n'est pas un TRAYCODEPREFIX, l'état de TABLEIN est vérifié à l'étape 433 Si TABLEIN est faux à l'étape 433, ce qui indique que la table de traduction de clavier appropriée n'a pas été chargée dans la mémoire, une erreur est placée à  program ends in step 451 If it is determined in step 429 that DATA is not a TRAYCODEPREFIX, the state of TABLEIN is checked in step 433 If TABLEIN is false in step 433, this which indicates that the appropriate keyboard translation table has not been loaded into memory, an error is placed at

l'étape 435 et le programme se termine à l'étape 451.  step 435 and the program ends in step 451.

Si TABLEIN est vrai à l'étape 433, la DATA actuelle est un code de balayage de la table associée qui est dans la mémoire, et le microprocesseur traduit le code de balayage en utilisant la table de traduction de clavier située dans la mémoire A l'étape 437, le résultat est en outre écrit dans le tampon de clavier  If TABLEIN is true in step 433, the current DATA is a scan code of the associated table which is in the memory, and the microprocessor translates the scan code using the keyboard translation table located in the memory A l step 437, the result is also written to the keyboard buffer

du processeur serveur 24 L'exécution du sous-  of the server processor 24 The execution of the sub-

programme se termine ensuite à l'étape 451.  program then ends at step 451.

A chaque TRAYCODE est associée une table différente de traduction de clavier Chaque entrée dans une table de traduction de clavier associe un code de balayage à un message à envoyer à un dispositif de sortie, par exemple un affichage, ou un dispositif de mémoire, comme un tampon de clavier auquel accède un programme d'applications La FIG 6 représente l'organisation d'une table de traduction de clavier selon un mode de réalisation possible de la présente invention Le message associé à un SCANCODE est trouvé en localisant d'abord le SCANCODE dans la colonne désignée par 91 Le message associé est le message de la colonne désignée par 92 et dans la même rangée que le SCANCODE Par exemple, à la FIG 6, le  Each TRAYCODE is associated with a different keyboard translation table Each entry in a keyboard translation table associates a scanning code with a message to be sent to an output device, for example a display, or a memory device, such as a keyboard buffer accessed by an application program FIG 6 represents the organization of a keyboard translation table according to a possible embodiment of the present invention The message associated with a SCANCODE is found by first locating the SCANCODE in the column designated by 91 The associated message is the message in the column designated by 92 and in the same row as the SCANCODE For example, in FIG 6, the

nombre 3,14159 est associé au code de touche " 00011 ".  number 3.14159 is associated with the key code "00011".

Dans le mode de réalisation o certains des plateaux sont construits spécialement pour supporter un logiciel d'application existant, par exemple le simulateur de vol Microsoft cité précédemment, une table de traduction d'une application particulière serait chargée pour ce TRAYCODE Un jeu de tables de traduction pour des applications largement répandues peut être incorporé dans le système de clavier en attendant que des plateaux futurs spécifiques aux applications soient disponibles, ou bien la table de traduction spéciale peut être chargée comme gestionnaire pilote, ou "driver" selon l'expression anglo- saxonne, de logiciel par un utilisateur lorsqu'il installe en premier lieu un nouveau plateau  In the embodiment where some of the platforms are specially built to support existing application software, for example the Microsoft flight simulator mentioned above, a translation table of a particular application would be loaded for this TRAYCODE A set of tables of translation for widely used applications can be incorporated into the keyboard system while waiting for future application-specific trays to become available, or the special translation table can be loaded as a driver, or "driver" Saxon, of software by a user when he first installs a new tray

spécifique à une application.specific to an application.

Selon un autre mode de réalisation possible, on peut prévoir un utilitaire pour permettre aux utilisateurs de réaliser leur propres tables de traduction. Selon un autre mode de réalisation possible, le microprocesseur 16 interpréterait le SCANCODE pour vérifier certaines touches spéciales Si le microprocesseur 16 détecte que l'utilisateur a actionné l'une de ces touches spéciales, une ligne d'ordre complète correspondant à cette touche est  According to another possible embodiment, a utility can be provided to allow users to create their own translation tables. According to another possible embodiment, the microprocessor 16 would interpret the SCANCODE to check certain special keys If the microprocessor 16 detects that the user has pressed one of these special keys, a complete command line corresponding to this key is

envoyée à l'ordinateur serveur 24.  sent to the server computer 24.

Claims (30)

REVENDICATIONS 1 Système de clavier à configuration modifiable destiné à un appareil ( 24) de traitement de données, caractérisé en ce qu'il comprend: a une base ( 10)servant à accepter un ou plusieurs plateaux ( 20) d'une série et à transmettre des données audit appareil ( 24) de traitement de données; b un plateau ( 20) pourvu d'une série d'actionneurs et de commutateurs ( 15), chaque actionneur étant associé à un ou plusieurs commutateurs ( 15), chaque commutateur ( 15) étant dans un état choisi parmi plusieurs, ledit plateau ( 20) étant en outre pourvu de moyens de spécification ( 21) d'un code d'identification de plateau ( 20) indiquant l'identité dudit plateau ( 20), ladite base ( 10) étant pourvue de moyens servant à recevoir dudit plateau ( 20) ledit code d'identification de plateau  1 keyboard system with modifiable configuration intended for an apparatus (24) for data processing, characterized in that it comprises: has a base (10) serving to accept one or more trays (20) of a series and to transmit data to said data processing apparatus (24); b a plate (20) provided with a series of actuators and switches (15), each actuator being associated with one or more switches (15), each switch (15) being in a state chosen from among several, said plate ( 20) being further provided with specification means (21) of a tray identification code (20) indicating the identity of said tray (20), said base (10) being provided with means serving to receive said tray ( 20) said tray identification code ( 20);(20); c un moyen de production d'un code de balayage indiquant l'identité et l'état d'un commutateur ( 15) dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur ( 15); et d un moyen de couplage ( 51, 52) dudit système de clavier audit appareil ( 24) de traitement de données, ledit moyen de couplage ( 51, 52) envoyant ledit code d'identification de plateau ( 20) et lesdits codes de  c means for producing a scan code indicating the identity and the state of a switch (15) whose state has varied, at least one scan code being associated with each switch (15); and means for coupling (51, 52) of said keyboard system to said data processing apparatus (24), said coupling means (51, 52) sending said tray identification code (20) and said codes balayage par un trajet unique de données.  single data path scanning. 2 Système selon la revendication 1, caractérisé en ce que: le moyen de spécification ( 21) d'un code d'identification de plateau ( 20) comprend en outre un moyen de transmission, situé sur ledit plateau ( 20), d'un code d'identification de plateau ( 20) à ladite  2 System according to claim 1, characterized in that: the means for specifying (21) a tray identification code (20) further comprises a transmission means, located on said tray (20), of a tray identification code (20) to said base ( 10).base (10). 3 Système selon la revendication 1, caractérisé en ce que il comprend en outre, dans l'appareil ( 24) de traitement de données, un moyen d'association, à une combinaison particulière d'un code de balayage et d'un code d'identification de plateau ( 20), d'une chaîne  3 System according to claim 1, characterized in that it further comprises, in the apparatus (24) for data processing, a means of association, with a particular combination of a scanning code and a code d tray identification (20), of a chain d'un ou plusieurs caractères.one or more characters. 4 Système selon la revendication 1, caractérisé en ce que: ladite base ( 10) inclut en outre a une série d'actionneurs et de commutateurs ( 15), chaque commutateur ( 15) étant dans un état parmi plusieurs; et b un moyen de production d'un code de balayage afin d'indiquer l'identité et l'état d'un commutateur ( 15) dont l'état a varié, au moins un code de balayage  4 System according to claim 1, characterized in that: said base (10) further includes a series of actuators and switches (15), each switch (15) being in one of several states; and b means for producing a scan code in order to indicate the identity and the state of a switch (15) whose state has varied, at least one scan code étant associé à chaque commutateur ( 15).  being associated with each switch (15). Système selon la revendication 4 caractérisé en ce que: au moins l'un desdits commutateurs ( 15) de ladite base ( 10) et dudit plateau ( 20) indique un état particulier et ledit état particulier est envoyé par ledit moyen audit appareil ( 24) de traitement de données en vue  System according to claim 4 characterized in that: at least one of said switches (15) of said base (10) and of said plate (20) indicates a particular state and said particular state is sent by said means to said apparatus (24) data processing with a view d'un couplage.of a coupling. 6 Système selon la revendication 1, caractérisé en ce que: le moyen de spécification ( 21) dudit code d'identification de plateau ( 20), présent dans chaque plateau ( 20), consiste en une série de saillies ( 21) sur ledit plateau ( 20) et le moyen de réception, dans ladite base ( 10), dudit code d'identification de plateau ( 20) consiste en une série de commutateurs ( 15) d'identification de plateau ( 20), un commutateur ( 15) d'identification de plateau ( 20) étant activé par une saillie d'identification ( 21) de plateau ( 20) lorsque ladite base ( 10) a  6 System according to claim 1, characterized in that: the means for specifying (21) said tray identification code (20), present in each tray (20), consists of a series of projections (21) on said tray (20) and the means for receiving, in said base (10), said tray identification code (20) consists of a series of switches (15) for tray identification (20), a switch (15) d tray identification (20) being activated by a tray identification projection (21) (20) when said base (10) has accepté ledit plateau ( 20).accepted said tray (20). 7 Système selon la revendication 1, caractérisé en ce que: il comprend en outre un moyen de production d'un code particulier non identifié à un commutateur ( 15) dudit plateau ( 20), ledit code particulier indiquant la présence d'un code d'identification de plateau  7 System according to claim 1, characterized in that: it further comprises means for producing a particular code not identified at a switch (15) of said plate (20), said particular code indicating the presence of a code d tray identification ( 20).(20). 8 Système selon la revendication 7, caractérisé en ce que: ledit code particulier indique la présence dudit code d'identification de plateau ( 20) parce qu'il possède une relation prédéterminée dans le temps avec  8 System according to claim 7, characterized in that: said particular code indicates the presence of said tray identification code (20) because it has a predetermined relationship over time with ledit code d'identification de plateau ( 20).  said tray identification code (20). 9 Système selon la revendication 8, caractérisé en ce que ladite relation prédéterminée comprend le fait que ledit code particulier précède ledit code d'identification de plateau ( 20) et ledit code particulier est transmis par ledit moyen de couplage ( 51, 52) avant la transmission, par ledit moyen de couplage ( 51, 52), dudit code  9 System according to claim 8, characterized in that said predetermined relationship comprises the fact that said particular code precedes said tray identification code (20) and said particular code is transmitted by said coupling means (51, 52) before the transmission, by said coupling means (51, 52), of said code d'identification de plateau ( 20).tray identification (20). Système selon la revendication 8, caractérisé en ce que ladite relation prédéterminée comprend le fait que ledit code particulier suit le code d'identification de plateau ( 20) et ledit code particulier est transmis par ledit moyen de couplage ( 51, 52) après la transmission, par ledit moyen de couplage ( 51, 52), du code  System according to claim 8, characterized in that said predetermined relationship comprises the fact that said particular code follows the tray identification code (20) and said particular code is transmitted by said coupling means (51, 52) after transmission , by said coupling means (51, 52), of the code d'identification de plateau ( 20).tray identification (20). 11 Système selon la revendication 1, caractérisé en ce que il est associé à au moins un commutateur ( 15) dudit plateau ( 20) une série de codes spécifiant un état dudit plateau ( 20). 12 Système selon la revendication il, caractérisé en ce que ledit commutateur ( 15) au moins unique indique un état particulier et ledit état particulier est envoyé par ledit moyen de couplage ( 51, 52) audit moyen de traitement de données. 13 Système selon la revendication 1, caractérisé en ce que pour un plateau ( 20) particulier, ledit plateau ( 20) particulier comprend en outre un moyen de production d'un premier code d'une série de codes d'identification de plateau ( 20) d'une manière telle que ledit plateau ( 20) particulier peut produire un code quelconque de ladite série de codes  11 System according to claim 1, characterized in that it is associated with at least one switch (15) of said plate (20) a series of codes specifying a state of said plate (20). 12 System according to claim 11, characterized in that said at least one switch (15) indicates a particular state and said particular state is sent by said coupling means (51, 52) to said data processing means. 13 System according to claim 1, characterized in that for a particular tray (20), said particular tray (20) further comprises means for producing a first code of a series of tray identification codes (20 ) in such a way that said particular plate (20) can produce any code from said series of codes d'identification de plateau ( 20).tray identification (20). 14 Système selon la revendication 13, caractérisé en ce que un utilisateur dudit système spécifie ledit premier code d'une série de codes d'identification de plateau ( 20) afin de placer ainsi ledit plateau ( 20)  14 System according to claim 13, characterized in that a user of said system specifies said first code of a series of tray identification codes (20) in order to thus place said tray (20) dans l'un des états de la série.in one of the states of the series. Système selon la revendication 1, caractérisé en ce que il comprend en outre un moyen de produire un éclairage lors de l'activation d'un ou plusieurs actionneurs. 16 Système selon la revendication 1, caractérisé en ce que il comprend un moyen de production d'un bruit lors de l'actionnement d'un ou plusieurs desdits actionneurs. 17 Système selon la revendication 1, caractérisé en ce que ledit code d'identification de plateau ( 20) comprend un ou plusieurs sous-codes indépendants, le sous-code ou chacun d'eux étant déterminé par un état d'un circuit séparé, ledit circuit étant susceptible  System according to claim 1, characterized in that it further comprises means for producing lighting when one or more actuators are activated. 16 System according to claim 1, characterized in that it comprises a means of producing a noise during the actuation of one or more of said actuators. 17 System according to claim 1, characterized in that said tray identification code (20) comprises one or more independent sub-codes, the sub-code or each of them being determined by a state of a separate circuit, said circuit being susceptible d'être dans un état parmi plusieurs.  to be in one of several states. 18 Système selon la revendication 17, caractérisé en ce que les états desdits circuits peuvent être choisis indépendamment. 19 Système selon la revendication 1, caractérisé en ce que les états d'un ou plusieurs desdits commutateurs ( 15) sont modifiés en actionnant lesdits actionneurs  18 System according to claim 17, characterized in that the states of said circuits can be chosen independently. 19 System according to claim 1, characterized in that the states of one or more of said switches (15) are modified by actuating said actuators associés auxdits commutateurs ( 15).  associated with said switches (15). 20 Système selon la revendication 1, caractérisé en ce que les états d'un ou plusieurs desdits commutateurs ( 15) sont modifiés par un coulissement ( 29) desdits  20 System according to claim 1, characterized in that the states of one or more of said switches (15) are modified by a sliding (29) of said actionneurs associés auxdits commutateurs ( 15).  actuators associated with said switches (15). 21 Système selon la revendication 1, caractérisé en ce que les états d'un ou plusieurs desdits commutateurs ( 15) sont modifiés par une rotation ( 27) desdits  21 System according to claim 1, characterized in that the states of one or more of said switches (15) are modified by a rotation (27) of said actionneurs associés auxdits commutateurs ( 15).  actuators associated with said switches (15). 22 Système selon la revendication 1, caractérisé en ce que les états d'un ou plusieurs des commutateurs ( 15) sont modifiés en serrant lesdits actionneurs associés  22 System according to claim 1, characterized in that the states of one or more of the switches (15) are modified by tightening said associated actuators auxdits commutateurs ( 15).to said switches (15). 23 Système selon la revendication 1, caractérisé en ce que chaque actionneur de ladite série peut être d'une ou plusieurs configurations, d'une ou plusieurs  23 System according to claim 1, characterized in that each actuator of said series can be of one or more configurations, of one or more couleurs, et d'une ou plusieurs textures.  colors, and one or more textures. 24 Système selon la revendication 1, caractérisé en ce que il comprend en outre un moyen d'association d'un  24 System according to claim 1, characterized in that it further comprises a means of association of a message particulier à un code de balayage particulier.  particular message to a particular scan code. Système selon la revendication 24, caractérisé en ce que ledit moyen d'association comprend une table mémorisée dans la mémoire dudit appareil ( 24) de traitement de données et, ladite table produit une traduction, dudit code de balayage particulier, qui forme ledit message  System according to claim 24, characterized in that said association means comprises a table stored in the memory of said data processing apparatus (24) and, said table produces a translation, of said particular scanning code, which forms said message particulier.particular. 26 Système selon la revendication 25, caractérisé en ce que ledit appareil ( 24) de traitement de données affiche ledit message particulier après ladite  26 System according to claim 25, characterized in that said data processing apparatus (24) displays said particular message after said traduction.translation. 27 Système selon la revendication 24, caractérisé en ce que ledit moyen d'association détermine ledit message particulier par une combinaison dudit code de balayage particulier et de ladite identification de plateau  27 System according to claim 24, characterized in that said association means determines said particular message by a combination of said particular scanning code and said platform identification. ( 20).(20). 28 Système selon la revendication 1, caractérisé en ce que il comprend en outre un ou plusieurs plateaux ( 20) additionnels, chacun desdits plateaux ( 20) additionnels étant pourvu d'une série d'actionneurs et de commutateurs ( 15), chaque actionneur étant associé à un ou plusieurs commutateurs ( 15), chaque commutateur ( 15) étant dans un état d'une série, chacun desdits plateaux ( 20) additionnels comprenant des moyens de spécification ( 21) d'un code d'identification de plateau ( 20) indiquant l'identité dudit plateau ( 20), ladite base ( 10) étant pourvue de moyens de réception, à partir dudit plateau ( 20),  28 System according to claim 1, characterized in that it further comprises one or more additional plates (20), each of said additional plates (20) being provided with a series of actuators and switches (15), each actuator being associated with one or more switches (15), each switch (15) being in a state of a series, each of said additional plates (20) comprising means for specifying (21) a plate identification code (20 ) indicating the identity of said tray (20), said base (10) being provided with receiving means, from said tray (20), dudit code d'identification de plateau ( 20).  said tray identification code (20). 29 Système selon la revendication 1, caractérisé en ce que ledit plateau ( 20) comprend en outre un moyen de spécification d'un emplacement X-Y à utiliser par  29 System according to claim 1, characterized in that said plate (20) further comprises means for specifying an X-Y location to be used by ledit appareil ( 24) de traitement de données.  said data processing apparatus (24). 30 Système selon la revendication 29, caractérisé en ce que ledit moyen de spécification comprend un panneau  30 System according to claim 29, characterized in that said specification means comprises a panel à touches.with keys. 31 Système selon la revendication 1, caractérisé en ce que au moins l'un desdits actionneurs de ladite série d'actionneurs peut être activé d'au moins une première manière et une deuxième manière, et ladite première manière comprend une manière consistant à serrer, tourner ( 27), appuyer ou faire glisser ( 29), et ladite deuxième manière comprend une manière différente consistant à serrer, tourner ( 27),  31 System according to claim 1, characterized in that at least one of said actuators of said series of actuators can be activated in at least a first way and a second way, and said first way comprises a way consisting in tightening, turn (27), press or slide (29), and said second way includes a different way of tightening, turning (27), appuyer ou faire glisser ( 29).press or slide (29). 32 Système selon la revendication 31, caractérisé en ce que une activation selon une première manière produit un premier code de balayage et une activation selon une deuxième manière produit un deuxième code de balayage. 33 Système selon la revendication 1, caractérisé en ce que ledit plateau ( 20) est configuré de façon à fonctionner selon un programme particulier d'ordinateur qui est exécuté sur ledit appareil ( 24)  32 System according to claim 31, characterized in that an activation in a first way produces a first scan code and an activation in a second way produces a second scan code. 33 System according to claim 1, characterized in that said tray (20) is configured so as to operate according to a particular computer program which is executed on said device (24) de traitement de données.data processing. 34 Système selon la revendication 33, caractérisé en ce que au moins certains desdits actionneurs dudit plateau ( 20) sont conçus mécaniquement de manière à fonctionner avec ledit programme particulier. Système selon la revendication 1, caractérisé en ce que ledit code d'identification de plateau ( 20) est envoyé par ledit système de clavier audit appareil ( 24) de traitement de données en réponse à une demande  34 System according to claim 33, characterized in that at least some of said actuators of said plate (20) are designed mechanically so as to operate with said particular program. System according to claim 1, characterized in that said tray identification code (20) is sent by said keyboard system to said data processing apparatus (24) in response to a request dudit appareil ( 24) de traitement de données.  said data processing apparatus (24). 36 Système selon la revendication 1, caractérisé en ce que ledit moyen de spécification ( 21), inclus dans chaque plateau ( 20), du code d'identification de plateau ( 20) comprend des liaisons électriques produisant une valeur de signal représentative dudit code d'identification de plateau ( 20) et ledit moyen récepteur comprend, dans ladite base ( 10), des liaisons électriques correspondantes pour  36 System according to claim 1, characterized in that said means for specifying (21), included in each tray (20), the tray identification code (20) comprises electrical connections producing a signal value representative of said code d tray identification (20) and said receiving means comprises, in said base (10), corresponding electrical connections for recevoir ladite valeur de signal.receive said signal value. 37 Système selon la revendication 1, caractérisé en ce que ledit plateau ( 20) est un premier plateau ( 20) et le système comprend en outre un deuxième plateau ( 20), ladite base ( 10) accepte simultanément ledit premier plateau ( 20) et ledit deuxième plateau ( 20), ledit premier plateau ( 20) et ledit deuxième plateau ( 20) forment ensemble une matrice logique de commutateurs ( 15) desdits deux plateaux ( 20), et ledit premier plateau ( 20) envoie un premier code d'identification de plateau ( 20) et le deuxième plateau ( 20) inclut un moyen de spécification ( 21) d'un deuxième code d'identification de plateau ( 20) qui est combiné audit premier code d'identification de plateau ( 20) afin d'envoyer un code unique d'identification de plateau ( 20) par ledit trajet  37 System according to claim 1, characterized in that said plate (20) is a first plate (20) and the system further comprises a second plate (20), said base (10) simultaneously accepts said first plate (20) and said second plate (20), said first plate (20) and said second plate (20) together form a logic matrix of switches (15) of said two plates (20), and said first plate (20) sends a first code of tray identification (20) and the second tray (20) includes means for specifying (21) a second tray identification code (20) which is combined with said first tray identification code (20) to provide '' send a unique tray identification code (20) by said route unique de données.unique data. 38 Système selon la revendication 1, caractérisé en ce que les états d'un ou plusieurs commutateurs ( 15) sont modifiés en réponse à des signaux vocaux d'un utilisateur, 39 Système selon la revendication 1, caractérisé en ce que un ou plusieurs des commutateurs ( 15) sont  38 System according to Claim 1, characterized in that the states of one or more switches (15) are modified in response to voice signals from a user, 39 System according to Claim 1, characterized in that one or more of the switches (15) are actionnés par la lumière.operated by light. Système selon la revendication 39, caractérisé en ce que les états de l'un desdits commutateurs ( 15) qui sont actionnés par la lumière sont modifiés en empêchant une lumière d'atteindre un capteur de  System according to claim 39, characterized in that the states of one of said switches (15) which are actuated by light are modified by preventing light from reaching a sensor. l'actionneur associé à l'un desdits commutateurs ( 15).  the actuator associated with one of said switches (15). 41 Système à clavier à configuration modifiable destiné à un appareil ( 24) de traitement de données caractérisé en ce que ledit système comprend a une base ( 10) servant à accepter un ou plusieurs plateaux ( 20) d'une série et à transmettre des données audit appareil ( 24) de traitement de données; b un premier plateau ( 20) pourvu d'une première série d'actionneurs et de commutateurs ( 15) et un deuxième plateau ( 20) pourvu d'une deuxième série d'actionneurs et de commutateurs ( 15), chaque actionneur étant associé à un ou plusieurs commutateurs ( 15) de chacun desdits plateaux ( 20) d'actionneurs, chaque commutateur ( 15) se trouvant dans un état d'une série, ledit premier plateau ( 20) étant en outre pourvu de moyens de spécification ( 21) d'un premier sous-code d'identification de plateau ( 20) indiquant l'identité dudit premier plateau ( 20), ledit deuxième plateau ( 20) étant en outre pourvu de moyens de réception dudit premier sous-code d'identification de plateau ( 20) et de spécification ( 21) d'un deuxième sous-code d'identification de plateau ( 20), indiquant l'identité dudit deuxième plateau ( 20), ladite base ( 10) étant pourvue d'un moyen de réception dudit premier et dudit deuxième sous-codes d'identification de plateau ( 20) à partir dudit deuxième plateau ( 20); c un moyen de production d'un code de balayage indiquant l'identité et l'état d'un commutateur ( 15) dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur ( 15); d un moyen de couplage ( 51, 52) dudit système de clavier audit appareil ( 24) de traitement de données, ledit moyen de couplage ( 51, 52) envoyant ledit premier et ledit deuxième sous-codes d'identification de plateau ( 20), et lesdits codes de balayage par un  41 Keypad system with modifiable configuration intended for a data processing apparatus (24) characterized in that said system comprises a base (10) used to accept one or more trays (20) from a series and to transmit data said data processing apparatus (24); b a first plate (20) provided with a first series of actuators and switches (15) and a second plate (20) provided with a second series of actuators and switches (15), each actuator being associated with one or more switches (15) of each of said actuator plates (20), each switch (15) being in a state of a series, said first plate (20) being further provided with specification means (21) a first tray identification sub-code (20) indicating the identity of said first tray (20), said second tray (20) being further provided with means for receiving said first tray identification sub-code (20) and specification (21) of a second tray identification sub-code (20), indicating the identity of said second tray (20), said base (10) being provided with means for receiving said tray first and said second tray identification sub-codes (20) from said second tray (20); c means for producing a scan code indicating the identity and the state of a switch (15) whose state has varied, at least one scan code being associated with each switch (15); means for coupling (51, 52) said keyboard system to said data processing apparatus (24), said coupling means (51, 52) sending said first and said second tray identification sub-codes (20) , and said scanning codes by a trajet unique de données.single data path. 42 Procédé de réalisation d'un système à configuration modifiable destiné à un appareil ( 24) de traitement de données, ledit procédé comprenant les étapes consistant à: a réaliser une base ( 10) servant à accepter un ou plusieurs plateaux ( 20) d'une série et à transmettre des données audit appareil ( 24) de traitement de données b réaliser un ou plusieurs plateaux ( 20), chaque plateau ( 20) étant pourvu d'une série d'actionneurs et de commutateurs ( 15), chaque actionneur étant associé à un ou plusieurs commutateurs ( 15), chaque commutateur ( 15) étant dans un état d'une série, chaque plateau ( 20) comprenant en outre des moyens de spécification ( 21) d'un code d'identification de plateau ( 20) indiquant l'identité dudit plateau ( 20), ladite base ( 10) comprenant un moyen de réception desdits codes d'identification de plateau ( 20) à  42 A method of producing a modifiable configuration system intended for a data processing apparatus (24), said method comprising the steps consisting in: producing a base (10) serving to accept one or more trays (20) of a series and transmitting data to said data processing apparatus (24) b producing one or more plates (20), each plate (20) being provided with a series of actuators and switches (15), each actuator being associated with one or more switches (15), each switch (15) being in a state of a series, each tray (20) further comprising means (21) for specifying a tray identification code (20 ) indicating the identity of said tray (20), said base (10) comprising means for receiving said tray identification codes (20) at partir desdits plateaux ( 20).from said plates (20). c produire un code de balayage indiquant l'identité et l'état d'un commutateur ( 15) dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur ( 15); et d envoyer audit appareil ( 24) de traitement de données lesdits codes d'identification de plateau ( 20) et lesdits codes de balayage par un trajet unique de  c producing a scan code indicating the identity and the state of a switch (15) whose state has varied, at least one scan code being associated with each switch (15); and sending said tray identification codes (20) and said scan codes to said data processing apparatus (24) by a single path of donnés.given. 43 Procédé de réalisation d'un système à configuration modifiable destiné à un appareil ( 24) de traitement de données, ledit procédé comprenant les étapes consistant à: a réaliser une base ( 10) servant à accepter un ou plusieurs plateaux ( 20) d'une série et à transmettre des données audit appareil ( 24) de traitement de données b réaliser un ou plusieurs plateaux ( 20), chaque plateau ( 20) étant pourvu d'une série d'actionneurs et de commutateurs ( 15), chaque actionneur étant associé à un ou plusieurs commutateurs ( 15), chaque commutateur ( 15) étant dans un état d'une série, chaque plateau ( 20) comprenant en outre des moyens de spécification ( 21) d'un code d'identification de plateau ( 20) indiquant l'identité dudit plateau ( 20), ladite base ( 10) comprenant un moyen de réception desdits codes d'identification de plateau ( 20) à  43 A method of producing a modifiable configuration system intended for a data processing apparatus (24), said method comprising the steps consisting in: producing a base (10) serving to accept one or more trays (20) of a series and transmitting data to said data processing apparatus (24) b producing one or more plates (20), each plate (20) being provided with a series of actuators and switches (15), each actuator being associated with one or more switches (15), each switch (15) being in a state of a series, each tray (20) further comprising means (21) for specifying a tray identification code (20 ) indicating the identity of said tray (20), said base (10) comprising means for receiving said tray identification codes (20) at partir desdits plateaux ( 20).from said plates (20). c produire un code de balayage indiquant l'identité et l'état d'un commutateur ( 15) dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur ( 15); d produire un code particulier non identifié à un commutateur ( 15) de l'un desdits plateaux ( 20), ledit code particulier indiquant la présence d'un code d'identification de plateau ( 20); e produire un code d'identification de plateau ( 20), et f produire ledit code de balayage. 44 Procédé de réalisation d'un système de clavier susceptible d'une nouvelle configuration, destiné à un appareil ( 24) de traitement de données, ledit procédé comprenant les étapes consistant à a réaliser une base ( 10) servant à accepter un ou plusieurs plateaux ( 20) d'une série et à transmettre des données audit appareil ( 24) de traitement de données b réaliser un premier et un deuxième plateaux ( 20), chaque plateau ( 20) étant pourvu d'une série d'actionneurs et de commutateurs ( 15), chaque actionneur étant associé à un ou plusieurs commutateurs ( 15), chaque commutateur ( 15) étant dans un état d'une série d'états, ledit premier plateau ( 20) comprenant en outre un moyen de spécification ( 21) d'un premier sous-code d'identification de plateau ( 20) indiquant l'identité dudit plateau ( 20), ledit deuxième plateau ( 20) étant en outre pourvu de moyens de réception dudit premier sous-code d'identification de plateau ( 20) et de spécification ( 21) d'un deuxième sous-code d'identification de plateau ( 20) indiquant l'identité dudit deuxième plateau ( 20), ladite base ( 10) comprenant des moyens de réception dudit premier et dudit deuxième sous-codes d'identification de plateau ( 20) à partir dudit deuxième plateau ( 20); c produire un code de balayage indiquant l'identité et l'état d'un commutateur ( 15) dont l'état a varié, au moins un code de balayage étant associé à chaque commutateur ( 15); et d envoyer ledit premier et ledit deuxième sous- codes d'identification de plateau ( 20) et lesdits deuxièmes codes de balayage par un trajet unique de données.  c producing a scan code indicating the identity and the state of a switch (15) whose state has varied, at least one scan code being associated with each switch (15); d producing a particular unidentified code at a switch (15) of one of said plates (20), said particular code indicating the presence of a plate identification code (20); e producing a tray identification code (20), and f producing said scanning code. 44 Method for producing a keyboard system capable of a new configuration, intended for a data processing apparatus (24), said method comprising the steps consisting in producing a base (10) used to accept one or more trays (20) of a series and transmitting data to said data processing apparatus (24) b producing first and second plates (20), each plate (20) being provided with a series of actuators and switches (15), each actuator being associated with one or more switches (15), each switch (15) being in a state of a series of states, said first plate (20) further comprising specification means (21) a first tray identification sub-code (20) indicating the identity of said tray (20), said second tray (20) being further provided with means for receiving said first tray identification sub-code ( 20) and specification (2 1) a second tray identification sub-code (20) indicating the identity of said second tray (20), said base (10) comprising means for receiving said first and said second identification sub-codes of tray (20) from said second tray (20); c producing a scan code indicating the identity and the state of a switch (15) whose state has varied, at least one scan code being associated with each switch (15); and sending said first and said second tray identification sub-codes (20) and said second scan codes through a single data path.
FR9309665A 1992-08-31 1993-08-05 Generic keyboard with configuration modifiable according to the user. Withdrawn FR2695222A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US93837892A 1992-08-31 1992-08-31

Publications (1)

Publication Number Publication Date
FR2695222A1 true FR2695222A1 (en) 1994-03-04

Family

ID=25471331

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9309665A Withdrawn FR2695222A1 (en) 1992-08-31 1993-08-05 Generic keyboard with configuration modifiable according to the user.

Country Status (4)

Country Link
JP (1) JPH06175763A (en)
DE (1) DE4329148A1 (en)
FR (1) FR2695222A1 (en)
GB (1) GB2270178A (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE29706977U1 (en) * 1997-04-18 1997-07-03 Gramespacher Max H Input device for controlling computer programs
GB2350913B (en) * 1999-06-10 2002-05-29 John Quentin Phillipps Combined memory and user input devive
CN108847847B (en) * 2016-01-05 2022-03-18 湖南工业大学 Keyboard state change pulse generation method
DE102019006024A1 (en) * 2019-02-01 2020-08-06 Maurice Manuel Ahlat Adjustable keyboard

Also Published As

Publication number Publication date
DE4329148A1 (en) 1994-03-03
JPH06175763A (en) 1994-06-24
GB9313581D0 (en) 1993-08-18
GB2270178A (en) 1994-03-02

Similar Documents

Publication Publication Date Title
Margolis et al. Arduino cookbook: recipes to begin, expand, and enhance your projects
Wakerly Digital Design: Principles and Practices, 4/E
CN101388149B (en) Keyboard musical instrument learning apparatus and learning method
TW394891B (en) Date entry system
AU2004201112B2 (en) Input device and method of configuring the input device
US20110281652A1 (en) Touch Music Player
WO2007009096A2 (en) Predictive user interface
CA2261275A1 (en) Musical instrument system
WO1999008175A2 (en) Universally accessible computing system
US20120167747A1 (en) Method and Device for Playing of Musical Melodies
US20040224763A1 (en) Mode-altering key for a character input device
NL8502825A (en) METHOD FOR CHOOSING AND REPRODUCING LANGUAGES
FR2695222A1 (en) Generic keyboard with configuration modifiable according to the user.
US20070154875A1 (en) Apparatus, system and method for displaying information
Nash The'E'in QWERTY: Musical Expression with Old Computer Interfaces.
Ahlzén et al. Piano Hero: Interactive musical learning
Gimeno León Design of a midi controller and representation of spectral analysis
Miles Begin to Code with Python
Judge et al. Switch access to technology-A comprehensive Guide.
Hetrick Modular Understanding: A Taxonomy and Toolkit for Designing Modularity in Audio Software and Hardware
Lott Programming for Non-Programmers
Hallas Freedom of expression
Jacinto Realização de um ZX spectrum em FPGA
US20050141349A1 (en) Optical disk player
Kouroupetroglou et al. A new generation of communication aids under the ULYSSES component-based framework

Legal Events

Date Code Title Description
ST Notification of lapse