The present invention relates to circuit and associated method capable of identifying keys and implementing keypad, and more particularly, to circuit and associated method capable of identifying keys efficiently with lower pin count.
Keypad (or keyboard) is one of the most popular techniques to implement a man-machine interface. Keypads are broadly used in portable/personal consumer electronics, such as personal digital assistant (PDA) devices, mobile phones, tablets, and portable computers. A keypad includes many keys, user press the keys to input instruction, data and/or information to the man-machine interface. To identifying which key is pressed, a keypad circuitry, e.g., an integrated circuit or a chip implementing a keypad man-machine interface, is adopted. Key press activities are transformed to electric signals, then the keypad circuitry receives the electric signals with pins and distinguishes key pressed accordingly. As more and more functions and utilities are integrated into an electronic device, the electronic device may need a keypad of more keys for a sophisticated man-machine interface. For example, a full QWERTY keypad for convenient text input needs about fifty keys. However, more keys demands more pins to be identified, and pin count is an expensive resource of a keypad circuitry.
Please refer to
In the key K(m,n), the contacts s(n) and c(m) are mutually isolated and are covered by a conductive dome d(m,n); the dome d(m,n) is in contact with the contact s(n). When the key K(m,n) is not pressed, the dome d(m,n) remains isolated from the contact c(m); when the key K(m,n) is pressed, the dome d(m,n) deforms to engage the contact c(m), and then the contacts c(m) and s(n) are electrically wired together.
The keypad circuitry 12 identifies keys by periodically scanning through the row pins kr(1) to kr(M) respectively during different time slots. During (m+M*Q)-th time slot (where Q is an integer), the keypad circuitry 12 supplies a high voltage through the row pin kr(m) with the rest of row pins kept at a low voltage, and detects voltage status of the column pins kc(1) to kc(N) for distinguishing keys K(m,1) to K(m,N). If the key K(m,n) is pressed, the corresponding column pin kc(n) is in contact with the row pin kr(m) by the deformed dome d(m,n), thus the pin kc(n) is pulled to high voltage by the row pin kr(m). On the contrary, if the key K(m,n) is not pressed, the column pin kc(n) keeps isolated from the row pin kr(m), and the voltage status of the column pin kc(n) will not be pulled to the high voltage. Therefore, whether the keys K(m,1) to K(m,N) are pressed can be detected during the (m+M*Q)-th time slot. To detect whether the other keys K(m+1,1) to K(m+1,N) are pressed, the keypad circuitry 12 starts the (m+1+M*Q)-th time slot, during which the keypad circuitry 12 supplies a high voltage through the row pin kr(m+1), keeps the rest of row pins at a low voltage, and again detects voltage status of the column pins kc(1) to kc(N) for identification of keys K(m+1,1) to K(m+1,N).
In the prior art keypad circuitry 12, the row pins kr(1) to kr(M) work as M stimulating pins sequentially enabling and preparing each set of keys K(m,1) to K(m,N) to be identified, and the column pins kc(1) to kc(N) work as N input nodes detecting key press. For a keypad of M*N keys, the keypad circuitry 12 needs M+N pins. It is noticed that during a same time slot, only N keys K(m,1) to K(m,N) corresponding to the N column pins kc(1) to kc(N) are identified, that is, no more than N keys are identified simultaneously.
The voltage status of each column pin can be considered as a status bit reflecting either a logic 1 (e.g., high voltage) or otherwise a logic 0. Thus the column pins kc(1) to kc(N) can be orderly listed to form a status word, and key press can be identified by matching the status word with a plurality of key-mapping words. For example, the key K(m,1) corresponds to an N-bit key-mapping word “10 . . . 0”, the key K(m,2) maps to another N-bit key-mapping word “010 . . . 0”, and the key K(m,N) maps to the N-bit key-mapping word “0 . . . 01”. It is therefore observed that the key-mapping word which corresponds to a single key press has only one bit of logic 1.
It is also understood that although each column pin kc(n) is coupled to M keys K(1,n) to K(1,M), these M keys of a same column pin are not identified at a same time; they are respectively distinguished during different time slots. In addition, each key K(m,n) has only one contact s(n) coupled to a corresponding column pin kc(n) (i.e. the n-th input node).
To enhance pin count usage, the invention provides key identification and keypad implementation technology which distinguish more keys with fewer pins.
An objective of the invention is to provide a circuit identifying key pressed among a plurality of keys, including: a plurality of input nodes, each of the input nodes capable of receiving a corresponding status bit which has two or more different status alternatives; and a decoder capable of simultaneously distinguishing key pressed among the plurality of keys by matching a status word with a plurality of key-mapping words, wherein the status word is an orderly list of the status bits corresponding to the plurality of input nodes, and a quantity of the plurality of keys is greater than that of the plurality of input nodes.
An objective of the invention is to provide a circuit identifying key pressed, comprising: a plurality of input nodes, each of the input nodes corresponding to a status bit, and capable of detecting key press by a transition from a default status to an engaged status; and a decoder capable of identifying key pressed by matching a status word with a plurality of key-mapping words, wherein the status word is an orderly list of the status bits corresponding to the plurality of input nodes, each of the key-mapping words maps to one of the plurality of keys and includes a plurality of bits with each bit selected from the default status and the engaged status; wherein one of the key-mapping words includes two bits equal to the engaged status.
An objective of the invention is to provide a circuit identifying key pressed among a plurality of keys, including: an input node associated with multiple keys among the plurality of keys and capable of receiving a corresponding status from the associated multiple keys; and a decoder capable of distinguishing each of the associated multiple keys at a same time according to the status.
An objective of the invention is to provide a method implementing a keypad comprising a plurality of keys and a plurality of input contacts for the plurality of keys, including: providing a circuit with a plurality of input nodes, each of the plurality of input nodes coupled to one of the input contacts and capable of receiving a corresponding status from the coupled input contact, and associating multiple input contacts to one of the keys.
Numerous objects, features and advantages of the present invention will be readily apparent upon a reading of the following detailed description of embodiments of the present invention when taken in conjunction with the accompanying drawings. However, the drawings employed herein are for the purpose of descriptions and should not be regarded as limiting.
The above objects and advantages of the present invention will become more readily apparent to those ordinarily skilled in the art after reviewing the following detailed description and accompanying drawings, in which:
Please refer to
Each of the keys KA, KB, KE and KG can include an input contact c1 coupled to the input node kp1. Each of the keys KA, KC, KF and KG can include an input contact c2 coupled to the input node kp2. Each of the keys KB, KC, KD and KG can include an input contact c3 coupled to the input node kp3. Every one of the seven keys KA to KF can include a bias contact cg, and, in this embodiment, all the bias contacts cg can be commonly coupled to a voltage Vg, e.g., a ground voltage. The input contacts c1, c2 and/or c3 of a same key can be mutually isolated; also the input contact(s) and the bias contact of a same key can be mutually isolated. To detect key press, each of the input nodes kp1 to kp3 can be preset to a voltage Vh, e.g., a dc power voltage higher (greater) than the voltage Vg. When a given key is pressed, the input and bias contacts of the given key can be short wired together, so the input node(s) coupled to the input contact(s) of the given key will be conducted to the voltage Vg and thus experience a transition from the voltage Vh to the voltage Vg.
For example, if a single key KA is pressed, voltages of the input nodes kp1 and kp2 can be changed from the voltage Vh to the voltage Vg, while the input node kp3 remains the default voltage Vh. If the key KE is pressed, only the input node kp1 is changed to the voltage Vg. If the key KG is pressed, all the input nodes kp1, kp2 and kp3 can be conducted to the voltage Vg. The voltage of an input node can be considered as a status bit received by the input node. For example, if an input node detects the voltage Vg, it can be considered as receiving a logic 0 status bit of an engaged status; if the input node remains the voltage Vh, it can be considered as receiving a logic 1 status bit of a default status. A status word is therefore formed as an orderly list of the status bits of all the input nodes. For example, status bits of the input nodes kp1, kp2 and kp3 respectively contribute to the first, second and third bits of a three-bit status word.
On the other hand, each key can correspond to a key-mapping word. For example, the key KA can correspond to a key-mapping word “001”, because when the key KA is pressed, the input nodes kp1 and kp2 can detect engaged status represented by logic 0, while the input node kp3 can receive a default status represented by logic 1. Similarly, the key KD can be mapped to a key-mapping word “110” and the key KG can be mapped to a key-mapping word “000”.
Accordingly, the keys KA to KG can be identified by a decoder 24 of the circuit 22. The decoder 24 is capable of distinguishing key pressed by matching a status word of the input nodes with the key-mapping words of the keys. For example, if the input nodes kp1 to kp3 receive a status word “001”, the decoder 24 can identify that the key KA is pressed since the status word meets the key-mapping word of the key KA. Similarly, a status word “100” can be decoded to identify key press of the key KC, and a status word “000” reflects that the key KG is pressed.
It is noticed that seven keys can be implemented with only three pins (input nodes) according to the invention, while three pins (a row pin and two column pins) can merely implement two keys according to prior art of
At a same time (a same time slot), the prior art of
The prior art of
According to the prior art of
With the contacts cg coupled to the voltage Vg, row pins of prior art are no longer needed according to the invention, thus the pin count for a keypad can be reduced or the pin count can be fully utilized to implement the input nodes which detect key press. Then a keypad can be implemented with less pin counts, or a keypad with more keys can be implemented by the same amount of pin count. To compare pin count usage efficiency, the prior art use J pins to implement (J/2)*(J/2) (if J is even) or (J+1)*(J−1))/4 (if J is odd) keys. According to the invention, J pins can implement a maximum quantity of (2̂J−1) keys, since a key-mapping word of J bits have 2̂J possible alternatives with one alternative “1 . . . 1” of all bits equal to logic 1 being excluded. For example, the prior art uses 14 pins (7 row pins and 7 column pins) to implement 49 keys. According to the invention, 6 pins can implement a maximum quantity of 63 keys.
Because pin count is utilized with high efficiency, the invention is capable of providing redundancy for key mapping. With the redundancy, some of possible key-mapping words are not mapped to any key. For example, if the keypad 20 of
Please refer to
Please refer to
The central contacts ct(1), ct(2), . . . etc can work as the input contacts of
In the example of
To sum up, comparing to prior art, the invention discloses key implementation with pin count more efficiently utilized, so lower pin count and thus more cost reduction for keypad can be achieved.
While the invention has been described in terms of what is presently considered to be the most practical and preferred embodiments, it is to be understood that the invention needs not be limited to the disclosed embodiment. On the contrary, it is intended to cover various modifications and similar arrangements included within the spirit and scope of the appended claims which are to be accorded with the broadest interpretation so as to encompass all such modifications and similar structures.