Pointer control method, apparatus, stylus, and storage medium

By setting up a sensor on the stylus to acquire the user's finger movement state and generate pointer movement commands, the control problem of pointer controller in non-flat plane environments is solved, enabling direct pointer control on reflective, transparent or complex textured surfaces, thus improving the user experience.

CN122219787APending Publication Date: 2026-06-16MAXEYE SMART TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
MAXEYE SMART TECH CO LTD
Filing Date
2026-02-02
Publication Date
2026-06-16

Smart Images

  • Figure CN122219787A_ABST
    Figure CN122219787A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of pointer control, and discloses a pointer control method and device, a handwriting pen and a storage medium. The method is applied to a handwriting pen, the handwriting pen comprises a pen body, a collecting component arranged on the pen body and a wireless transmission module, the handwriting pen is connected with a display for use, and the display picture has a pointer; the method comprises the following steps: acquiring a user finger movement state through the collecting component, and determining a corresponding pointer movement demand based on the finger movement state; generating a corresponding pointer movement instruction according to the pointer movement demand, and sending the pointer movement instruction to the display, so that the pointer in the display moves according to the control instruction.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of pointer control technology, and in particular to a pointer control method, device, stylus, and storage medium. Background Technology

[0002] With the rapid development of information technology, computers have become an indispensable tool in people's work and life. As the core device for human-computer interaction, the performance and function of pointer controllers (such as mice and active styluses) directly affect user experience and work efficiency.

[0003] Most existing pointer controls rely on sliding a mouse on a flat surface or a stylus on a screen to move the pointer on the display. However, these controls depend on a flat surface and cannot function properly in environments lacking a flat surface (such as reflective, transparent, or textured surfaces). Summary of the Invention

[0004] The main objective of this application is to provide a pointer control method, device, stylus, and storage medium, aiming to solve the technical problem of how to control pointer movement in an environment lacking a flat surface.

[0005] To achieve the above objectives, this application provides a pointer control method, which is applied to a stylus. The stylus includes a pen body, a data acquisition component disposed on the pen body, and a wireless transmission module. The stylus is connected to a display screen, and the display screen displays a pointer. The method includes: The user's finger movement state is acquired through the acquisition component, and the corresponding pointer movement requirement is determined based on the finger movement state; and Generate a corresponding pointer movement instruction based on the pointer movement requirement, and send the pointer movement instruction to the display so that the pointer on the display moves according to the control instruction.

[0006] In one embodiment, the acquisition component includes: a trackball and a status acquisition assembly; The trackball is located at the end of the stylus furthest from the tip, and the status acquisition component is located inside the pen body; The process of acquiring the user's finger movement state through the acquisition component includes: The rotation state of the trackball is obtained through the state acquisition component; and The rotation state is taken as the user's finger movement state.

[0007] In one embodiment, the state acquisition component includes an image acquisition module, and acquiring the rotation state corresponding to the trackball through the state acquisition component includes: The image acquisition module determines the microscopic image corresponding to the trackball; The microscopic images of consecutive frames are compared using a cross-correlation algorithm to determine the pixel displacement between the microscopic images of the consecutive frames; and The rotation state of the trackball is obtained based on the pixel displacement.

[0008] In one embodiment, the state acquisition component includes two vertically arranged rollers and two corresponding rotary encoders, one of the rotary encoders being coupled to one of the corresponding rollers, and the trackball being in contact with the two rollers; The step of obtaining the rotation state of the trackball through the state acquisition component includes: The rolling state of each roller is obtained through the corresponding rotary encoder; and The rotation state of the trackball is obtained based on the rolling state.

[0009] In one embodiment, the trackball is embedded with a miniature magnetic pole array, and the state acquisition component is a magnetic sensor array; The step of obtaining the rotation state of the trackball through the state acquisition component includes: The magnetic field changes corresponding to the miniature magnetic pole array in the trackball are obtained through the magnetic sensor array; and The rotation state of the trackball is determined based on the changes in the magnetic field.

[0010] In one embodiment, the stylus further includes function buttons disposed on the stylus body, and after sending the pointer movement command to the display, the method further includes: If the function key is detected to be triggered, the current number of triggers can be obtained through the function key. The current trigger function is determined based on the current number of triggers, and a corresponding function activation command is generated based on the current trigger function; and The function activation command is sent to the display so that the pointer on the display executes the corresponding function according to the function activation command.

[0011] In one embodiment, determining the corresponding pointer movement requirement based on the finger movement state includes: The finger movement state is filtered based on a preset sliding window algorithm, and linear displacement data is determined based on the filtering results; and The linear displacement data is mapped according to a preset nonlinear function to obtain the pointer movement requirement corresponding to the finger movement state.

[0012] Furthermore, to achieve the above objectives, embodiments of this application also propose a pointer control device, the device comprising: The status acquisition module is used to acquire the user's finger movement status through a data acquisition component, and determine the corresponding pointer movement requirement based on the finger movement status; and The pointer control module is used to generate corresponding pointer movement instructions according to the pointer movement requirements, and send the pointer movement instructions to the display through the wireless transmission module so that the pointer on the display moves according to the control instructions.

[0013] Furthermore, to achieve the above objectives, the stylus includes: Pen body; The data acquisition component and wireless transmission module are mounted on the pen body; Memory; Processor; and A pointer control program stored in the memory and executable on the processor, when executed by the processor, is used to implement the pointer control method as described in any one of claims 1 to 7.

[0014] Furthermore, to achieve the above objectives, embodiments of this application also propose a computer-readable storage medium storing a pointer control program, which is used to implement the steps of the pointer control method described above.

