Keyboard
The keyboard enhances macro function security by locking keystroke sequences through specific key combinations, preventing unauthorized changes.
Patent Information
- Application Number
- JP2024071808
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-25
- Publication Date
- 2025-11-07
- Estimated Expiration
- 2044-04-25
AI Technical Summary
Macro keyboards can have their keystroke sequences overwritten due to user mistakes or malicious interference, compromising the security of the macro functions.
A keyboard with a storage unit to store pressing sequences, a connection unit to communicate with an information processing device, and a processing unit that locks or unlocks these sequences based on specific key combinations, preventing unauthorized changes.
Enhances the security of macro functions by preventing accidental or intentional overwriting of keystroke sequences.
Smart Images

Figure 2025167314000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a keyboard. [Background technology]
[0002] To make key input operations easier, keyboards are sometimes equipped with macro functions. In macro keyboards with macro functions, when the macro execution key is pressed, pre-registered key input is performed.
[0003] As a technique relating to macro keyboards, for example, keyboards with macro functions and related macro function setting methods have been proposed. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2012-070035 Summary of the Invention [Problem to be solved by the invention]
[0005] The macro keyboard allows users to register keystrokes corresponding to macro execution keys through a specific operation. However, keystrokes corresponding to macro execution keys can be overwritten by a user's mistake or a third party's mischief.
[0006] In one aspect, the present invention aims to improve the security of keyboard macro functions. [Means for solving the problem]
[0007] In one proposal, a keyboard is provided having a plurality of keys, a storage unit, a connection unit, and a processing unit. The plurality of keys include general keys and macro execution keys. The storage unit stores a pressing order of the general keys registered in association with the macro execution keys. The connection unit is connected to an information processing device. The processing unit notifies the information processing device when a general key is pressed that the general key has been pressed, notifies the information processing device when a macro execution key is pressed that the general keys registered in association with the macro execution keys have been pressed in the pressing order, sets the pressing order to a locked state when a first combination of keys included in the plurality of keys is pressed, and accepts registration of the pressing order when a second combination of keys included in the plurality of keys is pressed if the pressing order is not locked. [Effects of the Invention]
[0008] According to one aspect, the security of keyboard macro functions can be improved. [Brief explanation of the drawings]
[0009] [Figure 1] FIG. 2 illustrates an example of a keyboard according to the first embodiment. [Figure 2] FIG. 10 illustrates an example of a PC and a keyboard according to a second embodiment. [Figure 3] FIG. 2 is a diagram illustrating an example of the hardware configuration of a PC and a keyboard. [Figure 4] FIG. 2 is a diagram showing an example of keys used for a macro function. [Figure 5] FIG. 2 is a block diagram illustrating an example of the functions of a keyboard. [Figure 6] FIG. 10 is a diagram illustrating an example of correspondence information. [Figure 7] FIG. 10 is a diagram illustrating an example of a state transition diagram of the keyboard in an unlocked state. [Figure 8] FIG. 10 is a diagram showing an example of a state transition diagram of the keyboard when it is set to a locked state. [Figure 9] FIG. 10 is a diagram showing an example of a state transition diagram of the keyboard when registering and deleting input contents in a security key setting state. [Figure 10] 10 is a flowchart illustrating an example of a procedure for an input reception process. [Figure 11] 10 is a flowchart (part 1) illustrating an example of a procedure for a key setting process. [Figure 12] 10 is a second flowchart illustrating an example of the procedure of the key setting process. [Figure 13] 10 is a flowchart illustrating an example of a registration process procedure. DETAILED DESCRIPTION OF THE INVENTION
[0010] The present embodiment will be described below with reference to the drawings. Note that each embodiment can be implemented in combination with a plurality of other embodiments within a range that does not contradict each other. [First embodiment] First, a first embodiment will be described. The first embodiment controls input from a keyboard having a macro function.
[0011] 1 is a diagram showing an example of a keyboard according to a first embodiment. The keyboard 10 is an input device for inputting characters to a connected computer. The keyboard 10 has a plurality of keys, a storage unit 11, a connection unit 12, and a processing unit 13.
[0012] The multiple keys are pressed by the user to select input content. The multiple keys include general keys and macro execution keys. The general keys are keys pressed to select characters to input. For example, the general keys include keys on which characters or symbols are printed and pressed to input the printed characters or symbols. Also, for example, the general keys include keys pressed to instruct predetermined operations, such as the "Shift" key and the "Enter" key. The macro execution keys are keys pressed to use input using the macro function of the keyboard 10.
[0013] The storage unit 11 stores data used in processing executed by the keyboard 10. The storage unit 11 is, for example, a volatile memory or a non-volatile memory of a controller included in the keyboard 10. The storage unit 11 stores a pressing sequence 11a. The pressing sequence 11a is a pressing sequence of general keys registered in association with a macro execution key. For example, the storage unit 11 stores a pressing sequence 11a in which a key with "A" printed on it (the "A" key), a "B" key, and a "C" key are pressed in that order. Note that the pressing sequence 11a may include a combination of general keys as a single press. The pressing sequence 11a may also include a predetermined process, such as waiting for a predetermined time.
[0014] The connection unit 12 is an interface for connecting to the information processing device 1. The connection unit 12 may be connected to the information processing device 1 by wire or wirelessly. The information processing device 1 is a computer that accepts character input via a keyboard 10. The information processing device 1 is, for example, a PC (Personal Computer) operated by a user. The information processing device 1 may also be, for example, a smartphone or a tablet terminal. Alternatively, the information processing device 1 may be, for example, the main body of a notebook PC, and the keyboard 10 may be the keyboard of the notebook PC.
[0015] The processing unit 13 controls the keyboard 10 and can execute required processing. The processing unit 13 is, for example, a processor or an arithmetic circuit of a controller included in the keyboard 10. The processing unit 13 performs input control processing and setting processing related to the pressing order 11a.
[0016] In the input control process, when a general key is pressed, the processing unit 13 notifies the information processing device 1 that the general key has been pressed. For example, the processing unit 13 notifies the information processing device 1 of information indicating the pressed general keys via the connection unit 12. Note that when a combination of general keys is pressed, the processing unit 13 notifies the information processing device 1 of information indicating each of the pressed general keys.
[0017] When a macro execution key is pressed, the processing unit 13 notifies the information processing device 1 that a general key registered in association with the macro execution key has been pressed in the pressing sequence 11a. For example, the processing unit 13 notifies the information processing device 1 of information indicating the general key, just as when a general key is pressed in the pressing sequence 11a. Here, the processing unit 13 refers to the pressing sequence 11a and notifies the information processing device 1 of information indicating the "A" key, information indicating the "B" key, and information indicating the "C" key, in that order.
[0018] In the setting process, when a first combination of keys included in the plurality of keys is pressed, the processing unit 13 sets the pressing sequence 11a to a locked state. The locked state is a state in which updates to the pressing sequence 11a are not accepted. When a second combination of keys included in the plurality of keys is pressed while the pressing sequence 11a is not locked, the processing unit 13 accepts registration of the pressing sequence 11a. For example, when the second combination of keys is pressed, the processing unit 13 determines whether the pressing sequence 11a is set to a locked state. When the pressing sequence 11a is set to a locked state, the processing unit 13 does not accept registration of the pressing sequence 11a. Furthermore, when the pressing sequence 11a is not set to a locked state (is in an unlocked state), the processing unit 13 accepts registration of the pressing sequence 11a. For example, the processing unit 13 registers the order in which the general keys are pressed after the second combination is pressed as the pressing sequence 11a.
[0019] According to the first embodiment, the multiple keys of the keyboard 10 include general keys and macro execution keys. The storage unit 11 of the keyboard 10 stores a pressing sequence 11a of the general keys registered in association with the macro execution keys. The connection unit 12 of the keyboard 10 is connected to the information processing device 1. When a general key is pressed, the processing unit 13 of the keyboard 10 notifies the information processing device 1 that the general key has been pressed, and when a macro execution key is pressed, the processing unit 13 notifies the information processing device 1 that the general keys registered in association with the macro execution keys have been pressed in the pressing sequence 11a. When a first combination of keys included in the multiple keys is pressed, the processing unit 13 sets the pressing sequence 11a to a locked state, and when the pressing sequence 11a is not locked, when a second combination of keys included in the multiple keys is pressed, the processing unit 13 accepts registration of the pressing sequence 11a.
[0020] In this way, by setting the pressing sequence 11a to a locked state, the keyboard 10 can prevent the pressing sequence 11a from being overwritten by a user's mistaken operation or a third party's mischief, thereby improving the security of the macro function of the keyboard 10.
[0021] The processing unit 13 may set the pressing sequence 11a to a locked state when a first combination, which is a combination of a predetermined third combination of keys included in the plurality of keys and a security key among the plurality of keys, is pressed. The processing unit 13 may also release the lock state of the pressing sequence 11a when a combination of a predetermined fourth combination of keys included in the plurality of keys and a security key is pressed while the pressing sequence 11a is in the locked state. This allows the keyboard 10 to prevent overwriting of the pressing sequence 11a by anyone other than the user who set it to the locked state.
[0022] Furthermore, when the pressing sequence 11a is not in a locked state, if a fifth combination of keys included in the plurality of keys is pressed, the processing unit 13 deletes the registration of the pressing sequence 11a, thereby preventing the keyboard 10 from deleting the pressing sequence 11a due to a user's mistaken operation or a third party's mischief.
[0023] Second Embodiment Next, a second embodiment will be described, which controls input from a keyboard having a macro function connected to a PC.
[0024] FIG. 2 is a diagram illustrating an example of a PC and a keyboard according to the second embodiment. The PC 200 is a computer used by a user. The PC 200 is connected to a monitor 31, a mouse 32, and a keyboard 100. The monitor 31 and the mouse 32 are connected to the PC 200 by wire, and the keyboard 100 is connected to the PC 200 by wireless. The monitor 31 and the mouse 32 may also be connected to the PC 200 by wireless. The PC 200 receives input from the mouse 32 and the keyboard 100, and displays on the monitor 31 display content according to the processing result. The PC 200 is an example of the information processing device 1 described in the first embodiment.
[0025] The keyboard 100 is a keyboard with a macro function. When a key is pressed, the keyboard 100 notifies the PC 200 of the pressed key. When a macro execution key is pressed, the keyboard 100 notifies the PC 200 of the input content that has been registered in advance in association with the pressed macro execution key.
[0026] 3 is a diagram showing an example of the hardware configuration of a PC and a keyboard. The entire PC 200 is controlled by a processor 201. A memory 202 and multiple peripheral devices are connected to the processor 201 via a bus 210. The processor 201 may be a multiprocessor. The processor 201 is, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), or a DSP (Digital Signal Processor). At least some of the functions realized by the processor 201 executing a program may be realized by an electronic circuit such as an ASIC (Application Specific Integrated Circuit) or a PLD (Programmable Logic Device).
[0027] The memory 202 is used as a main storage device of the PC 200. The memory 202 temporarily stores at least a part of the OS (Operating System) programs and application programs to be executed by the processor 201. The memory 202 also stores various data used in processing by the processor 201. As the memory 202, for example, a volatile semiconductor storage device such as a RAM (Random Access Memory) is used.
[0028] The peripheral devices connected to the bus 210 include a storage device 203, a GPU (Graphics Processing Unit) 204, an input interface 205, an optical drive device 206, and a device connection interface 207. The peripheral devices connected to the bus 210 also include a wireless interface 208 and a network interface 209.
[0029] The storage device 203 electrically or magnetically writes and reads data to and from a built-in recording medium. The storage device 203 is used as an auxiliary storage device for the computer. The storage device 203 stores OS programs, application programs, and various data. Note that the storage device 203 may be, for example, a hard disk drive (HDD) or a solid state drive (SSD).
[0030] The GPU 204 is connected to a monitor 31. The GPU 204 displays an image on the screen of the monitor 31 in accordance with an instruction from the processor 201. The monitor 31 may be a display device using an organic EL (Electro Luminescence) display device, a liquid crystal display device, or the like.
[0031] The input interface 205 is connected to a mouse 32. The input interface 205 transmits signals sent from the mouse 32 to the processor 201. The mouse 32 is an example of a pointing device, and other pointing devices can also be used. Examples of other pointing devices include a touch panel, a tablet, a touch pad, and a trackball.
[0032] The optical drive device 206 uses a laser beam or the like to read data recorded on an optical disc 33. The optical disc 33 is a portable recording medium on which data is recorded so that it can be read by reflected light. The optical disc 33 includes a DVD (Digital Versatile Disc), a DVD-RAM, a CD-ROM (Compact Disc Read Only Memory), a CD-R (Recordable) / RW (Rewritable), etc.
[0033] The device connection interface 207 is a communication interface for connecting peripheral devices to the PC 200. For example, a memory device 34 or a memory reader / writer 35 can be connected to the device connection interface 207. The memory device 34 is a recording medium equipped with a function for communicating with the device connection interface 207. The memory reader / writer 35 is a device for writing data to a memory card 36 or reading data from the memory card 36. The memory card 36 is a card-type recording medium.
[0034] The wireless interface 208 transmits and receives data to and from the keyboard 100 by short-range wireless communication. The wireless interface 208 uses a communication standard such as Bluetooth (registered trademark).
[0035] The network interface 209 is connected to the network 30. The network interface 209 transmits and receives data to and from other computers or communication devices via the network 30.
[0036] The keyboard 100 includes a controller 101, a wireless interface 102, and keys 103. The controller 101 controls the entire keyboard 100. The controller 101 is, for example, a microcontroller. The controller 101 includes a processor 101a, a RAM 101b, and a ROM 101c.
[0037] The processor 101a loads firmware stored in the ROM 101c into the RAM 101b and executes the firmware. The processor 101a is, for example, a CPU, an MPU, or a DSP. At least some of the functions realized by the processor 101a executing a program may be realized by an electronic circuit such as an ASIC or a PLD.
[0038] The RAM 101b is a volatile semiconductor memory device used as the main memory device of the keyboard 100. The RAM 101b temporarily stores at least a part of the program to be executed by the processor 101a. The RAM 101b also stores various data used in processing by the processor 101a.
[0039] The ROM 101c is a non-volatile semiconductor memory device that stores data, and may be an EPROM (Erasable Programmable Read Only Memory) or an EEPROM (Electrically Erasable Programmable Read-Only Memory).
[0040] The wireless interface 102 transmits and receives data to and from the PC 200 via short-range wireless communication. The wireless interface 102 uses a communication standard such as Bluetooth for the keyboard 100. The keys 103 are a plurality of keys that are pressed by the user. The controller 101 notifies the processor 201 of the pressed keys.
[0041] The keyboard 100 can realize the processing functions of the second embodiment with the hardware configuration described above. The keyboard 10 shown in the first embodiment can also be realized with the same hardware as the keyboard 100 shown in FIG. 3. The processor 101a is an example of the processing unit 13 shown in the first embodiment. The RAM 102b or ROM 101c is an example of the storage unit 11 shown in the first embodiment. The wireless interface 102 is an example of the connection unit 12 shown in the first embodiment.
[0042] The keyboard 100 realizes the processing functions of the second embodiment by executing a program recorded on, for example, a computer-readable recording medium. The program describing the processing to be executed by the keyboard 100 can be recorded on various recording media. For example, the program to be executed by the processor 101a of the keyboard 100 can be stored as firmware in the ROM 101c. The program to be executed by the processor 101a can also be recorded on a portable recording medium such as an optical disk, a memory device, or a memory card. The program stored on the portable recording medium can be written to the ROM 101c under the control of, for example, the processor 101a, and then made executable. Next, the keys used for the macro function of the keyboard 100 will be described.
[0043] Fig. 4 is a diagram showing an example of keys used for the macro function. Keyboard 100 has memory key 41, macro execution keys 42a, 42b, and 42c, and LEDs (Light Emitting Diodes) 51a and 51b. Note that in Fig. 4, printing on keys other than memory key 41 and macro execution keys 42a, 42b, and 42c is omitted.
[0044] The memory key 41 is a key that is pressed to set the macro function. The macro execution keys 42a, 42b, and 42c are keys for executing the macro function. When the macro execution key 42a, 42b, or 42c is pressed, the keyboard 100 notifies the PC 200 of the input content that has been registered in advance in association with the pressed macro execution key. The LED 51a is an LED that indicates whether the connected computer (PC 200) is running or not. The LED 51b is an LED that indicates whether the keyboard 100 is running or not. The LEDs 51a and 51b are also used to indicate the setting status of the macro function.
[0045] When the combination of the memory key 41 and one of the macro execution keys 42a, 42b, and 42c is pressed and held for a predetermined time (e.g., 1.5 seconds), the keyboard 100 accepts registration of the input content corresponding to the pressed macro execution key. For example, when the combination of the memory key 41 and the macro execution key 42a is pressed and held, the keyboard 100 starts registering the input content corresponding to the macro execution key 42a. When registering the input content, the keyboard 100 alternately blinks the LEDs 51a and 51b.
[0046] The keyboard 100 registers the keys pressed from when the combination of the memory key 41 and the macro execution key 42a is pressed and held until the memory key 41 is pressed, and the order in which the keys are pressed, as input content corresponding to the macro execution key 42a. When the macro execution key 42a is pressed, the keyboard 100 notifies the PC 200 of the keys registered in association with the macro execution key 42a in the order in which they are registered in association with the macro execution key 42a.
[0047] In this way, when the combination of the memory key 41 and the macro execution keys 42a, 42b, and 42c is pressed and held, the keyboard 100 accepts the registration of the input content corresponding to the pressed macro execution key. If the combination of the memory key 41 and the macro execution keys 42a, 42b, and 42c is pressed and held due to a user's mistaken operation, the keyboard 100 may overwrite the input content corresponding to the pressed macro execution key. Furthermore, if a third party tamperingly presses and holds the combination of the memory key 41 and the macro execution keys 42a, 42b, and 42c, the keyboard 100 may overwrite the input content corresponding to the pressed macro execution key.
[0048] Therefore, in the second embodiment, the keyboard 100 locks the input contents corresponding to the macro execution keys 42a, 42b, and 42c when the combination of the "Fn" key, memory key 41, and security key is pressed. When the input contents are locked, the keyboard 100 does not accept registration of the input contents corresponding to the macro execution keys 42a, 42b, and 42c. When the combination of the "Fn" key, memory key 41, and the security key pressed when the locked state is set is pressed and held, the keyboard 100 releases the lock state of the input contents. Next, the functions of the keyboard 100 will be described in detail.
[0049] FIG. 5 is a block diagram showing an example of keyboard functions. The keyboard 100 has a storage unit 110, an input control unit 120, and a setting unit 130. The storage unit 110 is realized using a storage area of the RAM 101b or the ROM 101c. The input control unit 120 and the setting unit 130 are realized by the processor 101a executing a program stored in the RAM 101b. The storage unit 110 stores correspondence information 111. The correspondence information 111 is information indicating input contents corresponding to each of the macro execution keys 42a, 42b, and 42c. The input contents are an example of the pressing sequence 11a shown in the first embodiment.
[0050] When a key is pressed, the input control unit 120 notifies the PC 200 of information corresponding to the pressed key. When a key other than the memory key 41 and the macro execution keys 42a, 42b, and 42c is pressed, the input control unit 120 notifies the PC 200 that the key has been pressed. Note that keys other than the memory key 41 and the macro execution keys 42a, 42b, and 42c are examples of the general keys described in the first embodiment. When a macro execution key 42a, 42b, or 42c is pressed, the input control unit 120 notifies the PC 200 that the keys registered in the correspondence information 111 in association with the pressed macro execution key have been pressed in the registered pressing order. When a key including the memory key 41 is pressed, the input control unit 120 causes the setting unit 130 to execute key setting processing for the macro execution keys 42a, 42b, and 42c.
[0051] When a key including the memory key 41 is pressed, the setting unit 130 executes key setting processing for the macro execution keys 42a, 42b, and 42c. When the memory key 41 and one of the macro execution keys 42a, 42b, and 42c are pressed while the input contents are not set to a locked state (when the input contents are unlocked), the setting unit 130 executes registration processing for the input contents corresponding to the pressed macro execution key. Note that the combination of the memory key 41 and one of the macro execution keys 42a, 42b, and 42c is an example of the second combination described in the first embodiment. The setting unit 130 registers the keys pressed in the registration processing and the order in which the keys were pressed in the correspondence information 111 as input contents corresponding to the macro execution key to be registered.
[0052] Furthermore, when the memory key 41, the "ESC" key, and the "delete" key are pressed while the input contents are in an unlocked state, the setting unit 130 deletes the input contents corresponding to each macro execution key registered in the correspondence information 111. The combination of the memory key 41, the "ESC" key, and the "delete" key is an example of the fifth combination shown in the first embodiment.
[0053] When the combination of the "Fn" key, memory key 41, and security key is pressed, the setting unit 130 sets the security key. When the security key is set (security key setting state), if there is no operation for a predetermined time or the power switch of the keyboard 100 is pressed, the setting unit 130 sets the input contents to a locked state and turns off the power. Note that the combination of the "Fn" key, memory key 41, and security key is an example of the first combination described in the first embodiment. Also, the combination of the "Fn" key and memory key 41 is an example of the third combination described in the first embodiment.
[0054] When the combination of the "Fn" key, memory key 41, and security key is pressed while the input content is locked, the setting unit 130 determines whether the pressed security key matches the set security key. The combination of the "Fn" key and memory key 41 is an example of the fourth combination described in the first embodiment. If the pressed security key matches the set security key, the setting unit 130 releases the lock state of the input content.
[0055] 5 indicate a part of the communication path, and communication paths other than the illustrated communication paths can also be set. Next, the correspondence information 111 stored in the storage unit 110 will be described.
[0056] 6 is a diagram showing an example of correspondence information. The correspondence information 111 is information indicating input contents corresponding to each of the macro execution keys 42a, 42b, and 42c. In the correspondence information 111, the keys corresponding to each of the macro execution keys 42a, 42b, and 42c and the order in which the keys are pressed are registered as input contents. For example, the keys of the keyboard 100 registered in the correspondence information 111 include keys on which characters or symbols are printed and which are pressed to input the printed characters or symbols. In addition, for example, the keys registered in the correspondence information 111 include keys which are pressed to instruct predetermined operations, such as the "Shift" key, the "Enter" key, and the Windows (registered trademark) key ("Win" key).
[0057] The input contents of the correspondence information 111 may include a combination of multiple keys as a single key press. The input contents of the correspondence information 111 may also include a predetermined process as a single key press. For example, a process such as waiting for a predetermined time (e.g., one second) is associated with a button for setting the keyboard 100, such as a button pressed to establish a wireless connection with a destination computer. When a button for setting the keyboard 100 is pressed during input content registration, the setting unit 130 registers the process corresponding to the pressed button in the correspondence information 111.
[0058] For example, the combination of the "Win", "Shift", and "S" keys is registered in the correspondence information 111 in association with the macro execution key 42a (M1). When the macro execution key 42a is pressed, the input control unit 120 refers to the correspondence information 111 and notifies the PC 200 that the combination of the "Win", "Shift", and "S" keys has been pressed. As a result, the PC 200, which has the combination of the "Win", "Shift", and "S" keys set as a shortcut key for taking a screenshot, starts software for taking a screenshot.
[0059] Furthermore, for example, the correspondence information 111 has the following keys registered in that order in association with the macro execution key 42b (M2): "X", "X", "X", "X", "@", "X", "X", ".", "J", and "P". When the macro execution key 42b is pressed, the input control unit 120 refers to the correspondence information 111 and notifies the PC 200 that the "X", "X", "X", "X", "@", "X", "X", ".", "J", and "P" keys have been pressed in that order. This causes the PC 200 to accept input of the character string "xxxx@xx.jp" indicating an email address.
[0060] Furthermore, for example, the correspondence information 111 has registered, in order, the "Win" key, a one-second wait, the "C" key, the "A" key, the "M" key, the "E" key, the "R" key, the "A" key, and the "Enter" key, in association with the macro execution key 42c (M3). When the macro execution key 42c is pressed, the input control unit 120 refers to the correspondence information 111, notifies the PC 200 that the "Win" key has been pressed, and waits one second. As a result, the PC 200 displays an application selection acceptance screen. Then, the input control unit 120 notifies the PC 200 that the "C" key, the "A" key, the "M" key, the "E" key, the "R" key, the "A" key, and the "Enter" key have been pressed in that order. As a result, the PC 200 accepts the input of the character string "camera" indicating the application name of the camera application and the confirmation of the input, and starts the camera application. Next, a description will be given of state transitions of the keyboard 100. First, a description will be given of state transitions when the input content is in the unlocked state.
[0061] 7 is a diagram showing an example of a state transition diagram of the keyboard in an unlocked state. When the keyboard 100 is started with the input content of the correspondence information 111 in an unlocked state, the keyboard 100 transitions to state 61. State 61 is the initial state of the keyboard 100 when the input content is in an unlocked state.
[0062] In state 61, the security mode of the keyboard 100, which indicates whether the input content is locked, is set to an unlocked state (unlock). Also, in state 61, the security key is not set (null). Also, in state 61, the keyboard 100 causes the LED 51a (Caps LED) to emit light depending on whether the PC 200 is running or not (system state). For example, in state 61, the keyboard 100 causes the LED 51a to emit green light when the PC 200 is running. Also, in state 61, the keyboard 100 does not cause the LED 51a to emit light when the PC 200 is not running. Also, in state 61, the keyboard 100 causes the LED 51b (Power LED), which indicates whether the keyboard 100 is running or not (KB power state), to emit green light.
[0063] In state 61, when the memory key 41 and one of the macro execution keys 42a, 42b, and 42c (macro execution keys M1 / M2 / M3) are pressed and held for 1.5 seconds, the keyboard 100 transitions to state 62. State 62 is a state in which the keyboard 100 accepts registration of the input content corresponding to the pressed macro execution key.
[0064] In state 62, the security mode of the keyboard 100 is set to an unlocked state. Also, in state 62, a security key is not set. Also, in state 62, the keyboard 100 blinks the LED 51a in green at 0.5-second intervals. Also, in state 62, the keyboard 100 blinks the LED 51b in green at 0.5-second intervals. Note that the keyboard 100 blinks the LEDs 51a and 51b alternately (Blink Alternately). The keyboard 100 registers the keys pressed in state 62 and the order in which they were pressed in the correspondence information 111 as input content corresponding to the macro execution key pressed when transitioning to state 62. Note that the keyboard 100 can register up to 50 keys corresponding to one macro execution key in the correspondence information 111.
[0065] In state 62, if the memory key 41 is pressed within 180 seconds after transition to state 62, the keyboard 100 transitions to state 63. State 63 is a state for notifying that registration of input contents is completed. In state 63, the security mode of the keyboard 100 is set to the unlocked state. Also, in state 63, a security key is not set. Also, in state 63, the keyboard 100 causes the LEDs 51a and 51b to flash green at 0.5-second intervals. Also, in state 63, the keyboard 100 confirms the input contents registered in the correspondence information 111 in state 62 (Memory: recorded). In state 63, when the LEDs 51a and 51b flash twice, the keyboard 100 transitions to state 61.
[0066] Furthermore, when the number of pressed keys reaches 51 or more in state 62, keyboard 100 transitions to state 64. Note that keyboard 100 does not register the 51st and subsequent keys pressed in state 62 in correspondence information 111. State 64 is a state for notifying that the registration of input content has ended because the upper limit of the number of keys that can be registered has been exceeded.
[0067] In state 64, the security mode of the keyboard 100 is set to an unlocked state. Also, in state 64, a security key is not set. Also, in state 64, the keyboard 100 does not emit light (turns off) the LED 51a. Also, in state 64, the keyboard 100 blinks the LED 51b in red at 0.5 second intervals. Also, in state 64, the keyboard 100 confirms the input content registered in the correspondence information 111 in state 62. When the LED 51b blinks three times in state 64, the keyboard 100 transitions to state 61.
[0068] Furthermore, when 180 seconds have elapsed in state 62, the keyboard 100 transitions to state 65. State 65 is a state for notifying that registration of input contents has ended due to a timeout.
[0069] In state 65, the security mode of the keyboard 100 is set to an unlocked state. Also, in state 65, a security key is not set. Also, in state 65, the keyboard 100 does not emit light from the LED 51a. Also, in state 65, the keyboard 100 blinks the LED 51b in red at 0.5-second intervals. Also, in state 65, the keyboard 100 confirms the input content registered in the correspondence information 111 in state 62. When the LED 51b blinks three times in state 65, the keyboard 100 transitions to state 61.
[0070] In state 61, if the memory key 41, the "ESC" key, and the "delete" key are pressed and held for three seconds, the keyboard 100 transitions to state 66. State 66 is a state in which the input content registered in the correspondence information 111 is deleted.
[0071] In state 66, the security mode of the keyboard 100 is set to an unlocked state. Also, in state 66, a security key is not set. Also, in state 66, the keyboard 100 causes the LEDs 51a and 51b to flash green at 0.5-second intervals. Also, in state 66, the keyboard 100 deletes the input contents corresponding to the macro execution keys 42a, 42b, and 42c registered in the correspondence information 111 (Memory:Reset). When the LEDs 51a and 51b flash five times in state 66, the keyboard 100 transitions to state 61.
[0072] Furthermore, when the "Fn" key, the memory key 41, or any of the "F1" to "F2" keys are pressed in state 61, the keyboard 100 transitions to state 67. Furthermore, when the LEDs 51a and 51b blink four times in state 68, the keyboard 100 transitions to state 61. States 67 and 68 will be described later.
[0073] In this way, when the input content is in an unlocked state, the keyboard 100 accepts registration of the input content corresponding to the pressed macro execution key by pressing and holding the memory key 41 or any one of the macro execution keys 42a, 42b, and 42c. Also, when the input content is in an unlocked state, the keyboard 100 deletes the input content corresponding to the macro execution key 42a, 42b, or 42c by pressing and holding the memory key 41, the "ESC" key, or the "delete" key. Next, a case where the keyboard 100 is set to a locked state to restrict the registration and deletion of the input content corresponding to the macro execution keys 42a, 42b, and 42c will be described.
[0074] 8 is a diagram showing an example of a state transition diagram of the keyboard when it is set to the locked state. When the "Fn" key, the memory key 41, or any of the keys "F1" to "F12" are pressed in state 61, the keyboard 100 transitions to state 67. Note that the "Fn" key, the memory key 41, or any of the keys "F1" to "F12" do not need to be pressed and held (long press: no need). Here, the keyboard 100 sets, as a security key, one of the keys "F1" to "F12" that is pressed when transitioning from state 61 to state 67. State 67 is a state for notifying that a transition will occur to state 69, which is an unlocked state and a security key set state.
[0075] In state 67, the security mode of the keyboard 100 is set to an unlocked state. In state 67, the key that is pressed when transitioning from state 61 to state 67, among the "F1" to "F12" keys, is set as the security key. In state 67, the keyboard 100 causes the LEDs 51a and 51b to flash green at 0.5 second intervals. When the LEDs 51a and 51b flash three times in state 67, the keyboard 100 transitions to state 69.
[0076] State 69 is a state in which a security key has been set and in which it is possible to accept a request to start registering or deleting input content in correspondence information 111. Note that the state transition from state 69 for registering or deleting input content will be described later.
[0077] In state 69, the security mode of the keyboard 100 is set to an unlocked state. Also, in state 69, a security key is set. Also, in state 69, the keyboard 100 causes the LED 51a to emit light depending on whether the PC 200 is running or not. Also, in state 61, the keyboard 100 causes the LED 51b, which indicates whether the keyboard 100 is running or not, to emit green light.
[0078] In state 69, if there is no operation for 10 minutes (Idle 10 min) or the power switch of the keyboard 100 is pressed, the keyboard 100 transitions to state 70. State 70 is a state in which the security key is set and the power is turned off. When transitioning to state 70, the keyboard 100 sets the input contents to a locked state.
[0079] In state 70, the security mode of the keyboard 100 is set to the locked state. Also, in state 70, a security key is set. Also, in state 70, the keyboard 100 causes the LED 51a to emit light depending on whether the PC 200 is running or not. Also, in state 70, the keyboard 100 does not cause the LED 51b, which indicates whether the keyboard 100 is running or not, to emit light.
[0080] In state 70, when a startup instruction is given, such as pressing a key or the power switch, the keyboard 100 transitions to state 71. State 71 is the initial state of the keyboard 100 when the input content is in a locked state. In state 71, the security mode of the keyboard 100 is set to a locked state. Also, in state 71, a security key is set. Also, in state 71, the keyboard 100 causes the LED 51a to light up depending on whether the PC 200 is running or not. Also, in state 71, the keyboard 100 causes the LED 51b, which indicates whether the keyboard 100 is running or not, to light up in green.
[0081] In state 71, if there is no operation for 10 minutes or the power switch of the keyboard 100 is pressed, the keyboard 100 transitions to state 70. Also, in state 71, if the "Fn" key, the memory key 41, or any key set as a security key among "F1" to "F12" is pressed, the keyboard 100 transitions to state 67.
[0082] Furthermore, when the "Fn" key, the memory key 41, or any key among "F1" to "F12" that is not set as a security key is pressed in state 71, the keyboard 100 transitions to state 72. State 72 is a state for notifying that the security keys do not match (Security Unmatched).
[0083] In state 72, the security mode of the keyboard 100 is set to the locked state. Also, in state 72, a security key is set. Also, in state 72, the keyboard 100 does not emit light from the LED 51a. Also, in state 72, the keyboard 100 flashes the LED 51b in red at 0.5 second intervals. When the LED 51b flashes twice in state 72, the keyboard 100 transitions to state 71.
[0084] Furthermore, in state 69, if the "Fn" key, memory key 41, and "ESC" key are pressed and held for 1.5 seconds, the keyboard 100 transitions to state 68. State 68 is a state for notifying that the security key setting will be released. In state 68, the security mode of the keyboard 100 is set to the unlocked state. Also, in state 68, the security key is set. Also, in state 68, the keyboard 100 causes the LEDs 51a and 51b to flash green at 0.5 second intervals. When the LEDs 51a and 51b flash four times in state 68, the keyboard 100 transitions to state 61.
[0085] In this way, when the "Fn" key, memory key 41, and security key are pressed, the keyboard 100 transitions to a security key setting state. Then, when the power is turned off in the security key setting state, the keyboard 100 sets the input content to a locked state. When the input content is in the locked state, the keyboard 100 does not accept registration or deletion of the input content corresponding to the macro execution keys 42a, 42b, and 42c. This allows the keyboard 100 to prevent the input content corresponding to the macro execution keys 42a, 42b, and 42c from being overwritten by a user error or a third party's tampering.
[0086] Furthermore, when the "Fn" key, memory key 41, and the correct security key are pressed, the keyboard 100 releases the lock state of the input contents. This prevents the keyboard 100 from overwriting the input contents corresponding to the macro execution keys 42a, 42b, and 42c by anyone other than the user who set the lock state. Next, we will explain how to register and delete input contents in the security key setting state.
[0087] 9 is a diagram showing an example of a keyboard state transition diagram when registering and deleting input content in a security key setting state. State 69 is a state in which a security key is set and the keyboard is ready to accept the start of registration and deletion of input content corresponding to macro execution keys 42a, 42b, and 42c. When the "Fn" key, memory key 41, and the correct security key are pressed in state 71 in which the input content is set to a locked state, keyboard 100 transitions to state 69 via state 67.
[0088] In state 69, if the memory key 41 and any one of the macro execution keys 42a, 42b, and 42c are pressed and held for 1.5 seconds, the keyboard 100 transitions to state 73. State 73 is a security key setting state in which the keyboard 100 accepts registration of the input corresponding to the pressed macro execution key.
[0089] In state 73, the security mode of the keyboard 100 is set to an unlocked state. Also, in state 73, a security key is set. Also, in state 73, the keyboard 100 causes the LEDs 51a and 51b to flash green alternately at 0.5 second intervals. The keyboard 100 registers the keys pressed in state 73 and the order in which they were pressed in the correspondence information 111 as input content corresponding to the macro execution key pressed when transitioning to state 73. Note that the keyboard 100 can register up to 50 keys corresponding to one macro execution key in the correspondence information 111.
[0090] In state 73, if the memory key 41 is pressed within 180 seconds after transition to state 73, the keyboard 100 transitions to state 74. State 74 is a state for notifying that registration of input contents is completed. In state 74, the security mode of the keyboard 100 is set to the unlocked state. Also, in state 74, a security key is set. Also, in state 74, the keyboard 100 causes the LEDs 51a and 51b to flash green at 0.5-second intervals. Also, in state 74, the keyboard 100 confirms the input contents registered in the correspondence information 111 in state 73. In state 74, if the LEDs 51a and 51b flash twice, the keyboard 100 transitions to state 69.
[0091] Furthermore, in state 73, if the number of pressed keys reaches 51 or more, keyboard 100 transitions to state 75. Note that keyboard 100 does not register the 51st and subsequent keys pressed in state 73 in correspondence information 111. State 75 is a state for notifying that the registration of input content has ended because the upper limit of the number of keys that can be registered has been exceeded.
[0092] In state 75, the security mode of the keyboard 100 is set to an unlocked state. Also, in state 75, a security key is set. Also, in state 75, the keyboard 100 does not emit light from the LED 51a. Also, in state 75, the keyboard 100 blinks the LED 51b in red at 0.5 second intervals. Also, in state 75, the keyboard 100 confirms the input content registered in the correspondence information 111 in state 73. When the LED 51b blinks three times in state 75, the keyboard 100 transitions to state 69.
[0093] Furthermore, when 180 seconds have elapsed in state 73, the keyboard 100 transitions to state 76. State 76 is a state for notifying that registration of input contents has ended due to a timeout.
[0094] In state 76, the security mode of the keyboard 100 is set to an unlocked state. Also, in state 76, a security key is set. Also, in state 76, the keyboard 100 does not emit light from the LED 51a. Also, in state 76, the keyboard 100 blinks the LED 51b in red at 0.5 second intervals. Also, in state 76, the keyboard 100 confirms the input content registered in the correspondence information 111 in state 73. When the LED 51b blinks three times in state 76, the keyboard 100 transitions to state 69.
[0095] In state 69, if the memory key 41, the "ESC" key, and the "delete" key are pressed and held for three seconds, the keyboard 100 transitions to state 77. State 77 is a security key setting state in which the input content registered in the correspondence information 111 is deleted.
[0096] In state 77, the security mode of the keyboard 100 is set to an unlocked state. Also, in state 77, a security key is set. Also, in state 77, the keyboard 100 causes the LEDs 51a and 51b to flash green at 0.5-second intervals. Also, in state 77, the keyboard 100 deletes the input contents corresponding to the macro execution keys 42a, 42b, and 42c registered in the correspondence information 111. When the LEDs 51a and 51b flash five times in state 77, the keyboard 100 transitions to state 69.
[0097] Furthermore, in state 69, if the "Fn" key, memory key 41, and "ESC" key are pressed and held for 1.5 seconds, the keyboard 100 transitions to state 61, in which no security key is set, via state 68. Furthermore, in state 69, if there is no operation for 10 minutes or the power switch of the keyboard 100 is pressed, the keyboard 100 transitions to state 70, in which it is locked.
[0098] In this way, by releasing the input content lock state, the keyboard 100 can accept registration and deletion of input content corresponding to the macro execution keys 42a, 42b, and 42c even in the security key setting state. After accepting registration and deletion of input content in the security key setting state, the keyboard 100 is set to the lock state if no operation is performed for 10 minutes or if the power switch of the keyboard 100 is pressed. As a result, once a security key is set, the keyboard 100 automatically enters the input content lock state, making it easy to set the lock state. Below, the processing procedure executed by the keyboard 100 will be described in detail.
[0099] 10 is a flowchart showing an example of the procedure for input reception processing. The processing shown in FIG. 10 will be described below in order of step number. [Step S11] The input control unit 120 determines whether a key press has been accepted. If the input control unit 120 determines that a key press has been accepted, the process proceeds to step S12. If the input control unit 120 determines that a key press has not been accepted, the process proceeds to step S19.
[0100] [Step S12] The input control unit 120 determines whether the keys whose pressing has been accepted in step S11 include the memory key 41. If the input control unit 120 determines that the keys whose pressing has been accepted include the memory key 41, it proceeds to step S13. If the input control unit 120 determines that the keys whose pressing has been accepted do not include the memory key 41, it proceeds to step S14.
[0101] [Step S13] The setting unit 130 executes key setting processing for the macro execution keys 42a, 42b, and 42c. Details of the key setting processing will be described later (see FIGS. 11 and 12). Then, the processing proceeds to step S11.
[0102] [Step S14] The input control unit 120 determines whether or not the macro execution key 42a, 42b, or 42c was pressed in step S11. If the input control unit 120 determines that the macro execution key 42a, 42b, or 42c was pressed, the process proceeds to step S16. If the input control unit 120 determines that the macro execution key 42a, 42b, or 42c was not pressed, the process proceeds to step S15.
[0103] [Step S15] The input control unit 120 notifies the PC 200 that the keys pressed in step S11 have been pressed. If a combination of multiple keys is pressed in step S11, the input control unit 120 notifies the PC 200 that the keys in that combination have been pressed. Then, the process proceeds to step S11.
[0104] [Step S16] The input control unit 120 notifies the PC 200 that the first key corresponding to the macro execution key pressed in step S11 has been pressed. For example, the input control unit 120 refers to the input content corresponding to the macro execution key pressed in step S11 in the correspondence information 111 and identifies the first registered key. The input control unit 120 then notifies the PC 200 that the identified key has been pressed. Note that if a combination of multiple keys is registered in the correspondence information 111 as the first key corresponding to the macro execution key pressed in step S11, the input control unit 120 notifies the PC 200 that the key combination has been pressed. Furthermore, if a predetermined process is registered in the correspondence information 111 as the first key corresponding to the macro execution key pressed in step S11, the input control unit 120 executes the process.
[0105] [Step S17] The input control unit 120 determines whether or not all of the input contents corresponding to the macro execution keys pressed in step S11 have been notified to the PC 200. If the input control unit 120 determines that all of the input contents corresponding to the macro execution keys pressed in step S11 have been notified to the PC 200, it proceeds to step S11. If the input control unit 120 determines that all of the input contents corresponding to the macro execution keys pressed in step S11 have not been notified to the PC 200, it proceeds to step S18.
[0106] [Step S18] The input control unit 120 notifies the PC 200 that the next key corresponding to the macro execution key pressed in step S11 has been pressed. For example, the input control unit 120 references the input content corresponding to the macro execution key pressed in step S11 in the correspondence information 111 and identifies the key registered next to the key notified of being pressed in the previous step S16 or step S18. The input control unit 120 then notifies the PC 200 that the identified key has been pressed. Note that if a combination of multiple keys is registered in the correspondence information 111 as the next key corresponding to the macro execution key pressed in step S11, the input control unit 120 notifies the PC 200 that the key combination has been pressed. Furthermore, if a predetermined process is registered in the correspondence information 111 as the next key corresponding to the macro execution key pressed in step S11, the input control unit 120 executes the process. The process then proceeds to step S17.
[0107] [Step S19] The input control unit 120 determines whether or not there has been no operation for a predetermined time (e.g., 10 minutes) or whether or not the power switch of the keyboard 100 has been pressed. If the input control unit 120 determines that there has been no operation for the predetermined time or that the power switch of the keyboard 100 has been pressed, the process proceeds to step S20. If the input control unit 120 determines that there has been an operation within the predetermined time and that the power switch of the keyboard 100 has not been pressed, the process proceeds to step S11.
[0108] [Step S20] The setting unit 130 determines whether the input content indicates an unlocked state and a security key is set. If the setting unit 130 determines that the input content indicates an unlocked state and a security key is set, the process proceeds to step S21. If the setting unit 130 determines that the input content indicates a locked state or that a security key is not set, the setting unit 130 turns off the power to the keyboard 100 and ends the process.
[0109] [Step S21] The setting unit 130 locks the input contents of the correspondence information 111. Then, the setting unit 130 turns off the power to the keyboard 100. In this way, when a key other than the memory key 41 and the macro execution keys 42a, 42b, and 42c is pressed, the input control unit 120 notifies the PC 200 that the key has been pressed. Also, when a macro execution key 42a, 42b, or 42c is pressed, the input control unit 120 notifies the PC 200 of the input content that is associated with the pressed macro execution key and registered in the correspondence information 111. This allows the input control unit 120 to make input operations more efficient.
[0110] 11 is a flowchart (part 1) showing an example of the procedure of the key setting process. The process shown in FIG. 11 will be explained below in order of step number. [Step S31] The setting unit 130 determines whether the pressed keys are a long press of the memory key 41 and any of the macro execution keys 42a, 42b, and 42c. If the setting unit 130 determines that the pressed keys are a long press of the memory key 41 and any of the macro execution keys 42a, 42b, and 42c, the processing proceeds to step S32. If the setting unit 130 determines that the pressed keys are not a long press of the memory key 41 and any of the macro execution keys 42a, 42b, and 42c, the processing proceeds to step S34.
[0111] [Step S32] The setting unit 130 determines whether the input content is set to a locked state. If the setting unit 130 determines that the input content is set to a locked state, it ends the processing. If the setting unit 130 determines that the input content is not set to a locked state, it proceeds to step S33.
[0112] [Step S33] The setting unit 130 executes a registration process for the input content corresponding to the pressed macro execution key. The registration process will be described in detail later (see FIG. 13). Then, the process ends.
[0113] [Step S34] The setting unit 130 determines whether the pressed keys are a long press of the memory key 41, the "ESC" key, and the "delete" key. If the setting unit 130 determines that the pressed keys are a long press of the memory key 41, the "ESC" key, and the "delete" key, the processing proceeds to step S35. If the setting unit 130 determines that the pressed keys are not a long press of the memory key 41, the "ESC" key, and the "delete" key, the processing proceeds to step S37.
[0114] [Step S35] The setting unit 130 determines whether the input content is set to a locked state. If the setting unit 130 determines that the input content is set to a locked state, it ends the processing. If the setting unit 130 determines that the input content is not set to a locked state, it proceeds to step S36.
[0115] [Step S36] The setting unit 130 deletes the input contents corresponding to each macro execution key, which are registered in the correspondence information 111. Then, the process ends. [Step S37] The setting unit 130 determines whether the pressed keys are a combination of the "Fn" key, the memory key 41, and any of the "F1" to "F12" keys. If the setting unit 130 determines that the pressed keys are a combination of the "Fn" key, the memory key 41, and any of the "F1" to "F12" keys, the processing proceeds to step S38. If the setting unit 130 determines that the pressed keys are not a combination of the "Fn" key, the memory key 41, and any of the "F1" to "F12" keys, the processing proceeds to step S40.
[0116] [Step S38] The setting unit 130 determines whether the security key is set to the set state. If the setting unit 130 determines that the security key is set to the set state, it ends the process. If the setting unit 130 determines that the security key is not set to the set state, it proceeds to step S39.
[0117] [Step S39] The setting unit 130 sets the pressed key from among the "F1" to "F12" keys as the security key, and then the process ends. [Step S40] The setting unit 130 determines whether the pressed keys are a long press of the "Fn" key, memory key 41, and "ESC" key. If the setting unit 130 determines that the pressed keys are a long press of the "Fn" key, memory key 41, and "ESC" key, the processing proceeds to step S41. If the setting unit 130 determines that the pressed keys are not a long press of the "Fn" key, memory key 41, and "ESC" key, the processing proceeds to step S43.
[0118] [Step S41] The setting unit 130 determines whether the input content is set to an unlocked state and a security key set state. If the setting unit 130 determines that the input content is set to an unlocked state and a security key set state, it proceeds to step S42. If the setting unit 130 determines that the input content is set to a locked state or that a security key has not been set, it ends the process.
[0119] [Step S42] The setting unit 130 cancels the security key setting state, and the process ends. 12 is a flowchart (part 2) showing an example of the procedure of the key setting process. The process shown in FIG. 12 will be explained below in order of step number.
[0120] [Step S43] The setting unit 130 determines whether the pressed keys are a long press of the "Fn" key, the memory key 41, or any of the "F1" to "F12" keys. If the setting unit 130 determines that the pressed keys are a long press of the "Fn" key, the memory key 41, or any of the "F1" to "F12" keys, the processing proceeds to step S44. If the setting unit 130 determines that the pressed keys are not a long press of the "Fn" key, the memory key 41, or any of the "F1" to "F12" keys, the processing ends.
[0121] [Step S44] The setting unit 130 determines whether the input content is set to a locked state. If the setting unit 130 determines that the input content is set to a locked state, the process proceeds to step S45. If the setting unit 130 determines that the input content is not set to a locked state, the process ends.
[0122] [Step S45] The setting unit 130 determines whether the security key is correct. For example, if the pressed "F1" to "F12" key is the same as the set security key, the setting unit 130 determines that the security key is correct. If the setting unit 130 determines that the security key is correct, the process proceeds to step S46. If the setting unit 130 determines that the security key is incorrect, the process proceeds to step S47.
[0123] [Step S46] The setting unit 130 releases the lock on the input content, and the process ends. [Step S47] The setting unit 130 turns on the LED indicating an error. For example, the setting unit 130 turns on the LED 51b in red at 0.5-second intervals.
[0124] In this way, when a key including the memory key 41 is pressed, the setting unit 130 sets the macro execution keys 42a, 42b, and 42c. When the memory key 41 and one of the macro execution keys 42a, 42b, and 42c are pressed and held down, the setting unit 130 executes a registration process for the input content corresponding to the pressed macro execution key if the input content is in an unlocked state. Furthermore, the setting unit 130 does not execute the registration process if the input content is in a locked state. This allows the setting unit 130 to prevent the input content corresponding to the macro execution keys 42a, 42b, and 42c from being overwritten by a user error or a third party's mischief. Therefore, the setting unit 130 can improve the security of the macro function of the keyboard 100.
[0125] Furthermore, when the memory key 41, the "ESC" key, or the "delete" key is pressed and held, the setting unit 130 deletes the input contents corresponding to each macro execution key if the input contents are in an unlocked state, and does not execute the process of deleting the input contents if the input contents are in a locked state. This allows the setting unit 130 to prevent the input contents corresponding to the macro execution keys 42a, 42b, and 42c from being deleted due to a user's mistaken operation or a third party's mischief.
[0126] When a combination of the "Fn" key, the memory key 41, and any one of the "F1" to "F12" keys is pressed, the setting unit 130 sets the pressed "F1" to "F12" key as a security key. Then, when there is no operation for a predetermined time in the security key setting state or when the power switch of the keyboard 100 is pressed, the setting unit 130 sets the keyboard to a locked state. When the "Fn" key, the memory key 41, and any one of the "F1" to "F12" keys is pressed and held down in the locked state, the setting unit 130 releases the locked state if the pressed "F1" to "F12" key matches the security key.
[0127] This allows the setting unit 130 to prevent someone other than the user who set the locked state from releasing the locked state and overwriting the input contents corresponding to the macro execution keys 42a, 42b, and 42c. Furthermore, if the pressed "F1" to "F12" key does not match the security key, the setting unit 130 can notify the operator that the release of the locked state has failed by emitting an LED indicating an error.
[0128] 13 is a flowchart showing an example of the procedure of the registration process. The process shown in FIG. 13 will be explained below in order of step number. [Step S51] The setting unit 130 determines whether a predetermined time (e.g., 180 seconds) has elapsed since the start of the registration process. If the setting unit 130 determines that the predetermined time has elapsed since the start of the registration process, it proceeds to step S56. If the setting unit 130 determines that the predetermined time has not elapsed since the start of the registration process, it proceeds to step S52.
[0129] [Step S52] The setting unit 130 accepts key presses. The setting unit 130 may accept a combination of multiple key presses. The setting unit 130 may also accept button presses for configuring the keyboard 100.
[0130] [Step S53] The setting unit 130 determines whether the key pressed in step S52 is the memory key 41. If the setting unit 130 determines that the pressed key is the memory key 41, it proceeds to step S57. If the setting unit 130 determines that the pressed key is not the memory key 41, it proceeds to step S54.
[0131] [Step S54] The setting unit 130 determines whether the total number of keys registered in the registration process and the number of keys pressed in step S52 is equal to or less than the upper limit (e.g., 50) for the macro execution key to be registered. If the setting unit 130 determines that the total number of registered keys and the number of pressed keys is equal to or less than the upper limit, the processing proceeds to step S55. If the setting unit 130 determines that the total number of registered keys and the number of pressed keys is greater than the upper limit, the processing proceeds to step S56.
[0132] [Step S55] The setting unit 130 registers the key whose press is accepted in step S52 as the key next to the key pressed last time in the registration process in the input content of the correspondence information 111 corresponding to the macro execution key being registered. If the setting unit 130 accepts the first key press of the current registration process in step S52, the setting unit 130 overwrites the key whose press is accepted in step S52 in the correspondence information 111 as the first key corresponding to the macro execution key being registered. If the setting unit 130 accepts the press of a combination of multiple keys in step S52, the setting unit 130 registers the combination of multiple pressed keys in the correspondence information 111 as the key next to the key pressed last time. If the setting unit 130 accepts the press of a button for setting the keyboard 100 in step S52, the setting unit 130 registers the process corresponding to the pressed button in the correspondence information 111 as the key next to the key pressed last time. Then, the process proceeds to step S51.
[0133] [Step S56] The setting unit 130 turns on the LED to indicate that the process has ended in an error. For example, the setting unit 130 causes the LED 51b to flash red at 0.5-second intervals. Then, the process ends.
[0134] [Step S57] The setting unit 130 turns on the LEDs to indicate normal completion. For example, the setting unit 130 blinks the LEDs 51a and 51b in green at 0.5-second intervals. In this way, the setting unit 130 registers the keys pressed in the registration process and the order in which the keys were pressed as input content corresponding to the macro execution key that is the target of the registration process in the correspondence information 111. When the setting unit 130 receives input content that is frequently used in the registration process, it can set the input content so that it can be entered simply by pressing the macro execution keys 42a, 42b, and 42c, thereby making the input operation more efficient.
[0135] Furthermore, when a button for setting the keyboard 100 is pressed during the registration process, the setting unit 130 registers processing such as waiting for a predetermined time corresponding to the pressed button as input content corresponding to the macro execution key that is the target of the registration process in the correspondence information 111. This allows the setting unit 130 to set the timing of key input corresponding to the macro execution keys 42a, 42b, and 42c, such as waiting until the predetermined processing by the PC 200 is completed before entering the next key.
[0136] Furthermore, if the number of keys pressed in the registration process exceeds the registration upper limit or if a predetermined time has passed since the start of the registration process, the setting unit 130 causes an LED to light up, indicating an error termination. This allows the setting unit 130 to notify the user that the registration upper limit has been exceeded or a timeout has occurred, and that subsequent input content will not be registered.
[0137] According to the second embodiment, the keyboard 100 stores input contents registered in association with the macro execution keys 42a, 42b, and 42c. When a key other than the memory key 41 and the macro execution keys 42a, 42b, and 42c is pressed, the keyboard 100 notifies the PC 200 that the key has been pressed. When a macro execution key 42a, 42b, or 42c is pressed, the keyboard 100 notifies the PC 200 that the keys registered in association with the pressed macro execution key have been pressed in the registered pressing order. When a combination of the “Fn” key, the memory key 41, and a security key is pressed, the keyboard 100 locks the input contents. When the input contents are not locked, the keyboard 100 accepts the registration of the input contents when the memory key 41 or any of the macro execution keys 42a, 42b, and 42c is pressed. This allows the keyboard 100 to improve the security of the macro function of the keyboard 100.
[0138] Furthermore, when the combination of the "Fn" key, the memory key 41, and the security key is pressed, the keyboard 100 sets the input content to a locked state. When the combination of the "Fn" key, the memory key 41, and the security key is pressed while the input content is locked, the keyboard 100 releases the lock state of the input content. This allows the keyboard 100 to prevent the input content registered in association with the macro execution keys 42a, 42b, and 42c from being overwritten by a user other than the user who set the input content to the locked state.
[0139] Furthermore, when the input contents are not locked, pressing the combination of the memory key 41, the "ESC" key, and the "delete" key deletes the input contents, thereby preventing the keyboard 100 from deleting the input contents associated with the macro execution keys 42a, 42b, and 42c due to a user's mistake or a third party's mischief.
[0140] Although the embodiments have been described above, the configuration of each part shown in the embodiments can be replaced with other parts having similar functions. Any other components or processes may be added. Furthermore, any two or more configurations (features) of the above-described embodiments may be combined. [Explanation of symbols]
[0141] 1. Information processing equipment 10 Keyboard 11 Storage section 11a Pressing order 12 Connection 13 Processing section
Claims
1. a plurality of keys including general keys and macro execution keys; a storage unit that stores the pressing order of the general keys registered in association with the macro execution key; a connection unit for connecting to an information processing device; a processing unit that, when the general key is pressed, notifies the information processing device that the general key has been pressed, when the macro execution key is pressed, notifies the information processing device that the general keys registered in association with the macro execution key have been pressed in the pressing order, when a first combination of keys included in the plurality of keys is pressed, sets the pressing order to a locked state, and when the pressing order is not in the locked state, accepts registration of the pressing order when a second combination of keys included in the plurality of keys is pressed; A keyboard having:
2. the processing unit sets the pressing sequence to the locked state when the first combination, which is a combination of a predetermined third combination of keys included in the plurality of keys and a security key among the plurality of keys, is pressed, and releases the locked state of the pressing sequence when a combination of a predetermined fourth combination of keys included in the plurality of keys and the security key is pressed while the pressing sequence is in the locked state; The keyboard of claim 1.
3. when a fifth combination of keys included in the plurality of keys is pressed while the pressing sequence is not in the locked state, the processing unit deletes the registration of the pressing sequence. The keyboard of claim 1.
Citation Information
Patent Citations
Keyboard adapter
JP1995110731A
Portable terminal device, editing apparatus of its scenario data, scenario data editing method, and program
JP2009193455A
Keyboard having macro function, method for setting macro function related thereto and computer program product therefor
JP2012070035A
Input device having macro recording function, input system having macro recording function, and recording method of macro
JP2015079479A
Keyboard with programmable keys
US20060284847A1