A keyboard signal processing system and method
By combining a signal source, storage unit, processor, and embedded controller, the problem of non-standard keyboard scan codes not being recognized by the operating system is solved, enabling reliable processing of keyboard signals and ensuring that virtual or special keyboard key signals can be correctly recognized and executed.
Patent Information
- Application Number
- CN202110843981.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-26
- Publication Date
- 2025-12-30
- Estimated Expiration
- 2041-07-26
AI Technical Summary
In the existing technology, the keyboard scan codes of non-standard keyboards cannot be recognized in the operating system through software or drivers, causing certain keys or key combinations to fail to trigger the corresponding functions.
By employing a combination of signal source, storage unit, processor and embedded controller, simulated key signals are converted into keyboard scanning signals through a key mapping table and transmitted to the operating system through a low pin count interface, thus achieving reliable processing of keyboard signals.
It improves the reliability of keyboard signal processing, enabling the operating system to correctly recognize and execute the corresponding functions of key signals from virtual or special keyboards.
Smart Images

Figure CN115686225B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer control technology, and in particular to a keyboard signal processing system and method. Background Technology
[0002] The widespread use of various calculator devices has also impacted the underlying control behavior of these input devices. Current keyboards use a key scan code recognition mechanism, with each key corresponding to a unique scan code. However, non-standard keyboards are used to meet the needs of special machines, such as Automated Teller Machines (ATMs) or virtual machines (VMs). These non-standard keyboards also employ non-standard key scan codes.
[0003] For the aforementioned non-standard keyboard scan codes, methods such as drivers or plug-ins may be used to enable the operating system to recognize the keys and their corresponding keyboard scan codes. However, due to the operating system's access limitations, certain keys (or key combinations) cannot obtain their corresponding keyboard scan codes through software or drivers, thus preventing the triggering of the corresponding functions of those keys. Summary of the Invention
[0004] This invention provides a keyboard signal processing system and method that can improve the reliability of keyboard signal processing.
[0005] In a first aspect, embodiments of the present invention provide a keyboard signal processing system, comprising:
[0006] A signal source is used to generate input key signals;
[0007] Storage unit, used to store monitoring programs and operating system;
[0008] A processor for executing the monitoring program and the operating system; and
[0009] An embedded controller is provided with a key mapping table, which contains the correspondence between the input key signals and the keyboard scan signals; wherein the keyboard scan signals include multiple keyboard scan signals.
[0010] When the processor executes the monitoring program, it determines whether the input key signal is a simulated key signal or a keyboard scan signal. If it is a simulated key signal, it sends the simulated key signal to the embedded controller. The embedded controller then looks up the keyboard scan signal corresponding to the simulated key signal in the key mapping table and sends the keyboard scan signal to the operating system.
[0011] Furthermore, the signal source is a virtual keyboard, a special-purpose keyboard, or a physical keyboard.
[0012] Furthermore, if the input key signal is the keyboard scan signal, then the keyboard scan signal is sent to the operating system.
[0013] Furthermore, it also includes: a low pin count interface; the low pin count interface is coupled between the processor and the embedded controller for transmitting the input key signals.
[0014] Furthermore, the storage unit also stores a target program; the processor executes the target program;
[0015] When the processor executes the target program, it receives the keyboard scan signal from the operating system and executes the corresponding set function according to the keyboard scan signal.
[0016] Secondly, embodiments of the present invention also provide a method for processing keyboard signals, comprising:
[0017] Generate input key signals;
[0018] Determine whether the input key signal is a simulated key press signal or a keyboard scan signal;
[0019] If it is the simulated key signal, then look up the keyboard scan signal corresponding to the simulated key signal according to the key mapping table;
[0020] The keyboard scanning signal is processed.
[0021] Furthermore, after determining that the input key signal is a simulated key press signal or a keyboard scan signal, the method further includes:
[0022] If the input key signal is the keyboard scan signal, then the keyboard scan signal is processed directly.
[0023] Furthermore, processing the keyboard scanning signal also includes:
[0024] The corresponding set function is executed according to the keyboard scan signal.
[0025] This invention discloses a keyboard signal processing system and method. It includes: a signal source for generating input key signals; a storage unit for storing a monitoring program and an operating system; a processor for executing the monitoring program and the operating system; and an embedded controller with a key mapping table containing the correspondence between input key signals and keyboard scan signals; wherein the keyboard scan signals include multiple keyboard scan signals; when the processor executes the monitoring program, it determines whether the input key signal is a simulated key signal or a keyboard scan signal. If it is a simulated key signal, the simulated key signal is sent to the embedded controller; the embedded controller then controls the key mapping table to find the corresponding keyboard scan signal for the simulated key signal and sends the keyboard scan signal to the operating system. The keyboard signal processing system provided by this invention, when the monitoring program determines that the input key signal is a simulated key signal, allows the embedded controller to find the corresponding keyboard scan signal from the key mapping table, enabling the input key signals sent by the virtual interface to be processed, thus improving the reliability of keyboard signal processing. Attached Figure Description
[0026] Figure 1 This is a schematic diagram of the structure of a keyboard signal processing system according to Embodiment 1 of the present invention;
[0027] Figure 2 This is a schematic diagram of the working principle of the keyboard signal processing system in Embodiment 1 of the present invention;
[0028] Figure 3 This is a schematic diagram of the structure of a keyboard signal processing system according to Embodiment 1 of the present invention;
[0029] Figure 4 This is an example diagram illustrating the working principle of the keyboard signal processing system in Embodiment 1 of the present invention;
[0030] Figure 5 This is an example diagram illustrating the working principle of the keyboard signal processing system in Embodiment 1 of the present invention;
[0031] Figure 6 This is a flowchart of a keyboard signal processing method according to Embodiment 1 of the present invention. Detailed Implementation
[0032] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and not intended to limit it. Furthermore, it should be noted that, for ease of description, the accompanying drawings show only the parts relevant to the present invention, and not all of the structures.
[0033] Example 1
[0034] The keyboard signal processing system provided in this embodiment can be applied to Microsoft's Windows operating system series, Apple's OSX operating system series, or other UNIX (Uniplexed Information and Computing Service) operating systems, and is not limited here.
[0035] Figure 1 This is a schematic diagram of a keyboard signal processing system provided in Embodiment 1 of the present invention, as shown below. Figure 1 As shown, the system includes a signal source 110 and a computer 120. The computer 120 receives input key signals sent by the signal source 110. The computer 120 includes a storage unit 121, a processor 122, and an embedded controller 123. The processor 122 is coupled to the storage unit 121 and the embedded controller 123. The storage unit 121 stores a monitoring program 124, an operating system 125, and a target program 126. The processor 122 executes the monitoring program 124, the operating system 125, and the target program 126.
[0036] For example, Figure 2 This is a schematic diagram illustrating the working principle of the keyboard signal processing system in this embodiment of the invention. The signal source 110 generates input key signals based on an input request. The input request can be an input operation performed by the user on the keys provided by the signal source 110 during local operation or remote connection, such as clicking. In some embodiments, the signal source 110 can be a physical keyboard 111 (e.g., a general QWERTY keyboard or Dvorak keyboard), a virtual keyboard 112, or a special-purpose physical keyboard 113 (hereinafter referred to as special-purpose keyboard 113 to distinguish it from the physical keyboard 111). The special-purpose keyboard 113 can be applied to devices such as interactive information service stations (KIOSK), automatic teller machines, and point-of-sale checkout machines.
[0037] If the signal source 110 is a physical keyboard 111 or a special-purpose keyboard 113, the computer 120 can be connected to the physical keyboard 111 or the special-purpose keyboard 113 through a standard keyboard driver (Standard PS / 2 Keyboard driver, PS / 2) or a Universal Serial Bus (USB) port. If the signal source 110 is a virtual keyboard 112, the processor 122 executes the target program 126 to enable the corresponding virtual keyboard 112, so that the operating system 125 or the target program 126 can obtain input key signals.
[0038] The input key signal can be a single key signal or a combination of key signals. That is, the signal source 110 has one or more keys (e.g., physical keys and / or virtual keys). The signal source 110 generates the input key signal of the triggered key in response to a user's trigger operation (e.g., selection) on one or more keys.
[0039] Input key signals can be categorized into keyboard scan signals (key scan code) and virtual key codes based on the type of signal source 110. When a user presses a key on the physical keyboard 111, the physical keyboard 111 generates a keyboard scan signal. The keyboard scan signal of the physical keyboard 111 is responded to by the operating system 125. The virtual keyboard 112 can be a key interface provided by the operating system 125 (or the target program 126). The virtual key code is responded to by the operating system 125, therefore the virtual key code is subject to the call restrictions of the operating system 125 or the driver 311.
[0040] For example, an interactive information service station (i.e., computer 120 in this embodiment) is set up in a chain store to allow consumers to operate corresponding services. The interactive information service station provides a virtual keyboard 112 for touch screen or a physical custom keyboard 113. The keys on the custom keyboard 113 correspond to different function options. The function options can correspond to the corresponding shortcut keys (or key combinations) of the operating system 125 or the target program 126. For example, the input key signal of the "Cancel" key on the custom keyboard 113 can correspond to "Ctrl+F12" on the physical keyboard 111.
[0041] Under different operating systems, the monitoring program 124 can be implemented as a driver 311 or an application programming interface (API) 312. When the processor 122 executes the monitoring program 124, it receives input key signals and determines the target object for forwarding based on the type of input key signals. Specifically, the processor 122, through the executed monitoring program 124, determines whether the input key signals are simulated key signals or keyboard scan signals based on the content of the input key signals (e.g., package format or voltage level) or the type of signal source 110, and then determines the target object for forwarding based on the determination result. Taking the interactive information service station mentioned above as an example, the processor 122, through the executed monitoring program 124, treats the input key signals emitted by the virtual keyboard on the touch screen as simulated key signals.
[0042] The embedded controller 123 has a key mapping table. The key mapping table includes multiple keyboard scan signals and their corresponding input key signals. In other words, in the key mapping table, each type of input key signal is associated with a corresponding keyboard scan signal. The embedded controller 123 searches the key mapping table to obtain the corresponding keyboard scan signal based on the input key signals sent by the monitoring program 124. Furthermore, the embedded controller 123 sends the found keyboard scan signal to the operating system 125, so that the operating system 125 executes the corresponding setting function or drives the setting function corresponding to the target program 126. For example, the setting function might be copy (corresponding to Ctrl+C), paste (corresponding to Ctrl+V), print (corresponding to Ctrl+Print), or close the application (corresponding to Alt+F4), etc.
[0043] In some embodiments, the keyboard signal processing system further includes a low pin count (LPC) interface 310, such as... Figure 3 As shown, a low pin count interface 310 is coupled between the processor 122 and the embedded controller 123. The low pin count interface 310 is used to transmit input key signals between the processor 122 and the embedded controller 123. The monitoring program 124 transmits the simulated key input signals to the embedded controller 123 through the communication port number provided by the low pin count interface 310. The communication port number of the low pin count interface 310 can be, but is not limited to, "60 / 64", "62 / 66", or "68 / 6C". The embedded controller 123 locates the corresponding keyboard scan signal based on the simulated key signals.
[0044] The embedded controller 123 sends a keyboard scan signal to the processor 122 via a low-pin-count interface 310. The processor 122 then sends the keyboard scan signal to the operating system 125. The operating system 125 forwards the keyboard scan signal to a target object. The target object can be the operating system 125 itself or a target program 126 executed under the operating system 125. Regardless of the type of signal source 110, the signal ultimately received by the operating system 125 is a keyboard scan signal. Therefore, even if it is an input key signal corresponding to a simulated key press, the operating system 125 can recognize and execute it.
[0045] Taking the application operating the remote desktop 521 as an example, the local computer 510 is connected to the remote computer 520 via the network, allowing the local desktop 511 of the local computer 510 to display the desktop screen of the remote computer 520, such as... Figure 4 and Figure 5As shown. The window displayed on the local computer 510 is the desktop of the remote computer 520, hereinafter referred to as remote desktop 521. Therefore, remote desktop 521 and target program 126 can be displayed on the screen of the local computer 510.
[0046] Reference Figure 5 The remote calculator 520 provides a set of virtual keypads 522 and a target program 126, so that the remote desktop 521 displays a user interface of the virtual keypads 522 and the target program 126. The virtual keypads 522 have multiple numeric keys and function keys. When the user selects a key in the virtual keypads 522 with the cursor, the remote calculator 520 generates the corresponding input key signal according to the input requirement. Alternatively, the keys of the physical keyboard 111 of the local calculator 510 can be mapped to the keys in the virtual keypads 522. For the remote calculator 520, the signal source 110 is the virtual keyboard 112 (i.e., the virtual keypads 522). Therefore, whether the user selects the virtual keypads 522 or presses the physical keyboard 111, for the remote calculator 520, the input key signal belongs to the virtual key code (i.e., it is judged as a simulated key signal).
[0047] Assume that the function keys "Ctrl+F1" and "Ctrl+F2" correspond to functions A and B of target program 126, respectively. When the user selects "Ctrl" and "F1" on the virtual keypad 522, the monitoring program 124 of the remote calculator 520 will receive the input key signals. Figure 5 In Chinese, the selected button and its corresponding function options are indicated by a thick black border.
[0048] When the user presses any key in the virtual keypad 522, the monitoring program 124 treats the input key signal as a simulated key signal. The monitoring program 124 forwards the simulated key signal to the embedded controller 123. The embedded controller 123 outputs the corresponding keyboard scan signal to the operating system 125, so that the operating system 125 of the remote calculator 520 believes that the input key signal is issued by the physical keyboard 111 of the local calculator 510. The operating system 125 transmits the "Ctrl+F1" keyboard scan signal to the target program 126 to trigger and execute function A.
[0049] In summary, the keyboard signal processing system provided in this embodiment can recognize key signals emitted by the virtual keyboard 112 or the special keyboard 113 in the operating system 125 or the target program 126, and execute the preset functions of the corresponding key signals. This system can be applied in existing hardware architectures. The monitoring program 124 sends actual keyboard scanning signals to the operating system 125 (or the target program 126) through the embedded controller 123, so that the input key signals emitted by the virtual keyboard 112 or the special keyboard 113 can be regarded by the operating system 125 (or the target program 126) as keyboard scanning signals emitted by the physical keyboard 111. Therefore, the corresponding functions of the operating system 125 (or the target program 126) can be triggered by simulating key signals.
[0050] This invention provides a keyboard signal processing system. It includes: a signal source for generating input key signals; a storage unit for storing a monitoring program and an operating system; a processor for executing the monitoring program and the operating system; and an embedded controller with a key mapping table containing the correspondence between input key signals and keyboard scan signals. The keyboard scan signals include multiple keyboard scan signals. When the processor executes the monitoring program, it determines whether the input key signal is a simulated key signal or a keyboard scan signal. If it is a simulated key signal, the simulated key signal is sent to the embedded controller. The embedded controller then controls the key mapping table to find the corresponding keyboard scan signal for the simulated key signal and sends the keyboard scan signal to the operating system. In this keyboard signal processing system, when the monitoring program determines that the input key signal is a simulated key signal, the embedded controller searches the key mapping table for the corresponding keyboard scan signal, enabling the input key signals sent by the virtual interface to be processed, thus improving the reliability of keyboard signal processing.
[0051] Example 2
[0052] Figure 6 This is a flowchart of a keyboard signal processing method provided in Embodiment 2 of the present invention. The method is executed by the keyboard signal processing system provided in the above embodiments, such as... Figure 6 As shown, the method includes the following steps:
[0053] Step 210: Generate input key signals.
[0054] Step 220: Determine whether the input key signal is a simulated key signal or a keyboard scanning signal.
[0055] Step 230: If it is a simulated key signal, then find the keyboard scan signal corresponding to the simulated key signal according to the key mapping table.
[0056] Step 240: Process the keyboard scan signal.
[0057] Processing the keyboard scan signal can be understood as executing the corresponding set function based on the keyboard scan signal.
[0058] In this embodiment, the processor 122 starts the operating system 125 and executes the monitoring program 124. The monitoring program 124 detects whether the signal source 110 emits any input key signals. If the signal source 110 detects an input operation, the signal source 110 generates a corresponding input key signal based on the input operation. The monitoring program 124 receives the input key signals from the signal source 110.
[0059] In some embodiments, if the operating system 125 is a UNIX operating system, the monitoring program 124 can receive the input key signals from the signal source terminal 110 through the interface of the driver 311 or API 312, and then determine whether the type of the input key signal is a simulated key signal or a keyboard scanning signal.
[0060] In another example, if the operating system 125 is a Windows operating system, the monitoring program 124 can communicate with the embedded controller 123 in the following ways, such as through the interface of the Windows operating system's API 312 or the Windows Management Instrumentation Command-line (WMIC). When the monitoring program 124 receives an input key signal through its API 312 interface, the monitoring program 124 determines whether the input key signal is a simulated key signal or a keyboard scan signal.
[0061] If the input key signal is a simulated key signal, the monitoring program 124 forwards the simulated key signal to the embedded controller 123. The embedded controller 123 looks up the key mapping table according to the simulated key signal and obtains the corresponding keyboard scan signal. The embedded controller 123 sends the keyboard scan signal to the operating system 125, so that the operating system 125 executes the corresponding setting function according to the keyboard scan signal. In some embodiments, when the processor 122 executes the target program 126 under the operating system 125, the operating system 125 forwards the obtained keyboard scan signal to the target program 126, so that the target program 126 executes the corresponding setting function according to the keyboard scan signal. Taking the target program 126 as an ATM as an example, the target program 126 provides several virtual buttons for quick withdrawal. The virtual buttons will correspond to different preset functions and key combinations.
[0062] If the input key signal is a keyboard scan signal, the monitoring program 124 sends the keyboard scan signal to the operating system 125, so that the operating system 125 executes the corresponding setting function according to the keyboard scan signal.
[0063] The technical solution of this embodiment generates input key signals; determines whether the input key signals are simulated key signals or keyboard scan signals; if they are simulated key signals, it looks up the corresponding keyboard scan signal according to the key mapping table; and processes the keyboard scan signal. When it is determined that the input key signals are simulated key signals, the keyboard scan signal corresponding to the simulated key signals is looked up from the key mapping table, so that the input key signals sent by the virtual interface can be processed, improving the reliability of keyboard signal processing.
[0064] Note that the above description is merely a preferred embodiment of the present invention and the technical principles employed. Those skilled in the art will understand that the present invention is not limited to the specific embodiments described herein, and various obvious changes, readjustments, and substitutions can be made without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in detail through the above embodiments, the present invention is not limited to the above embodiments, and may include many other equivalent embodiments without departing from the concept of the present invention, the scope of which is determined by the scope of the appended claims.
Claims
1. A system for processing keyboard signals, characterized by The application relates to a signal source for generating an input key signal, a storage unit for storing a monitoring program and an operating system, a processor for executing the monitoring program and the operating system, and an embedded controller provided with a key position corresponding table containing the corresponding relationship between the input key signal and a keyboard scanning signal, wherein the keyboard scanning signal comprises a plurality of keyboard scanning signals. When the processor executes the monitoring program, the input key signal is determined to be an emulated key signal or the keyboard scanning signal, and if the input key signal is the emulated key signal, the emulated key signal is sent to the embedded controller; the embedded controller looks up the keyboard scanning signal corresponding to the emulated key signal from the key position corresponding table and sends the keyboard scanning signal to the operating system. The signal source is a virtual keyboard, a special keyboard or a physical keyboard. If the input key signal is the keyboard scanning signal, the keyboard scanning signal is sent to the operating system. The application further comprises a low-pin-count interface connected between the processor and the embedded controller for transmitting the input key signal. The storage unit further stores a target program; the processor executes the target program. When the processor executes the target program, the keyboard scanning signal from the operating system is received, and the corresponding setting function is executed according to the keyboard scanning signal.
2. The system of claim 1, wherein, The application relates to a signal source for generating an input key signal, a storage unit for storing a monitoring program and an operating system, a processor for executing the monitoring program and the operating system, and an embedded controller provided with a key position corresponding table containing the corresponding relationship between the input key signal and a keyboard scanning signal, wherein the keyboard scanning signal comprises a plurality of keyboard scanning signals.
3. The system of claim 1, wherein, When the processor executes the monitoring program, the input key signal is determined to be an emulated key signal or the keyboard scanning signal, and if the input key signal is the emulated key signal, the emulated key signal is sent to the embedded controller; the embedded controller looks up the keyboard scanning signal corresponding to the emulated key signal from the key position corresponding table and sends the keyboard scanning signal to the operating system.
4. The system of claim 1, wherein, The signal source is a virtual keyboard, a special keyboard or a physical keyboard. If the input key signal is the keyboard scanning signal, the keyboard scanning signal is sent to the operating system.
5. The system of claim 1, wherein, The application further comprises a low-pin-count interface connected between the processor and the embedded controller for transmitting the input key signal. The storage unit further stores a target program; the processor executes the target program.
6. A method of processing keyboard signals, characterized by When the processor executes the target program, the keyboard scanning signal from the operating system is received, and the corresponding setting function is executed according to the keyboard scanning signal. The application relates to a signal source for generating an input key signal, a storage unit for storing a monitoring program and an operating system, a processor for executing the monitoring program and the operating system, and an embedded controller provided with a key position corresponding table containing the corresponding relationship between the input key signal and a keyboard scanning signal, wherein the keyboard scanning signal comprises a plurality of keyboard scanning signals. When the processor executes the monitoring program, the input key signal is determined to be an emulated key signal or the keyboard scanning signal, and if the input key signal is the emulated key signal, the emulated key signal is sent to the embedded controller; the embedded controller looks up the keyboard scanning signal corresponding to the emulated key signal from the key position corresponding table and sends the keyboard scanning signal to the operating system. The signal source is a virtual keyboard, a special keyboard or a physical keyboard. If the input key signal is the keyboard scanning signal, the keyboard scanning signal is sent to the operating system.
7. The method of claim 6, wherein, The application further comprises a low-pin-count interface connected between the processor and the embedded controller for transmitting the input key signal. The storage unit further stores a target program; the processor executes the target program.
8. The method according to claim 6 or 7, characterized in that, When the processor executes the target program, the keyboard scanning signal from the operating system is received, and the corresponding setting function is executed according to the keyboard scanning signal.
Citation Information
Patent Citations
Dynamic keyboard matrix function switching method and system
CN105094349A