[0015] This application provides a pointer control method, device, stylus, and storage medium. The method is applied to a stylus, which includes a pen body, a data acquisition component disposed on the pen body, and a wireless transmission module. The stylus is connected to a display screen, and the display screen displays a pointer. The method includes: acquiring the user's finger movement state through the data acquisition component and determining a corresponding pointer movement requirement based on the finger movement state; generating a corresponding pointer movement instruction according to the pointer movement requirement and sending the pointer movement instruction to the display screen, so that the pointer on the display screen moves according to the control instruction.

[0016] This application's pointer control method and stylus can be equipped with a data acquisition component and a wireless transmission module. The data acquisition component can be located on the stylus body to acquire the user's finger movement state, and the wireless transmission module can form a command transmission link between the stylus and the display. In actual use, the stylus can sense the user's finger movement through the data acquisition component and determine the corresponding pointer movement requirement. The data acquisition component can convert this requirement into a pointer movement command and send it to the connected display via the wireless transmission module. Compared to existing technologies where users must rely on specific surfaces or complex gestures to indirectly control the screen pointer, this application, because it has a data acquisition component on the pen body, can directly capture the movement state of the user's finger holding the pen and send the corresponding control command to the display via the wireless transmission module. Therefore, when using the stylus, the user can directly and accurately control the pointer position and movement on the display screen by the natural movement of their finger on the pen body, improving the directness of the interaction and the user experience, thus enabling pointer movement control even in environments lacking a flat surface. Attached Figure Description

[0017] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0018] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort. In the drawings: Figure 1 This is a schematic diagram of the stylus structure of the hardware operating environment involved in the embodiments of this application; Figure 2 This is a schematic diagram of the stylus structure in the pointer control method proposed in the embodiments of this application; Figure 3 This is a flowchart illustrating the first embodiment of the pointer control method proposed in this application. Figure 4 This is a flowchart illustrating the second embodiment of the pointer control method proposed in this application. Figure 5 This is a flowchart illustrating the third embodiment of the pointer control method proposed in this application; and Figure 6 This is a structural block diagram of the first embodiment of the pointer control device of this application.

[0019] Explanation of icon numbers:

[0020] The realization of the purpose, functional features and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0021] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.

[0022] Reference Figure 1 , Figure 1 This is a schematic diagram of the stylus structure of the hardware operating environment involved in the embodiments of this application.

[0023] like Figure 1 As shown, the stylus may include: a processor 1001, such as a central processing unit (CPU), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. The communication bus 1002 is used to enable communication between these components. The user interface 1003 may be connected to a display screen. Optionally, the user interface 1003 may include a standard wired interface or a wireless interface; in this application, the wired interface of the user interface 1003 may be a USB interface. The network interface 1004 may optionally include a standard wired interface or a wireless interface (such as a Wireless-Fidelity (Wi-Fi) interface). The memory 1005 may be high-speed random access memory (RAM) or non-volatile memory (NVM), such as a disk storage device. Optionally, the memory 1005 may also be a storage device independent of the aforementioned processor 1001.

[0024] Those skilled in the art will understand that Figure 1 The structure shown does not constitute a limitation on the stylus and may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0025] like Figure 1 As shown, the memory 1005, which is identified as a computer storage medium, may include an operating system, a network communication module, a user interface module, and a pointer control program.

[0026] exist Figure 1 In the stylus shown, the network interface 1004 is mainly used to connect to the backend server and communicate data with the backend server; the user interface 1003 is mainly used to connect to the user device; the stylus calls the pointer control program stored in the memory 1005 through the processor 1001 and executes the steps of the pointer control method provided in the embodiments of this application.

[0027] It should also be understood that the stylus described above in this embodiment may further include a pen body 1, a data acquisition component 3 disposed on the pen body 1, and a wireless transmission module 5. The stylus is connected to a display for use, and the display screen has a pointer. For specific implementation, please refer to the description of the following embodiments.

[0028] It should be noted that with the rapid development of information technology, computers have become an indispensable tool in people's work and life. As core devices for human-computer interaction, the performance and functionality of pointer controllers (such as mice and active styluses) directly affect user experience and work efficiency.

[0029] Most existing pointer controls rely on sliding a mouse on a flat surface or a stylus on a screen to move the pointer on the display. However, these controls depend on a flat surface and cannot function properly in environments lacking a flat surface (such as reflective, transparent, or textured surfaces).

[0030] Therefore, to address the aforementioned shortcomings, this embodiment uses the sensing component 3 to detect the user's finger movement and determine the corresponding pointer movement requirement. The sensing component 3 converts this requirement into a pointer movement command and sends it to the connected display via the wireless transmission module 5. Compared to existing technologies where users must rely on specific surfaces or complex gestures to indirectly control the screen pointer, this embodiment, with the sensing component 3 installed on the pen body 1, can directly capture the movement of the user's fingers holding the pen and send the corresponding control command to the display via the wireless transmission module 5. Thus, when using the stylus, the user can directly and accurately control the pointer position and movement on the display screen through the natural movement of their fingers on the pen body 1, improving the directness of the interaction and the user experience.

[0031] Reference Figure 2 as well as Figure 3 , Figure 2 This is a schematic diagram of the stylus structure in the pointer control method proposed in this application embodiment. Figure 3 This is a flowchart illustrating the first embodiment of the pointer control method proposed in this application. Wherein, as... Figure 2 As shown, the stylus in this embodiment includes: a pen body 1, a data acquisition component 3 disposed on the pen body 1, and a wireless transmission module 5. The stylus is connected to a display screen, and the display screen has a pointer, such as... Figure 3 As shown, in this embodiment, the specific method includes: Step S10: Acquire the user's finger movement state through the acquisition component 3, and determine the corresponding pointer movement requirement based on the finger movement state; and Step S20: Generate a corresponding pointer movement instruction based on the pointer movement requirement, and send the pointer movement instruction to the display so that the pointer on the display moves according to the control instruction. It is understood that the method of this embodiment can be applied to the stylus described above. The stylus can be any device that has a pen body 1, a data acquisition component 3, and a wireless transmission module 5 for controlling the movement of a pointer on a display, such as an active capacitive pen and a composite input device that integrates pointer control functions. This embodiment does not limit this. For ease of understanding, this embodiment and the following embodiments can be described using the stylus described above, but this embodiment is not specifically limited.

[0032] It should be noted that the reference Figure 2 The pen body 1 can be the shell constituting the main structure of the stylus, typically made of plastic, metal, or composite materials, used to house and protect the internal functional components. The acquisition component 3 can be a functional module for detecting user operation intentions and converting them into electrical signals, such as a trackball module 31, an optical navigation sensor, a touchpad, an inertial measurement unit (IMU), or a combination thereof. The wireless transmission module 5 can be a hardware unit that transmits data using a wireless communication protocol, such as a Bluetooth module (including BLE), a Wi-Fi module, a 2.4GHz proprietary protocol transceiver, or an infrared module. The display can be an output device capable of displaying a graphical user interface, such as a liquid crystal display, an OLED display, a projection screen, a tablet computer screen, or a laptop computer screen. Therefore, in this embodiment, the acquisition component 3 and the wireless transmission module 5 are described by placing them on the pen body 1, but this does not impose specific limitations on this embodiment.

[0033] Furthermore, the aforementioned display can be an output device capable of displaying a graphical user interface, such as a liquid crystal display, OLED display, projection screen, tablet computer screen, or laptop computer screen. The aforementioned pointer can be a visual marker in the graphical user interface controlled by user input for indicating location, making selections, or performing operations, such as an arrow cursor, crosshair, hand icon, or highlighted area.

[0034] Based on this, the execution entity of the above-mentioned pointer control method in this embodiment can specifically be the processor 1001 in the stylus (i.e., Figure 1 The processor 1001 is electrically connected to the acquisition component 3 and the wireless transmission module 5, respectively.

[0035] It should be noted that the aforementioned finger movement state can be the action information generated by the user's finger on a specific input component, such as the scrolling direction and speed on the trackball 31, the sliding trajectory on the touchpad, or the finger's own air movement posture data. The aforementioned pointer movement requirement can be a control intention derived from the analysis of the finger movement state, typically expressed as a target displacement vector, movement speed, or acceleration parameter. The aforementioned pointer movement instruction can be a control instruction conforming to a specific human-machine interface device protocol, such as the mouse movement report packet in the USB HID protocol, which contains relative coordinate displacement and button status information.

[0036] In its implementation, the aforementioned device first needs to establish a communication link with the target display. The processor 1001 in the stylus pairs and connects with the computing host equipped with the display via a connected wireless transmission module 5 (such as Bluetooth). The host recognizes the stylus as a standard pointer input device. When the user intends to control the pointer on the display, the operating finger interacts with the acquisition component 3 on the stylus.

[0037] Simultaneously, the processor 1001 receives raw sensor data from the acquisition unit 3. It first preprocesses the raw data, including using a digital filtering algorithm to eliminate high-frequency noise interference, and then obtains the physical displacement corresponding to the user's finger movement using a preset algorithm. The processor 1001 then executes a coordinate mapping algorithm (e.g., a nonlinear acceleration curve function) to convert the physical displacement into displacement parameters in the screen coordinate system. Based on the mapping result, it generates control commands conforming to the standard input protocol. These commands include displacement, direction of movement, and timestamp information. The processor 1001 formats the commands into wireless transmission frames using its built-in communication protocol stack and calls the driver program of the wireless transmission module 5 to complete data encapsulation and transmission.

[0038] For ease of understanding, the following example illustrates the concept, but does not limit the scope of this embodiment. Assume a user is giving a presentation using a laptop in a meeting room, and the stylus is connected to the computer via Bluetooth. When the user needs to switch presentation slides, their thumb lightly rolls forward on the trackball 31 at the end of the pen. The optical sensor inside the trackball 31 captures the movement image of the spherical texture, and the sensor's built-in coprocessor 1001 calculates the positive X-axis displacement as 8 count units. This data is transmitted to the stylus's main processor 1001 via the I2C interface. After receiving the data, the processor 1001 first performs Kalman filtering to eliminate random fluctuations of ±1 count unit caused by hand tremors. The filtered stable displacement is input into a preset S-curve mapping function. Due to the slow scrolling speed, the function output maintains a linear mapping relationship, converting 8 physical count units into 24 pixel displacement on the screen. The processor 1001 then calls the Bluetooth HID protocol stack to generate a mouse movement report containing X-axis + 24 pixel displacement, and the report also includes a status indicating no button is pressed. This report is sent to the laptop via the Bluetooth RF module. After the computer's Bluetooth adapter receives the data packet, the operating system's HID driver parses the mouse movement event and calls the graphics subsystem API to move the slide pointer in the presentation software to the "next page" button area.

[0039] In one embodiment, such as Figure 2 As shown, the acquisition component 3 includes a trackball 31 and a status acquisition component 32; the trackball 31 is disposed at the end of the stylus away from the pen tip 2, and the status acquisition component 32 is disposed inside the pen body 1.

[0040] It is understandable that, in order to conform to ergonomic design, when the user is holding the pen body 1 in a normal writing posture, the thumb or index finger of the hand holding the pen can naturally contact and operate the trackball 31. The trackball 31 is fixedly set in the tail area of ​​the pen body 1, that is, the opposite end away from the writing tip 2, but this is not a specific limitation of this embodiment. The status acquisition component 32 is built into the shell of the pen body 1, located directly below or circumferentially adjacent to the trackball 31, and establishes a motion coupling relationship with the trackball 31 through mechanical structure or spatial alignment. This embodiment uses the setting of the status acquisition component 32 directly below the trackball 31 for explanation, but does not make specific limitations of this embodiment.

[0041] Step S11: Obtain the rotation state corresponding to the trackball 31 through the state acquisition component 323; and Step S12: Take the rotation state as the user's finger movement state.

[0042] It should be noted that the trackball 31 can be a spherical operating component partially exposed outside the device housing, which can be scrolled by a finger. Its surface may have micro-textures to enhance optical recognition characteristics or the coefficient of friction. The state acquisition component 32 can be a sensing system for detecting the motion state of the trackball 31 and quantifying it into an electrical signal. Specific implementations may include an optical navigation sensor module, a mechanical encoder system, or a magnetic induction sensor array. The pen tip 2 can be the functional part at the front end of a stylus used to contact the screen for writing or touch input, typically constructed from conductive materials or electromagnetic induction coils. The rotation state can be the physical parameters generated when the trackball 31 moves around its instantaneous rotation center, including rotation angle, angular velocity, angular acceleration, and component values ​​on two orthogonal coordinate axes. The user finger movement state can be a control intention signal representing the force and movement trend of the user's finger, reconstructed by analyzing the rotation state.

[0043] In its specific implementation, the processor 1001 periodically polls or receives raw sensing data from the state acquisition component 32 via a dedicated interface. When using an optical navigation scheme, the processor 1001 reads continuous frames of microscopic surface image data blocks from the image sensor; when using a mechanical encoding scheme, the processor 1001 captures the orthogonal pulse sequence output by the encoder via GPIO; when using a magnetic induction scheme, the processor 1001 reads the analog voltage or digital readings of the Hall sensor array. The processor 1001 executes a decoding algorithm specific to this embodiment on the raw data: for image data, the processor 1001 performs cross-correlation calculations using a hardware accelerator or software instructions to identify the pixel offset of feature regions between adjacent frames; for pulse sequences, the processor 1001 uses state machine logic to determine the phase relationship between two signals and counts the number of pulses; for magnetic field data, the processor 1001 maps sensor reading changes into rotation vectors using a lookup table method or a solution model. After decoding, the processor 1001 obtains the instantaneous angular displacement or linear displacement components of the trackball 31 in two degrees of freedom on the plane, and these components constitute a digital expression of the rotation state.

[0044] This embodiment, by setting a sensing component 3 on the pen body 1, can directly capture the movement state of the user's finger holding the pen, and send the control command corresponding to the movement state to the display via the wireless transmission module 5. Thus, when using the stylus, the user can directly and intuitively control the position and movement of the pointer on the display screen by the natural movement of the finger on the pen body 1, which improves the directness of the interaction and the user experience, and enables accurate control of the pointer in environments lacking a flat surface.

[0045] Refer to 4, Figure 4 This is a flowchart illustrating the second embodiment of the pointer control method proposed in this application. Based on the first embodiment described above, the second embodiment of the pointer control method of this application is proposed.

[0046] Furthermore, the state acquisition component 32 includes an image acquisition module, which is fixedly installed inside the pen body 1 housing and located directly below the trackball 31. Its photosensitive window maintains a constant micro-gap with the inner or outer surface of the trackball 31 through a precise structural design to ensure clear focusing on the sphere's surface. The trackball 31's spherical material must possess suitable optical properties, and its surface is typically designed with randomly distributed micro-textures or patterns to provide sufficient image features for algorithm recognition. The image acquisition module includes an optical illumination unit (such as an LED or laser diode), which is positioned around the image sensor to illuminate the sphere's surface area at a preset angle and intensity.

[0047] The step of acquiring the rotation state of the trackball 31 through the state acquisition component 32 includes: Step S111: Determine the microscopic image corresponding to the trackball 31 through the image acquisition module; Step S112: Compare the microscopic images of consecutive frames based on a cross-correlation algorithm to determine the pixel displacement between the microscopic images of the consecutive frames; and Step S113: Obtain the rotation state of the trackball 31 based on the pixel displacement.

[0048] It should be noted that the aforementioned image acquisition module can be a miniature camera unit integrating optical illumination, image sensing, and raw data output functions, typically including a light source, lens group, and image sensor chip. The microscopic image corresponding to the aforementioned trackball 31 can be a high-frame-rate digital image captured by the image acquisition module, reflecting the microscopic texture features of a local area on the inner or outer surface of the trackball 31. The aforementioned cross-correlation algorithm can be a digital image processing algorithm that estimates the relative displacement of two image regions by calculating the maximum similarity between their regions. The aforementioned consecutive frames can be two or more microscopic images acquired sequentially in time by the image acquisition module. The aforementioned pixel displacement can be calculated based on image comparison, representing the number of pixels that a feature region moves in the X and Y axes between two adjacent frames. The aforementioned rotation state can be a rotational motion parameter of the trackball 31 derived from the pixel displacement and system calibration parameters.

[0049] In practical use, the processor 1001 first initializes the operating parameters of the image acquisition module, including setting the image resolution, acquisition frame rate, and exposure time. The processor 1001 initiates the continuous image acquisition process via the control bus and receives raw image data streams from the image sensor via a DMA channel or dedicated interface. The processor 1001 performs preprocessing operations on each frame of microscopic image, including bad pixel correction, dark current compensation, and grayscale processing. After accumulating at least two consecutive frames, the processor 1001 partitions a specific region in memory for cross-correlation algorithm calculation. The processor 1001 extracts image sub-regions at the same location from the current and previous frames as templates and performs normalized cross-correlation calculations via a hardware accelerator or optimized instruction set. The algorithm outputs a correlation value matrix, and the processor 1001 determines the relative displacement between the two frames by finding the maximum value of this matrix, obtaining the pixel displacement amounts in the X and Y axis directions. Based on the system's pre-calibrated parameters, the processor 1001 converts the pixel displacement amounts into physical displacement amounts as rotation state data for the current sampling period.

[0050] In another example, the status acquisition component 32 includes two rollers arranged perpendicularly to each other and two corresponding rotary encoders, one of the rotary encoders being coupled to one of the rollers, and the trackball 31 being in contact with the two rollers.

[0051] It is understood that the aforementioned rollers can be cylindrical mechanical components used to support and transmit the motion of the trackball 31, typically made of metal or engineering plastic, with an outer surface that may have a texture or coating to increase friction. The aforementioned perpendicular arrangement can be a spatial layout where the axial centerlines of the two rollers intersect at a 90-degree angle in three-dimensional space. The aforementioned rotary encoder can be a sensing device used to detect the rotational angle, speed, or direction of the rollers, including but not limited to photoelectric encoders, magnetoelectric encoders, or potentiometer encoders. The aforementioned coupling can be a mechanical connection achieved through couplings, gear sets, or direct shaft connections, used to synchronously transmit the rotational motion of the rollers to the input shaft of the rotary encoder. The aforementioned contact arrangement can be a physical interaction between the trackball 31 and the rollers through point contact or line contact, relying on friction to achieve motion transmission.

[0052] Furthermore, two cylindrical rollers are orthogonally mounted on a fixed bracket inside the pen body 1, with their axes corresponding to the X and Y axes of the planar coordinate system, respectively. The upper half of the rollers protrudes slightly from the bracket opening, forming two mutually perpendicular support ridges. The trackball 31 is placed directly on and pressed against these two rollers, maintaining three-point contact through gravity and possible preload. One end of each roller is coupled to the input shaft of a rotary encoder via a miniature coupling or direct coaxial connection, ensuring that any rotation of the roller is accurately detected by the encoder. The rotary encoder body is fixed to a circuit board or a separate mounting base connected to the roller bracket. The entire assembly is encapsulated within a cavity at the tail of the pen body 1, with a portion of the spherical surface of the trackball 31 exposed through an opening at the tail for user operation.

[0053] The step of acquiring the rotation state of the trackball 31 through the state acquisition component 32 includes: Step S114: Obtain the rolling state corresponding to each roller through the corresponding rotary encoder; and Step S115: Obtain the rotation state corresponding to the trackball 31 based on each of the rolling states.

[0054] It is understood that the aforementioned rolling state can be a digital parameter output by a rotary encoder that characterizes the rotational motion of the corresponding roller, such as a pulse count value, rotation angle, or angular velocity. Obtaining the rotational state can be a data processing procedure that combines the independent rotational components of the two rollers into a two-dimensional motion vector of the trackball 31 on a plane through kinematic calculation.

[0055] In its implementation, the processor 1001 is connected to two rotary encoders via two independent pulse input channels or a digital communication interface. The processor 1001 initializes the encoder's operating mode, for example, setting it to a quadruple frequency counting mode to improve resolution. The processor 1001 continuously monitors the pulse signals output by the two encoders, and within each preset sampling period, reads the current values ​​of the counter registers corresponding to the X-axis and Y-axis encoders, respectively. The processor 1001 calculates the difference between the count values ​​of the current period and the previous period to obtain the net pulse increment for each roller in the current period. If the encoder outputs a quadrature signal, the processor 1001 also determines the rotation direction of the roller by judging the phase relationship between the two signals, thereby converting the pulse increment into a signed displacement. Based on the system's pre-calibrated parameters, the processor 1001 converts the pulse displacement of each roller into an actual linear displacement, including the roller diameter, the number of pulses per encoder revolution, and the mechanical transmission ratio. After obtaining the linear displacement components in two orthogonal directions, the processor 1001 calculates the two-dimensional displacement vector of the center of the trackball 31 through kinematic synthesis based on the geometric relationship model of the contact points between the two rollers and the trackball 31. Finally, the processor 1001 converts the linear displacement into angular displacement based on the known radius of the trackball 31, thereby obtaining the rotational state of the trackball 31 within the sampling period.

[0056] In another example, the trackball 31 is embedded with a miniature magnetic pole array, and the state acquisition component 32 is a magnetic sensor array.

[0057] It is understood that the aforementioned micro-magnetic pole array can be multiple micro-permanent magnet units arranged according to a specific spatial pattern inside the track sphere 31. These units can have alternating magnetic pole directions, forming a spatial magnetic field encoding pattern that can be recognized by the magnetic sensor. The aforementioned magnetic sensor array can be a combination of multiple magnetic field sensing units arranged in spatial positions, such as a Hall sensor array, a magnetoresistive sensor array, or a fluxgate sensor array, used to detect the distribution and changes of the spatial magnetic field vector.

[0058] Furthermore, it should be noted that the trackball 31 itself is made of a non-magnetic material (such as plastic), and multiple micro permanent magnets are embedded in its interior in a specific pattern, forming a micro magnetic pole array. These magnetic poles can be arranged in a spherical coordinate grid, for example, distributed along latitude and longitude lines, forming a coding pattern similar to the Earth's magnetic field, but with a more refined and regular artificial magnetic pole distribution. The magnetic sensor array is fixedly installed inside the pen body 1, surrounding the static support structure of the lower half of the trackball 31. The multiple sensing units of the sensor array are spatially distributed in two or three dimensions, for example, multiple Hall elements are arranged on a circular substrate below the equatorial plane of the sphere, or a three-dimensional ring distribution is used. Each sensor unit in the array is kept basically equidistant from the center of the trackball 31 to ensure uniform detection sensitivity. The trackball 31 can rotate freely under the support of bearings or universal joints, and its rotation drives the internal magnetic pole array to move synchronously, thereby changing the magnetic field strength and direction detected by the fixed point of the sensor array. For specific implementation, please refer to the description of the following embodiments.

[0059] The step of acquiring the rotation state of the trackball 31 through the state acquisition component 32 includes: Step S116: Obtain the magnetic field change corresponding to the miniature magnetic pole array in the trackball 31 through the magnetic sensor array; and Step S117: Determine the rotation state of the trackball 31 based on the change in the magnetic field.

[0060] It is understandable that the aforementioned magnetic field change could be due to the rotation of the trackball 31 causing a change in the position of its internal magnetic pole array relative to the fixed sensor array, resulting in a temporal change in the magnetic field strength or direction at a specific point in space. The determination of the rotation state based on the magnetic field change could be achieved through a signal processing procedure that analyzes the magnetic field change pattern using an algorithm and then deduces the rotation angle and direction of the trackball 31 in three-dimensional space.

[0061] In its implementation, the processor 1001 periodically reads the real-time output data of each sensor unit in the magnetic sensor array through a multi-channel analog-to-digital converter interface or a digital communication interface. The processor 1001 first performs calibration compensation on the raw magnetic field readings, including temperature drift compensation, zero-point drift compensation, and normalization of sensitivity differences between sensors. The processor 1001 combines multiple sensor readings obtained in each sampling period into a snapshot of the current magnetic field distribution. The processor 1001 compares the current period's magnetic field distribution snapshot with the snapshot stored in the previous period, calculating the change in each sensor reading or the change in the spatial magnetic field gradient. The processor 1001 uses a matching algorithm (e.g., correlation operation, least squares fitting, or pattern recognition algorithm) to compare the observed magnetic field change pattern with theoretical rotation models in the database, searching for the best-matching rotation hypothesis. After determining the best-matching rotation model, the processor 1001 can calculate the rotational angular components of the trackball 31 in three degrees of freedom, including roll, pitch, and yaw, and map them to two-dimensional planar motion for pointer control. The processor 1001 calculates the angular velocity based on the calculated rotation angle and time interval, thus forming a complete rotation state.

[0062] Reference Figure 5 , Figure 5 This is a flowchart illustrating the second embodiment of the pointer control method proposed in this application. Based on the above embodiments, a third embodiment of the pointer control method of this application is proposed.

[0063] Considering that users also need to control the pointer to perform preset functions, the stylus also includes function buttons 4 set on the pen body 1. The function button 4 is integrated into the side wall or a specific functional area of ​​the pen body 1. For example, one or more independent physical micro switches are set on one side of the pen body 1, or buttons with different functions (such as simulating the left and right mouse buttons) are set on the symmetrical sides of the pen body 1. This embodiment does not limit this.

[0064] Sending the pointer movement command to the display includes: Step S30: If the function button 4 is detected to be triggered, obtain the current number of triggers through the function button 4; Step S40: Determine the current trigger function based on the current trigger count, and generate a corresponding function activation command based on the current trigger function; and Step S50: Send the function activation command to the display so that the pointer in the display executes the corresponding function according to the function activation command.

[0065] It should be noted that the aforementioned function button 4 can be a physical switch or touch-sensitive area located on the surface of the pen body 1, which can be pressed by the user to input specific instructions. The aforementioned detection of the function button 4 being triggered can be achieved by the processor 1001 recognizing, through an interrupt signal or polling method, that a change in the level state of the button circuit has occurred that meets the triggering conditions. The aforementioned acquisition of the current trigger count can be the process by which the processor 1001 counts valid key presses within a specific time window or a specific logical sequence. The aforementioned current trigger function can be the type of operation instruction corresponding to the current count, determined by querying a predefined mapping relationship between trigger counts and functions. The aforementioned function activation instruction can be a control command data packet conforming to a human-machine interface device protocol or a specific application software interface specification, used to perform a specific operation on the host side. The aforementioned execution of the corresponding function can be the host connected to the display, upon receiving the function activation instruction, driving the operating system or application to perform predetermined operations such as clicking, dragging, right-click menu pop-up, page scrolling, brush mode switching, undo, and redo.

[0066] In its implementation, the processor 1001 is connected to the detection circuit of function key 4 via a pin of its general purpose input / output port. The processor 1001 configures this pin to an interrupt-enabled input mode and sets a valid trigger level. When the key is pressed, causing the circuit to conduct or the level to flip, this pin generates a hardware interrupt signal or a level change event. The processor 1001 responds to the interrupt by immediately recording the current system timestamp as the start time of the key event. The processor 1001 then starts an anti-bounce timing program, and after a delay of several milliseconds, reads the pin level again to confirm whether it is a valid key trigger rather than mechanical bounce. After confirming a valid trigger, the processor 1001 increments the internal trigger count counter allocated to that key. The processor 1001 then analyzes this trigger according to preset key behavior logic.

[0067] The preset key behavior logic includes, but is not limited to: interpreting a single short press as a left-click function; interpreting two consecutive valid triggers within a short period as a double-click function; interpreting a long press held for more than a threshold time as a right-click function or drag-and-drop start; and interpreting multiple consecutive short presses as mode switching or specific application shortcut keys. The processor 1001 calls the corresponding instruction generation routine based on the interpreted current trigger function. This routine, according to the current communication protocol (such as USB HID), generates a function activation instruction data packet containing a specific function code, key status bits, scroll amount, or absolute coordinate data. The processor 1001 transmits this function activation instruction data packet to the host via the wireless transmission module 5 during the main report sending cycle for generating pointer movement instructions, or in an independent report cycle. After transmission, the processor 1001 resets the relevant timers and counters, preparing to respond to the next key event.

[0068] Furthermore, determining the corresponding pointer movement requirement based on the finger movement state includes: Step S13: Filter the finger movement state based on a preset sliding window algorithm, and determine linear displacement data based on the filtering results; and Step S14: Map the linear displacement data according to a preset nonlinear function to obtain the pointer movement requirement corresponding to the finger movement state.

[0069] It should be noted that the aforementioned preset sliding window algorithm can be a digital signal processing method based on statistical filtering of data sequences of fixed or variable lengths, such as moving average filtering, weighted moving average filtering, or median filtering. The aforementioned finger movement state can be the raw displacement signal sequence output by the trackball 31 or other acquisition unit 3, containing high-frequency interference components introduced by hand tremors, mechanical gaps, or sensor noise. The aforementioned filtering can be achieved by mathematically removing or attenuating noise components in the signal that do not conform to the expected motion characteristics, thereby improving the signal-to-noise ratio. The aforementioned linear displacement data can be the filtered physical displacement components of the trackball 31 along the X and Y axes in the two-dimensional plane within the sampling period, typically measured in millimeters or pulse counts. The aforementioned preset nonlinear function can be a mathematical formula used to map the physical displacement amount to cursor movement speed or acceleration, such as an exponential function, a sigmoid function, a piecewise function, or a custom lookup table. The aforementioned mapping can be a mathematical transformation process that calculates the output value (cursor movement requirement parameter) from the input value (linear displacement data) through a function. The aforementioned pointer movement requirements can be finalized cursor control parameters, including the target displacement vector, movement velocity curve, or acceleration parameters.

[0070] In its implementation, the processor 1001 first reads a preset sliding window length parameter N from memory, which defines the number of historical data points used for filtering. The processor 1001 maintains two first-in-first-out queues, storing the raw X-axis and Y-axis displacement data for the most recent N sampling periods, respectively. When new finger movement data arrives, the processor 1001 stores it in the corresponding queue and removes the oldest data point to maintain the window length. The processor 1001 performs filtering calculations on the N data points in each queue: in moving average filtering, it calculates the arithmetic mean of all data within the window; in weighted moving average filtering, it sums the data at different time points after assigning different weights; in median filtering, it sorts the data within the window and takes the median. The two scalar outputs generated by the filtering calculation are the filtered linear displacement data (ΔX_filt, ΔY_filt) for the current sampling period. Subsequently, the processor 1001 uses these two linear displacement data as input and calls the calculation module of a preset nonlinear function. This function typically takes the displacement or instantaneous velocity as input and outputs a scaling factor or a direct target displacement. For example, processor 1001 might calculate the instantaneous synthesized velocity v = sqrt(ΔX_filt² + ΔY_filt²) / Δt, then input v into a sigmoid function f(v) to obtain the mapping coefficients k. Processor 1001 multiplies the filtered linear displacement data with the mapping coefficients: ΔX_map = ΔX_filt k(v), ΔY_map=ΔY_filt k(v) yields the final pointer movement requirements (ΔX_map, ΔY_map). The processor 1001 can also dynamically adjust the parameters of the nonlinear function according to the application scenario. For example, in fine drawing mode, it uses a near-linear mapping relationship to maintain 1:1 control precision, while in browsing mode, it uses a mapping relationship with acceleration segments to improve the efficiency of large-scale movements.

[0071] In addition, refer to Figure 6 , Figure 6 This is a structural block diagram of the first embodiment of the pointer control device of this application; as shown... Figure 6 As shown in the embodiments of this application, a pointer control device is also proposed, which includes: The status acquisition module 601 is used to acquire the user's finger movement status through the acquisition component 3, and determine the corresponding pointer movement requirement based on the finger movement status; The pointer control module 602 is used to generate a corresponding pointer movement command according to the pointer movement requirement, and send the pointer movement command to the display through the wireless transmission module 5 so that the pointer on the display moves according to the control command.

[0072] In one implementation, the state acquisition module 601 is also used to acquire the rotation state corresponding to the trackball 31 through the state acquisition component 32; and to use the rotation state as the user's finger movement state.

[0073] Based on the first embodiment of the pointer control device described in this application, a second embodiment of the pointer control device of this application is proposed.

[0074] In this embodiment, the state acquisition module 601 is further configured to determine the microscopic image corresponding to the trackball 31 through the image acquisition module; compare the microscopic images of consecutive frames based on the cross-correlation algorithm to determine the pixel displacement between consecutive frames; and obtain the rotation state corresponding to the trackball 31 according to the pixel displacement.

[0075] In one implementation, the state acquisition module 601 is also used to acquire the rolling state corresponding to each of the rollers through a rotary encoder; and to obtain the rotation state corresponding to the trackball 31 based on each of the rolling states.

[0076] As one implementation, the state acquisition module 601 is also used to acquire the magnetic field change corresponding to the micro magnetic pole array in the trackball 31 through the magnetic sensor array; and determine the rotation state of the trackball 31 based on the magnetic field change.

[0077] Based on the above embodiments of the pointer control device of this application, a third embodiment of the pointer control device of this application is proposed.

[0078] In this embodiment, when the pointer control module 602 detects that the function key 4 has been triggered, it obtains the current number of triggers through the function key 4; determines the current trigger function based on the current number of triggers, and generates a corresponding function start command based on the current trigger function; and sends the function start command to the display so that the pointer in the display executes the corresponding function according to the function start command.

[0079] As one implementation, the state acquisition module 601 is also used to filter the finger movement state based on a preset sliding window algorithm, and determine linear displacement data based on the filtering result; and to map the linear displacement data according to a preset nonlinear function to obtain the pointer movement requirement corresponding to the finger movement state.

[0080] Other embodiments or specific implementations of the pointer control device described in this application can be found in the above-described method embodiments, and will not be repeated here.

[0081] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or system. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.

[0082] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0083] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as a read-only memory image (ROM image) / random access memory (RAM), magnetic disk, optical disk), and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0084] The above are merely preferred embodiments of this application and do not limit the patent scope of this application. Any equivalent structural or procedural transformations made using the content of this application's specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the patent protection scope of this application.

Claims

1. A pointer control method, characterized in that, The method is applied to a stylus, which includes: a pen body, a data acquisition component disposed on the pen body, and a wireless transmission module. The stylus is connected to a display screen, and the display screen has a pointer. The method includes: The user's finger movement state is acquired through the acquisition component, and the corresponding pointer movement requirement is determined based on the finger movement state; and Generate a corresponding pointer movement instruction based on the pointer movement requirement, and send the pointer movement instruction to the display so that the pointer on the display moves according to the control instruction.

2. The method as described in claim 1, characterized in that, The acquisition components include: a trackball and a status acquisition assembly; The trackball is located at the end of the stylus furthest from the tip, and the status acquisition component is located inside the pen body; The process of acquiring the user's finger movement state through the acquisition component includes: The rotation state of the trackball is obtained through the state acquisition component; and The rotation state is taken as the user's finger movement state.

3. The method as described in claim 2, characterized in that, The state acquisition component includes an image acquisition module, and acquiring the rotation state of the trackball through the state acquisition component includes: The image acquisition module determines the microscopic image corresponding to the trackball; The microscopic images of consecutive frames are compared using a cross-correlation algorithm to determine the pixel displacement between the microscopic images of the consecutive frames; and The rotation state of the trackball is obtained based on the pixel displacement.

4. The method as described in claim 2, characterized in that, The status acquisition component includes two vertically arranged rollers and two corresponding rotary encoders. One rotary encoder is coupled to one of the corresponding rollers, and the trackball is in contact with the two rollers. The step of obtaining the rotation state of the trackball through the state acquisition component includes: The rolling state of each roller is obtained by the corresponding rotary encoder. as well as The rotation state of the trackball is obtained based on the rolling state.

5. The method as described in claim 2, characterized in that, The trackball is embedded with a miniature magnetic pole array, and the status acquisition component is a magnetic sensor array. The step of obtaining the rotation state of the trackball through the state acquisition component includes: The magnetic field changes corresponding to the miniature magnetic pole array in the trackball are obtained through the magnetic sensor array; and The rotation state of the trackball is determined based on the changes in the magnetic field.

6. The method according to any one of claims 1 to 5, characterized in that, The stylus also includes function buttons located on the stylus body. After sending the pointer movement command to the display, the method further includes: If the function key is detected to be triggered, the current number of triggers can be obtained through the function key. The current trigger function is determined based on the current number of triggers, and a corresponding function activation command is generated based on the current trigger function; and The function activation command is sent to the display so that the pointer on the display executes the corresponding function according to the function activation command.

7. The method according to any one of claims 1 to 5, characterized in that, The process of determining the corresponding pointer movement requirement based on the finger movement state includes: The finger movement state is filtered based on a preset sliding window algorithm, and linear displacement data is determined based on the filtering results; and The linear displacement data is mapped according to a preset nonlinear function to obtain the pointer movement requirement corresponding to the finger movement state.

8. A pointer control device, characterized in that, The device includes: The status acquisition module is used to acquire the user's finger movement status through a data acquisition component, and determine the corresponding pointer movement requirement based on the finger movement status; and The pointer control module is used to generate corresponding pointer movement instructions according to the pointer movement requirements, and send the pointer movement instructions to the display through the wireless transmission module so that the pointer on the display moves according to the control instructions.

9. A stylus, characterized in that, include: Pen body; The data acquisition component and wireless transmission module are mounted on the pen body; Memory; processor; as well as A pointer control program stored in the memory and executable on the processor, when executed by the processor, is used to implement the pointer control method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The pointer control program is stored and, when executed by a processor, is used to implement the pointer control method as described in any one of claims 1 to 7.