Drive waveform regulating method and apparatus, electronic device, and readable storage medium
Patent Information
- Authority / Receiving Office
- HK · HK
- Patent Type
- Patents
- Current Assignee / Owner
- HONOR DEVICE CO LTD
- Filing Date
- 2023-01-06
- Publication Date
- 2026-07-10
AI Technical Summary
The vibration function of existing linear motors can easily interfere with the user experience in different business scenarios, resulting in poor vibration performance and an inability to adapt to changes in the scenario.
By adjusting the drive waveform and generating adjustment coefficients based on the differences in vibration parameters between static and dynamic description files, the vibration effect of the linear motor is dynamically adjusted to adapt to different interruption events and provide a better vibration experience.
It improves the adaptability of linear motor vibration and user experience, expands the flexibility and accuracy of vibration functions, and lowers the technical threshold for users.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[0001] This application claims priority to the Chinese patent application No. 202110552996.7, filed on May 20, 2021, and entitled "Method, device and equipment for adjusting driving waveform and readable storage medium", the whole content of which is incorporated herein by reference. TECHNICAL FIELD
[0002] The present application relates to the field of electronic information, in particular to a driving waveform adjustment method and device, electronic equipment and readable storage medium. BACKGROUND
[0003] Linear motor is a commonly used device for realizing vibration in electronic equipment. Linear motor can be basically divided into X-axis linear motor and Z-axis linear motor according to the different stroke directions.
[0004] Although the vibration can be combined with different business scenarios at present, so that the electronic equipment has some new functions, the functions related to vibration still have the possibility of further development. SUMMARY
[0005] The present application provides a linear motor vibration waveform adjustment method and device, aiming to solve the problem of how to improve the vibration effect of linear motor.
[0006] In order to achieve the above purpose, the present application provides the following technical solutions:
[0007] The first aspect of the present application provides a driving waveform adjustment method applied to an electronic equipment, wherein the electronic equipment comprises a linear motor, and the method comprises the following steps: in response to an interrupt event, obtaining a vibration description file corresponding to the interrupt event; the description file is used to describe vibration parameters, and the driving waveform is adjusted using the vibration parameters, so that the vibration of the linear motor adapts to the interrupt event, thereby adjusting the vibration feeling following the change of the scene, providing a better vibration feeling experience for the user, and further expanding the vibration function.
[0008] Optionally, the step of adjusting the driving waveform using the vibration parameters comprises: comparing the difference in values of the vibration parameters described in a static description file and a dynamic description file; the static description file is used to control the vibration of the linear motor in the case where the interrupt event does not occur; the dynamic description file is the vibration description file corresponding to the interrupt event; generating an adjustment coefficient according to the difference; and adjusting the driving waveform converted by the static description file using the adjustment coefficient. The difference in values of the vibration parameters in the static description file and the dynamic description file is used to adjust the driving waveform, which is accurate and easy to implement, and the adjustment coefficient adjustment method is easy to operate.
[0009] Optionally, the vibration parameters described in the dynamic description file are a subset of the vibration parameters described in the static description file, so as to reduce the cost of comparison.
[0010] Optionally, the obtaining process of the static description file comprises: obtaining a waveform according to the vibration characteristics of the application, or selecting a waveform from pre-configured scene vibration waveforms, and displaying a first basic waveform; and generating the static description file in response to an adjustment instruction for the first basic waveform. Because the basic waveform is provided first, the user can obtain the required vibration description file based on the basic waveform, thereby further improving the efficiency and reducing the technical threshold for the user to obtain the vibration description file.
[0011] Optionally, the obtaining of the vibration description file corresponding to the interrupt event comprises: receiving and displaying a second basic waveform from an external source; and generating the vibration description file corresponding to the interrupt event in response to an adjustment instruction for the second basic waveform. The dynamic description file can also be visualized and adjusted, providing greater possibilities and flexibility for subsequent dynamic adjustment of the vibration of the linear motor.
[0012] Optionally, the adjustment instruction indicates at least one of the parameters of the waveform and the superposition of multiple waveforms.
[0013] Optionally, it further comprises: in the case that the value of the parameter of the adjusted waveform exceeds the adjustment limit value, displaying prompt information for prompting that the adjustment exceeds the adjustment limit value, so as to protect the linear motor to be controlled from being damaged.
[0014] The second aspect of the present application provides an adjustment device of a driving waveform, applied to an electronic device comprising a linear motor, comprising: an obtaining unit and an adjustment unit. The obtaining unit is used to obtain a vibration description file for describing vibration parameters corresponding to an interrupt event in response to the interrupt event. The adjustment unit is used to adjust the driving waveform using the vibration parameters. Not only does it provide a better vibration experience for the user, but it also expands the vibration function.
[0015] Optionally, the adjustment unit is used to adjust the driving waveform using the vibration parameters, comprising: the adjustment unit is specifically used to compare the difference between the vibration parameters described in the static description file and the vibration parameters described in the dynamic description file; the static description file is used to control the vibration of the linear motor in the case that the interrupt event does not occur; the dynamic description file is the vibration description file corresponding to the interrupt event; an adjustment coefficient is generated according to the difference; and the driving waveform converted by the static description file is adjusted using the adjustment coefficient, so that the accuracy of the adjustment is high and the operation is convenient.
[0016] Optionally, the vibration parameters described in the dynamic description file are a subset of the vibration parameters described in the static description file, so as to reduce the cost of comparison.
[0017] Optionally, the acquisition unit is further configured to acquire a waveform according to vibration characteristics of an application, or select a waveform from pre-configured scene vibration waveform, and display a first basic waveform; and generate the static description file in response to an adjustment instruction for the first basic waveform, so as to improve efficiency and reduce the technical threshold for users to acquire vibration description files.
[0018] Optionally, the acquisition unit is configured to acquire the vibration description file corresponding to the interrupt event, including: the acquisition unit is specifically configured to receive and display a second basic waveform from an external source; and generate the vibration description file corresponding to the interrupt event in response to an adjustment instruction for the second basic waveform. The dynamic description file can also be visualized and adjusted, which provides greater possibilities and flexibility for subsequent dynamic adjustment of the vibration of the linear motor.
[0019] Optionally, the adjustment instruction indicates at least one of a parameter of the waveform and superposition of multiple waveforms.
[0020] Optionally, the method further includes: a prompting unit configured to display prompt information in a case where a value of the parameter of the adjusted waveform exceeds an adjustment limit value, the prompt information being used to prompt that the adjustment exceeds the adjustment limit value, and protecting the linear motor to be controlled from being damaged.
[0021] The third aspect of the present application provides an electronic device, including: one or more processors; and a memory having a program stored thereon; when the program is executed by the one or more processors, the one or more processors implement the vibration waveform adjustment method of the linear motor of the first aspect, so as to improve the vibration effect of the linear motor.
[0022] The fourth aspect of the present application provides a readable storage medium having a computer program stored thereon, wherein the computer program is executed by a processor to implement the vibration waveform adjustment method of the linear motor of the first aspect, so as to improve the vibration effect of the linear motor. BRIEF DESCRIPTION OF DRAWINGS
[0023] Figure 1a The structure and application example diagram of the X-axis linear motor are shown;
[0024] Figure 1b The structure and application example diagram of the Z-axis linear motor are shown;
[0025] Figure 2 The structure diagram of an electronic device disclosed in an embodiment of the present application is shown;
[0026] Figure 3a The software architecture example diagram applied to the vibration waveform adjustment method of the linear motor provided by the embodiment of the present application is shown in the figure;
[0027] Figure 3b The software architecture example diagram applied to the vibration waveform adjustment method of the linear motor provided by the embodiment of the present application is shown in the figure; Figure 3a The flowchart example diagram of the implementation function of the software architecture is shown in the figure;
[0028] Figure 4a The flowchart of the adjustment method of the driving waveform disclosed by the embodiment of the present application is shown in the figure;
[0029] Figure 4b The specific flowchart of the adjustment method of the driving waveform disclosed by the embodiment of the present application is shown in the figure;
[0030] Figure 5a The flowchart of the generation method of the static description file disclosed by the embodiment of the present application is shown in the figure;
[0031] Figure 5b The example diagram of the interactive interface of the user generating the static description file disclosed by the embodiment of the present application is shown in the figure;
[0032] Figure 6 The structure schematic diagram of the adjustment device of the driving waveform disclosed by the embodiment of the present application is shown in the figure. DETAILED DESCRIPTION
[0033] The terms “first”, “second”, and “third” and the like in the specification and claims of the present application and the description of the drawings are used to distinguish different objects, and are not used to limit a specific order.
[0034] In the present application, the terms “include”, “contain” or any other variant thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or device. Without more limitations, the element defined by the statement “including a…” does not exclude the presence of another identical element in the process, method, article or device including the element.
[0035] The linear motor is arranged in an electronic device, and is used to output vibration feeling by vibration. In different scenarios of the electronic device, the linear motor is controlled to vibrate to produce different vibration effects, so that the user perceives the vibration feeling to prompt the user or feedback to the user operation, as follows:
[0036] 1. Different vibration effects can be corresponded to different service scenarios (for example, time reminder, receiving information, incoming call, alarm clock, game, etc.).
[0037] 2. Feedback to touch. For example, different vibration effects can be used for touch operations on different applications (e.g. taking photos, playing audio, etc.). Different vibration effects can also be used for touch operations on different areas of the display screen.
[0038] Linear motors commonly used in electronic devices include X-axis linear motors (also known as square or horizontal linear motors) and Z-axis linear motors (also known as circular or vertical linear motors). Figure 1a The structure and application examples of the X-axis linear motor are shown in Figure 1b The structure and application examples of the Z-axis linear motor are shown in
[0039] As shown in Figure 1a The X-axis linear motor has a long or square shape. Assuming that the X-axis is the horizontal axis, the Y-axis is the vertical axis, and the Z-axis is the vertical axis perpendicular to the X-axis and the Y-axis, the mover of the X-axis linear motor can move in the X-axis or Y-axis direction, and a longer stroke can be achieved. The X-axis linear motor is installed in the electronic device along the X-axis direction, and can provide vibration sensation in the X-axis direction. If it is installed along the Y-axis direction, it can provide vibration sensation in the Y-axis direction.
[0040] As shown in Figure 1b The Z-axis linear motor has a cylindrical shape, and the mover can move in the Z-axis direction. The Z-axis linear motor is arranged in the electronic device, and can bring vibration sensation in the thickness direction of the electronic device.
[0041] In order to achieve stronger functions and better user experience, the vibration of the linear motor can be designed for different business scenarios of the electronic device. For example, during the process of playing music on the mobile phone, the linear motor vibrates with the rhythm of the music. However, there is a possibility of overlap between different businesses of the electronic device, for example, receiving information during the process of playing music on the mobile phone, that is, the music playing business overlaps with the information business. In the case of overlap between different businesses of the electronic device, the vibration of the linear motor in a certain business scenario may interfere with other businesses. In the above example, the user views the information, and the mobile phone still plays music, and the linear motor is still controlled to vibrate with the music, which will interfere with the user's viewing of the information.
[0042] Specifically, assuming that the electronic device is executing a program implementing a first event (such as audio playing) and a second event (such as a short message application) is triggered (such as receiving a short message), the program implementing the first event is suspended, and the program implementing the second event is executed. After the second event is completed, the program implementing the first event is continued. Alternatively, the first event and the second event are executed simultaneously, that is, the program implementing the first event and the program implementing the second event are executed in parallel.
[0043] Simply speaking, interruption is that the execution of an event is interrupted, or a new event is added in parallel with the execution of another event.
[0044] Interrupted event refers to interrupting the execution of an event, or adding a new event in parallel with other events while other events are being executed.
[0045] It can be seen that the vibration originally designed for the business scenario to achieve a better user experience may, in certain cases, actually reduce the user experience. Therefore, the vibration function of the electronic device needs to be further improved. In order to improve the vibration function of the electronic device and avoid the possibility of reducing the user experience, the present application provides a driving waveform adjustment method and device.
[0046] The driving waveform adjustment method disclosed in the present application is applied to an electronic device provided with a linear motor. The electronic device provided with a linear motor can be a mobile phone, a tablet computer, a desktop computer, a laptop computer, a notebook computer, an ultra-mobile personal computer (UMPC), a handheld computer, a netbook, a personal digital assistant (PDA), a wearable electronic device, a smart watch, and the like.
[0047] Figure 2 The electronic device shown includes a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charge management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a loudspeaker 170A, a receiver 170B, a microphone 170C, a headset interface 170D, a sensor module 180, a key 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, and the like. The sensor module 180 can include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, and the like.
[0048] It can be understood that the structure illustrated in the embodiment does not constitute a specific limitation on the electronic device. In other embodiments, the electronic device can include more or fewer components than those illustrated, or combine certain components, or split certain components, or different arrangement of components. The illustrated components can be implemented in hardware, software, or a combination of software and hardware.
[0049] The processor 110 can include one or more processing units, for example: the processor 110 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Among them, different processing units can be independent devices, or can be integrated in one or more processors.
[0050] Among them, the controller can be the nerve center and command center of the electronic device. The controller can generate operation control signals according to instruction operation codes and timing signals, and complete the control of fetching and executing instructions.
[0051] The processor 110 can also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory can save instructions or data that the processor 110 has just used or repeatedly uses. If the processor 110 needs to use the instructions or data again, it can be directly called from the memory. Avoiding repeated access, reducing the waiting time of the processor 110, thus improving the efficiency of the system.
[0052] In some embodiments, the processor 110 can include one or more interfaces. The interfaces can include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0053] The I2C interface is a bidirectional synchronous serial bus, including a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 can include multiple sets of I2C buses. The processor 110 can be coupled to the touch sensor 180K, the charger, the flash, the camera 193, etc. through different I2C bus interfaces, respectively. For example, the processor 110 can be coupled to the touch sensor 180K through an I2C interface, so that the processor 110 and the touch sensor 180K communicate through the I2C bus interface, and realize the touch function of the electronic device.
[0054] The I2S interface can be used for audio communication. In some embodiments, the processor 110 can include multiple sets of I2S buses. The processor 110 can be coupled to the audio module 170 through the I2S bus, and realize the communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 through the I2S interface, and realize the function of answering the phone through the Bluetooth earphone.
[0055] The PCM interface can also be used for audio communication, which samples, quantizes and encodes analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled through the PCM bus interface. In some embodiments, the audio module 170 can also transmit audio signals to the wireless communication module 160 through the PCM interface, and realize the function of answering the phone through the Bluetooth earphone. Both the I2S interface and the PCM interface can be used for audio communication.
[0056] The UART interface is a universal serial bus for asynchronous communication. The bus can be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication. In some embodiments, the UART interface is usually used to connect the processor 110 and the wireless communication module 160. For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 through the UART interface to realize the Bluetooth function. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 through the UART interface to realize the function of playing music through the Bluetooth headset.
[0057] The MIPI interface can be used to connect the processor 110 and peripheral devices such as the display screen 194 and the camera 193. The MIPI interface includes a camera serial interface (CSI), a display serial interface (DSI), etc. In some embodiments, the processor 110 and the camera 193 communicate through the CSI interface to realize the shooting function of the electronic device. The processor 110 and the display screen 194 communicate through the DSI interface to realize the display function of the electronic device.
[0058] The GPIO interface can be configured by software. The GPIO interface can be configured as a control signal or as a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 and the camera 193, the display screen 194, the wireless communication module 160, the audio module 170, the sensor module 180, etc. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, etc.
[0059] The USB interface 130 is an interface that meets the USB standard specification, which can be a Mini USB interface, a Micro USB interface, a USB Type C interface, etc. The USB interface 130 can be used to connect a charger to charge the electronic device, or to transmit data between the electronic device and a peripheral device. It can also be used to connect a headset to play audio through the headset. The interface can also be used to connect other electronic devices, such as AR devices, etc.
[0060] It can be understood that the interface connection relationship between the modules shown in the embodiments is only illustrative and does not limit the structure of the electronic device. In some other embodiments of the present application, the electronic device can also use different interface connection methods or combinations of multiple interface connection methods in the above embodiments.
[0061] The charging management module 140 is configured to receive charging input from a charger. The charger can be a wireless charger or a wired charger. In some embodiments of wired charging, the charging management module 140 can receive charging input from a wired charger through the USB interface 130. In some embodiments of wireless charging, the charging management module 140 can receive wireless charging input through a wireless charging coil of the electronic device. The charging management module 140 can supply power to the electronic device through the power management module 141 while charging the battery 142.
[0062] The power management module 141 is configured to connect the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140 to supply power to the processor 110, the internal memory 121, the display screen 194, the camera 193, and the wireless communication module 160. The power management module 141 can also be configured to monitor parameters such as battery capacity, battery cycle count, battery health status (leakage, impedance), and the like. In some other embodiments, the power management module 141 can also be disposed in the processor 110. In some other embodiments, the power management module 141 and the charging management module 140 can also be disposed in the same device.
[0063] The wireless communication function of the electronic device can be implemented through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor.
[0064] The antenna 1 and the antenna 2 are configured to transmit and receive electromagnetic wave signals. Each antenna in the electronic device can be configured to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization rate of the antennas. For example, the antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in combination with a tuning switch.
[0065] The mobile communication module 150 can provide a solution for wireless communication including 2G / 3G / 4G / 5G and the like applied to the electronic device. The mobile communication module 150 can include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), and the like. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, filter, amplify, and the like the received electromagnetic waves, and transmit the processed electromagnetic waves to the modem processor for demodulation. The mobile communication module 150 can also amplify signals modulated by the modem processor and radiate the signals as electromagnetic waves through the antenna 1. In some embodiments, at least part of the function modules of the mobile communication module 150 can be disposed in the processor 110. In some embodiments, at least part of the function modules of the mobile communication module 150 and at least part of the modules of the processor 110 can be disposed in the same device.
[0066] The modem processor can include a modulator and a demodulator. The modulator is configured to modulate a low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is configured to demodulate a received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. The low-frequency baseband signal processed by the baseband processor is transmitted to the application processor. The application processor outputs a sound signal through an audio device (not limited to a speaker 170A, a microphone 170B, etc.), or displays an image or a video through the display 194. In some embodiments, the modem processor can be a separate device. In other embodiments, the modem processor can be independent of the processor 110 and disposed in the same device as the mobile communication module 150 or other functional modules.
[0067] The wireless communication module 160 can provide a wireless communication solution applied to the electronic device, including wireless local area networks (WLAN) (such as a wireless fidelity (Wi-Fi) network), Bluetooth (BT), a global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, and the like. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, performs frequency modulation and filtering processing on the electromagnetic wave signal, and transmits the processed signal to the processor 110. The wireless communication module 160 can also receive a signal to be transmitted from the processor 110, perform frequency modulation and amplification, and convert the signal into electromagnetic wave radiation via the antenna 2.
[0068] In some embodiments, the antennas 1 and the mobile communication module 150 are coupled, and the antennas 2 and the wireless communication module 160 are coupled, so that the electronic device can communicate with a network and other devices through wireless communication technology. The wireless communication technology can include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology, etc. The GNSS can include a global positioning system (GPS), a global navigation satellite system (GLONASS), a beidou navigation satellite system (BDS), a quasi-zenith satellite system (QZSS), and / or a satellite based augmentation systems (SBAS).
[0069] The electronic device implements a display function through a GPU, a display screen 194, and an application processor, etc. The GPU is a microprocessor for image processing, which is connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs, which execute program instructions to generate or change display information.
[0070] The display screen 194 is configured to display images, videos, and the like. The display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flex light-emitting diode (FLED), a Miniled, a MicroLed, a Micro-oled, a quantum dot light emitting diodes (QLED), or the like. In some embodiments, the electronic device can include one or N display screens 194, where N is a positive integer greater than 1.
[0071] A series of graphical user interfaces (GUIs) can be displayed on the display screen 194 of the electronic device, and the GUIs are home screens of the electronic device. Generally, the size of the display screen 194 of the electronic device is fixed, and only limited controls can be displayed in the display screen 194 of the electronic device. A control is a GUI element, which is a software component included in an application program, controls all data processed by the application program and interaction operations related to the data, and a user can interact with the control through direct manipulation to read or edit information related to the application program. Generally, a control can include an icon, a button, a menu, a tab, a text box, a dialog box, a status bar, a navigation bar, a widget, and the like. For example, in the embodiments of the present application, the display screen 194 can display virtual keys.
[0072] The electronic device can implement a photographing function through an ISP, the camera 193, a video codec, a GPU, the display screen 194, and an application processor.
[0073] The ISP is configured to process data fed back by the camera 193. For example, when taking a photo, a shutter is opened, light is transmitted to a camera photosensitive element through a lens, and the light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to the ISP for processing to convert the electrical signal into an image visible to the naked eye. The ISP can also optimize algorithms for noise, brightness, and skin color of the image. The ISP can also optimize parameters such as exposure and color temperature of the shooting scene. In some embodiments, the ISP can be disposed in the camera 193.
[0074] The camera 193 is used to capture still images or videos. An object projects an optical image through a lens to a photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the optical signal into an electrical signal, which is then passed to an ISP for conversion into a digital image signal. The ISP outputs the digital image signal to a DSP for processing. The DSP converts the digital image signal into a standard RGB, YUV, or the like format image signal. In some embodiments, the electronic device can include one or N cameras 193, where N is a positive integer greater than one.
[0075] The digital signal processor is used to process digital signals, in addition to processing digital image signals, it can also process other digital signals. For example, when the electronic device selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy, etc.
[0076] The video codec is used to compress or decompress digital video. The electronic device can support one or more video codecs. In this way, the electronic device can play or record videos in multiple encoding formats, such as moving picture experts group (MPEG) 1, MPEG 2, MPEG 3, MPEG 4, etc.
[0077] The NPU is a neural-network (NN) computing processor, which is inspired by the structure of biological neural networks, such as the transmission mode between human brain neurons, and can quickly process input information and continuously self-learn. Through the NPU, the electronic device can realize intelligent cognition and other applications, such as image recognition, face recognition, speech recognition, text understanding, etc.
[0078] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device. The external memory card communicates with the processor 110 through the external memory interface 120 to realize data storage functions. For example, music, video, and other files are saved in the external memory card.
[0079] The electronic device can realize audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor, etc. For example, music playing, recording, etc.
[0080] The audio module 170 is configured to convert digital audio information into an analog audio signal output, and to convert an analog audio input into a digital audio signal. The audio module 170 can also be configured to encode and decode audio signals. In some embodiments, the audio module 170 can be disposed in the processor 110, or some functional modules of the audio module 170 can be disposed in the processor 110.
[0081] The speaker 170A, also referred to as a "loudspeaker", is configured to convert an audio electrical signal into a sound signal. The electronic device can listen to music or listen to a hands-free call through the speaker 170A.
[0082] The receiver 170B, also referred to as a "earpiece", is configured to convert an audio electrical signal into a sound signal. When the electronic device receives a call or a voice message, the user can listen to the voice by holding the receiver 170B close to the ear.
[0083] The microphone 170C, also referred to as a "microphone", "voice microphone", is configured to convert a sound signal into an electrical signal. When making a call or sending a voice message, the user can make a sound by holding the mouth close to the microphone 170C, and input the sound signal into the microphone 170C. The electronic device can be provided with at least one microphone 170C. In other embodiments, the electronic device can be provided with two microphones 170C, in addition to collecting sound signals, noise reduction functions can also be realized. In other embodiments, the electronic device can also be provided with three, four or more microphones 170C, in addition to collecting sound signals, noise reduction, and can also identify the source of the sound, realize directional recording function, etc.
[0084] The earphone interface 170D is configured to connect a wired earphone. The earphone interface 170D can be a USB interface 130, or a 3.5mm open mobile terminal platform (OMTP) standard interface, a cellular telecommunications industry association of the USA (CTIA) standard interface.
[0085] The pressure sensor 180A is configured to sense a pressure signal and convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A can be disposed on the display screen 194. The pressure sensor 180A can be of various types, such as a resistive pressure sensor, an inductive pressure sensor, a capacitive pressure sensor, etc. The capacitive pressure sensor can include at least two parallel plates of conductive material. When a force is applied to the pressure sensor 180A, the capacitance between the electrodes changes. The electronic device determines the intensity of the pressure according to the change in capacitance. When a touch operation is applied to the display screen 194, the electronic device detects the intensity of the touch operation according to the pressure sensor 180A. The electronic device can also calculate the position of the touch according to the detection signal of the pressure sensor 180A. In some embodiments, touch operations applied to the same touch position but with different touch operation intensities can correspond to different operation instructions. For example, when a touch operation with a touch operation intensity less than a first pressure threshold is applied to a short message application icon, an instruction to view short messages is executed. When a touch operation with a touch operation intensity greater than or equal to the first pressure threshold is applied to the short message application icon, an instruction to create a new short message is executed.
[0086] The gyroscope sensor 180B can be configured to determine the motion posture of the electronic device. In some embodiments, the angular velocity of the electronic device around three axes (i.e., x, y, and z axes) can be determined by the gyroscope sensor 180B. The gyroscope sensor 180B can be used for anti-shake photography. For example, when the shutter is pressed, the gyroscope sensor 180B detects the angle of shaking of the electronic device, calculates the distance that the lens module needs to compensate according to the angle, and lets the lens offset the shaking of the electronic device by reverse movement to achieve anti-shake. The gyroscope sensor 180B can also be used for navigation and motion sensing game scenarios.
[0087] The barometric pressure sensor 180C is configured to measure air pressure. In some embodiments, the electronic device calculates the altitude, assists positioning and navigation by using the air pressure value measured by the barometric pressure sensor 180C.
[0088] The magnetic sensor 180D includes a Hall sensor. The electronic device can detect the opening and closing of a flip cover by using the magnetic sensor 180D. In some embodiments, when the electronic device is a flip phone, the electronic device can detect the opening and closing of the flip cover according to the magnetic sensor 180D. Further, according to the detected opening and closing state of the cover or the opening and closing state of the flip cover, the electronic device can set a feature such as automatic unlocking of the flip cover.
[0089] The acceleration sensor 180E can detect the acceleration of the electronic device in various directions (generally three axes). When the electronic device is stationary, the acceleration sensor 180E can detect the magnitude and direction of gravity. The acceleration sensor 180E can also be used to identify the posture of the electronic device and applied to applications such as landscape / portrait screen switching and pedometers.
[0090] The distance sensor 180F is configured to measure a distance. The electronic device can measure the distance by infrared or laser. In some embodiments, the electronic device can take a picture of a scene and use the distance sensor 180F to measure the distance to achieve fast focus.
[0091] The proximity light sensor 180G can include, for example, a light-emitting diode (LED) and a light detector, such as a photodiode. The light-emitting diode can be an infrared light-emitting diode. The electronic device emits infrared light outwardly through the light-emitting diode. The electronic device detects infrared reflected light from nearby objects using the photodiode. When sufficient reflected light is detected, the electronic device can determine that there is an object near the electronic device. When insufficient reflected light is detected, the electronic device can determine that there is no object near the electronic device. The electronic device can use the proximity light sensor 180G to detect that a user is holding the electronic device close to the ear for a call, so as to automatically turn off the screen to save power. The proximity light sensor 180G can also be used for automatic unlocking and locking of the screen in a case mode or a pocket mode.
[0092] The ambient light sensor 180L is configured to sense ambient light brightness. The electronic device can adaptively adjust the brightness of the display screen 194 according to the sensed ambient light brightness. The ambient light sensor 180L can also be used to automatically adjust the white balance when taking a picture. The ambient light sensor 180L can also cooperate with the proximity light sensor 180G to detect whether the electronic device is in a pocket to prevent accidental touch.
[0093] The fingerprint sensor 180H is configured to collect a fingerprint. The electronic device can use the collected fingerprint characteristics to implement fingerprint unlocking, access application locking, fingerprint photographing, fingerprint answering a call, and the like.
[0094] The temperature sensor 180J is configured to detect a temperature. In some embodiments, the electronic device uses the temperature detected by the temperature sensor 180J to implement a temperature processing strategy. For example, when the temperature reported by the temperature sensor 180J exceeds a threshold value, the electronic device reduces the performance of a processor located near the temperature sensor 180J to reduce power consumption and implement thermal protection. In other embodiments, when the temperature is lower than another threshold value, the electronic device heats the battery 142 to avoid abnormal shutdown of the electronic device caused by low temperature. In other embodiments, when the temperature is lower than yet another threshold value, the electronic device performs voltage boosting on the output voltage of the battery 142 to avoid abnormal shutdown caused by low temperature.
[0095] Touch sensor 180K, also referred to as "touch device". Touch sensor 180K can be disposed on display screen 194, and touch sensor 180K and display screen 194 form a touch screen, also referred to as "touch panel". Touch sensor 180K is configured to detect a touch operation applied thereto or in the vicinity thereof. Touch sensor 180K can transmit the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through display screen 194. In other embodiments, touch sensor 180K can also be disposed on the surface of the electronic device, which is different from the position where display screen 194 is located.
[0096] Bone conduction sensor 180M can obtain a vibration signal. In some embodiments, bone conduction sensor 180M can obtain a vibration signal of a human body sound vibration bone block. Bone conduction sensor 180M can also contact the human body pulse to receive a blood pressure pulsation signal. In some embodiments, bone conduction sensor 180M can also be disposed in a headset to form a bone conduction headset. Audio module 170 can analyze a voice signal based on the vibration signal of the sound vibration bone block obtained by bone conduction sensor 180M to realize a voice function. The application processor can analyze heart rate information based on the blood pressure pulsation signal obtained by bone conduction sensor 180M to realize a heart rate detection function.
[0097] Keys 190 include a power key, a volume key, and the like. Keys 190 can be mechanical keys. They can also be touch keys. The electronic device can receive key input and generate key signal input related to user settings and function control of the electronic device.
[0098] Indicator 192 can be an indicator light, which can be used to indicate a charging state, a power change, and can also be used to indicate a message, a missed call, a notification, and the like.
[0099] SIM card interface 195 is configured to connect a SIM card. The SIM card can be inserted into or pulled out of SIM card interface 195 to realize contact and separation with the electronic device. The electronic device can support one or N SIM card interfaces, where N is a positive integer greater than 1. SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, and the like. Multiple cards can be inserted into the same SIM card interface 195 at the same time. The types of the multiple cards can be the same or different. SIM card interface 195 can be compatible with different types of SIM cards. SIM card interface 195 can also be compatible with external storage cards. The electronic device interacts with the network through the SIM card to realize functions such as calling and data communication. In some embodiments, the electronic device uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the electronic device and cannot be separated from the electronic device.
[0100] Motor 191 includesFigure 1a and Figure 1b at least one of the linear motors shown in FIGS.
[0101] The internal memory 121 can be used to store computer executable program codes, which include instructions. The processor 110 performs various function applications and data processing of the electronic device by running the instructions stored in the internal memory 121. For example, in the present embodiment, the processor 110 can adjust the drive waveform by executing the instructions, devices or modules stored in the internal memory 121.
[0102] The internal memory 121 can include a program storage area and a data storage area. The program storage area can store an operating system, at least one application program required by a function (such as a sound playing function, an image playing function, etc.), etc. The data storage area can store data created during the use of the electronic device (such as audio data, a phone book, etc.), etc. In addition, the internal memory 121 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash storage (UFS), etc. The processor 110 performs various function applications and data processing of the electronic device by running the instructions stored in the internal memory 121 and / or the instructions stored in the memory disposed in the processor.
[0103] Further, Figure 3a For the application of the technical scheme disclosed in the embodiment of the present application, an example of software architecture is combined with Figure 3b It can be known from the content:
[0104] The vibration description file generation module (which can interact with a third-party application) generates a vibration description file; the analysis module analyzes the vibration description file to obtain a json format file used to describe a vibration waveform; and the waveform processing module performs waveform processing operations on the json format file, specifically: the vibration waveform processing module first uses a synthetic motor displacement algorithm to operate, generates a vibration waveform in the form of a displacement code stream according to the json format file and the properties of the motor, and the drive waveform processing module then uses an inverse motor voltage drive algorithm to perform inverse operation on the vibration waveform and the properties of the motor to obtain a drive waveform.
[0105] The driving waveform obtained after the waveform processing module performs the waveform processing operation is subjected to a synthesis processing by the synthesis module, to obtain an audio stream in a format such as Pulse Code Modulation (PCM), and is transmitted to a driving integrated circuit (IC) in a protocol such as Real-time Transport Protocol (RTP), and finally acts on the linear motor to control the operation of the linear motor.
[0106] In combination with the structure of the electronic device, Figure 3a The software architecture shown can be stored in the internal memory 121 and called and implemented by the processor 110 Figure 3b The flow.
[0107] The driving waveform adjustment method described in the embodiments of the present application can be applied to Figure 3a The driving waveform processing module, and further, the generation module of the vibration description file.
[0108] The driving waveform adjustment method described in the embodiments of the present application will be described in detail below.
[0109] Figure 4a A driving waveform adjustment method disclosed in the embodiments of the present application includes the following steps:
[0110] S401, an interrupt event is monitored.
[0111] The information, such as an identifier, of the interrupt event to be monitored can be configured in advance according to the requirements, and after the interrupt event information is monitored, it is determined that the interrupt event is monitored.
[0112] S402, in response to the interrupt event, a dynamic description file corresponding to the interrupt event is obtained.
[0113] The vibration description file is used to describe the vibration parameters of the vibration waveform, such as the frequency and amplitude of the vibration waveform. The dynamic description file refers to the vibration description file describing the vibration parameters for controlling the vibration of the linear motor during the occurrence of the interrupt event.
[0114] Corresponding to the dynamic description file is a static description file, which refers to a vibration description file describing the vibration parameters for controlling the vibration of the linear motor in the case where the interrupt event does not occur.
[0115] That is, in the case where the interrupt event does not occur, the static description file is used to control the vibration of the linear motor, and in the process of the occurrence of the interrupt event, the dynamic description file is used to control the vibration of the linear motor, so as to alleviate the interference of the vibration of the linear motor on the interrupt event.
[0116] In this embodiment, the interrupt event is receiving a short message by a short message application, and the interrupted event is playing music.
[0117] The correspondence between the interrupt event and the dynamic description file can be preconfigured, for example, the identifier of the corresponding interrupt event is written in the dynamic description file.
[0118] Optionally, the dynamic description file can be preconfigured, and the step of obtaining the dynamic description file from the storage space can also be performed in response to the interrupt event. The generation method of the dynamic description file will be described in the following embodiments.
[0119] S403, adjusting the driving waveform by using the dynamic description file corresponding to the interrupt event.
[0120] As described above, the dynamic description file and the static description file both describe vibration parameters, for example, amplitude and frequency. In addition, the dynamic description file is used to reduce the interference of the vibration of the linear motor on the interrupt event. Therefore, it can be understood that at least one of the vibration parameters described in the dynamic description file has a smaller value than the vibration parameter described in the static description file.
[0121] For example, the amplitude of the transient waveform 01 described in the static description file is 0.9, and the amplitude of the transient waveform 02 described in the dynamic description file is 0.3. The frequency of the transient waveform 01 described in the static description file is the same as the frequency of the transient waveform 02 described in the dynamic description file.
[0122] Therefore, the specific implementation steps of S403 are as follows:
[0123] S4031, comparing the difference between the vibration parameters described in the static description file and the vibration parameters described in the dynamic description file.
[0124] For example, the difference between the amplitude value described in the static description file and the amplitude value described in the dynamic description file is compared in sequence. It can be understood that the parameters to be compared can be preconfigured, and only the parameters that have a greater impact on the vibration sensation, for example, the amplitude, are compared to reduce the calculation amount.
[0125] The specific obtaining process of the static description file will be described in the following embodiments.
[0126] It can be understood that the vibration parameters described in the static description file can be the same as or different from the vibration parameters described in the dynamic description file.
[0127] Further, the kind of vibration parameters described in the dynamic description file is a subset of the kind of vibration parameters described in the static description file. That is, because the dynamic description file is used in the case of interrupt event, in combination with the above-mentioned application scenarios, it is possible that all parameters of the driving waveform do not need to be adjusted, but only the parameters with strong correlation with the vibration sensation are adjusted, therefore, the dynamic description file can only describe the parameters with strong correlation with the vibration sensation, and therefore, the kind of parameters described in the dynamic description file can be less than the kind of parameters described in the static description file.
[0128] For example, the static description file for controlling the linear motor to follow the vibration of the played music includes parameters such as amplitude, frequency, vibration time, etc., while the static description file for controlling the linear motor to vibrate in the process of executing the short message application only includes the amplitude. When comparing the two files, only the values of the amplitudes need to be compared, so as to reduce the cost of comparison (including the time delay that can be felt by the user, etc.).
[0129] It can be understood that the difference refers to the difference between the values of the same parameters.
[0130] S4032, generating an adjustment coefficient according to the difference.
[0131] For example, the amplitude adjustment coefficient is generated according to the difference between the values of the amplitude described in the static description file and the amplitude described in the dynamic description file.
[0132] S4033, adjusting the driving waveform converted from the static description file using the adjustment coefficient.
[0133] For example, the amplitude adjustment coefficient is used to adjust the amplitude of the driving waveform converted from the static description file. Further, for example, the amplitude adjustment coefficient is 0.3, and the amplitude of the driving waveform is multiplied by 0.3 to obtain the adjusted amplitude.
[0134] Still taking the scenario of receiving information in the process of playing music on the mobile phone as an example: after the short message is received by the information application, the electronic device adjusts the driving waveform, for example, the amplitude of the driving waveform is multiplied by the adjustment coefficient 0.3, so that the intensity of the driving waveform following the vibration of the music is weakened, thereby reducing the interference on the user viewing the short message.
[0135] It can be understood that, optionally, during the duration of the interrupt event, the driving waveform is adjusted using the dynamic description file, after the interrupt event ends, the adjustment of the driving waveform according to the dynamic description file is stopped, and the driving waveform converted from the vibration waveform described in the static description file is still used to drive the linear motor.
[0136] In summary and in combination with the above scenarios, in the process of playing music without receiving information, the vibration waveform described by the static description file is converted into a driving waveform, and then the driving waveform is used to control the linear motor vibration, so that the linear motor vibrates with the music. After receiving the information, the vibration waveform described by the dynamic description file is used to adjust the driving waveform, so as to reduce the amplitude of the driving waveform. In the case of the user viewing the information, the amplitude of the linear motor will be smaller, so as to reduce the interference on the user.
[0137] It can be seen that the adjustment method of the driving waveform described in the embodiment responds to the interrupt event, uses the dynamic description file to adjust the driving waveform, so that the vibration of the linear motor adapts to the interrupt event and adjusts the vibration feeling following the change of the scene, thereby providing a better vibration feeling experience for the user. Moreover, the vibration function is also expanded.
[0138] As mentioned above, the static description file and the dynamic description file can be preconfigured in the storage space, and can be used Figure 1a The driving waveform processing module shown in the figure can be read and used from the storage space, or generated by Figure 1a The driving waveform processing module shown in the figure.
[0139] Figure 5a The flow of the generation method of the static description file includes the following steps:
[0140] S501, display a first basic waveform.
[0141] A first interface can be presented, and the first interface displays a first basic waveform.
[0142] The first basic waveform is a waveform obtained according to the characteristics of the object to which the vibration is applied, or a waveform selected from a preconfigured scene vibration feeling library.
[0143] Specifically, the object to which the vibration is applied can be audio, and the basic waveform is generated according to the sound characteristics of the audio, such as envelope, frequency, amplitude, timbre and rhythm, etc. It can be understood that the object to which the vibration is applied can be received from the outside, such as receiving an audio file imported by the user. For example, Figure 5b As shown in the interactive interface, the user can click the musical note icon 51 in the upper right corner of the interactive interface to import an audio file, and the interactive interface displays a basic waveform generated according to the imported audio file.
[0144] Specifically, the preconfigured scene vibration feeling library includes waveforms corresponding to vibration feelings in various scenes, such as waveforms corresponding to vibration feelings in a (game) gun shooting scene and waveforms corresponding to vibration feelings in a (game) explosion scene. The waveform files in the scene vibration feeling library can be added, deleted or modified.
[0145] It can be understood that an interactive interface can be displayed, and the user can select a waveform corresponding to a vibration effect in at least one scene from the scene vibration library based on the interactive interface. Figure 5b As shown in the interactive interface, the user can click the file icon 52 in the upper right corner of the interactive interface to import the waveform in the scene vibration library, and the selection instruction triggered in response to the selection operation of the user selects the waveform selected by the user from the scene vibration library as the base waveform.
[0146] S502, in response to the adjustment instruction of the first base waveform, a static description file is generated.
[0147] The adjustment instruction in this step can indicate adjustment of parameters of the waveform, such as adjustment of vibration parameters such as frequency, start time, duration and amplitude of the first base waveform, and can also indicate superposition of waveforms, such as superposition of first base waveforms of different vibration events.
[0148] The multiple waveforms superimposed are not limited to events. The specific calculation method of waveform superposition can refer to the prior art, for example, amplitude addition, which will not be described here. The purpose of waveform superposition is to present extended vibration effects by superposition, which can support superposition of vibration effects of multiple scenes, so that the user's vibration experience is more rich.
[0149] In response to the adjustment instruction, the base waveform is adjusted, and in response to the instruction issued by the save control 55, a vibration description file is generated. Optionally, in response to the instruction issued by the save control 55, the adjusted waveform, i.e. the waveform described in the vibration description file, can also be displayed on the interactive interface.
[0150] S503, in the case where the value of the parameter of the adjusted waveform exceeds the adjustment limit value, a prompt information is displayed.
[0151] The prompt information is used to prompt that the adjustment exceeds the adjustment limit value.
[0152] Optionally, in the case where the value of the parameter of the adjusted waveform exceeds the adjustment limit value, the adjustment instruction is not responded.
[0153] Specifically, the adjustment limit value can include but is not limited to an amplitude limit value, a start time limit value and a stop time limit value.
[0154] The amplitude limit value can be determined according to the maximum displacement of the linear motor to be controlled. The start time limit value and the stop time limit value can be determined according to the properties of the linear motor to be controlled.
[0155] The purpose of setting the adjustment limit value is to protect the linear motor to be controlled from being damaged.
[0156] Compared with the way that the skilled person in the prior art writes code to form a vibration description file, the vibration description file can be obtained more efficiently, and the technical threshold for the user to obtain the vibration description file can be lowered. Because the basic waveform is provided first, the user can obtain the required vibration description file based on the basic waveform, thereby further improving the efficiency and lowering the technical threshold for the user to obtain the vibration description file.
[0157] The generation process of the dynamic description file is different from the process shown in Figure 5a The difference between the process shown in Figure 5a The other steps are the same as the process shown in
[0158] It should be noted that in the above embodiments, the interactive interface is only one implementation, which is more convenient and has better user experience, but the adjustment method of the basic waveform is not limited to being implemented based on the interactive interface.
[0159] Figure 6 The adjustment device for the driving waveform disclosed in the embodiments of the present application includes an acquisition unit and an adjustment unit. Optionally, the device can further include a prompt unit.
[0160] The acquisition unit is configured to acquire a vibration description file corresponding to an interrupt event in response to the interrupt event; the vibration description file is configured to describe a vibration parameter. The adjustment unit is configured to adjust a driving waveform using the vibration parameter. The prompt unit is configured to display prompt information in a case where a value of the parameter of the adjusted waveform exceeds an adjustment limit value, the prompt information being configured to prompt that the adjustment exceeds the adjustment limit value.
[0161] Optionally, the adjustment unit is configured to adjust the driving waveform using the vibration parameter in the following specific implementation manner: comparing a difference in values between a vibration parameter described in a static description file and a vibration parameter described in a dynamic description file; the static description file is configured to control vibration of the linear motor in a case where the interrupt event does not occur; the dynamic description file is the vibration description file corresponding to the interrupt event; generating an adjustment coefficient according to the difference; and adjusting a driving waveform converted by the static description file using the adjustment coefficient, so that the adjustment is accurate and easy to operate.
[0162] Optionally, a type of the vibration parameter described in the dynamic description file is a subset of a type of the vibration parameter described in the static description file, so as to reduce the cost of comparison.
[0163] Optionally, the acquisition unit is further configured to acquire the waveform according to vibration characteristics of an application, or select the waveform from pre-configured scene vibration waveform, and display a first basic waveform; and generate the static description file in response to an adjustment instruction for the first basic waveform, so as to improve efficiency and reduce technical threshold for users to acquire the vibration description file.
[0164] Optionally, the acquisition unit is configured to acquire the specific implementation of the vibration description file corresponding to the interrupt event, by receiving and displaying a second basic waveform from an external source; and generate the vibration description file corresponding to the interrupt event in response to an adjustment instruction for the second basic waveform. The dynamic description file can also be visualized and adjusted, so as to provide greater possibility and flexibility for subsequent dynamic adjustment of vibration of the linear motor.
[0165] Optionally, the adjustment instruction indicates at least one of a parameter of the adjusted waveform and superposition of multiple waveforms.
[0166] Figure 6 The adjustment device for the driving waveform can not only expand vibration functions, i.e., adjust the driving waveform in response to the interrupt event so that vibration of the motor adapts to the interrupt event, but also improve user experience.
[0167] The embodiment of the present application further provides a readable storage medium having a computer program stored thereon, wherein the computer program is executed by a processor to implement the vibration waveform adjustment method of the linear motor in the above embodiment, so as to improve vibration effect of the linear motor.
Claims
1. A method for adjusting a drive waveform, applied to an electronic device, the electronic device including a linear motor, characterized in that, include: In response to an interruption event, obtain the vibration description file corresponding to the interruption event; the vibration description file is used to describe vibration parameters. The differences in the values of vibration parameters described in the static description file and the dynamic description file are compared; the static description file is used to control the vibration of the linear motor when the interruption event does not occur; the dynamic description file is the vibration description file corresponding to the interruption event. Based on the aforementioned differences, an adjustment factor is generated; The adjustment coefficient is used to adjust the driving waveform of the static description file conversion.
2. The method for adjusting the driving waveform according to claim 1, characterized in that, The types of vibration parameters described in the dynamic description file are a subset of the types of vibration parameters described in the static description file.
3. The method for adjusting the driving waveform according to claim 1, characterized in that, The process of obtaining the static description file includes: The waveform is obtained based on the vibration characteristics of the application, or a waveform is selected from the pre-configured scene vibration waveforms to display the first basic waveform; In response to the adjustment command for the first basic waveform, the static description file is generated.
4. The method for adjusting the driving waveform according to any one of claims 1-3, characterized in that, The process of obtaining the vibration description file corresponding to the interruption event includes: Receive and display the second fundamental waveform from an external source; In response to the adjustment command for the second basic waveform, a vibration description file corresponding to the interruption event is generated.
5. The method for adjusting the driving waveform according to claim 4, characterized in that, The adjustment command instructs to adjust the parameters of the waveform and to superimpose at least one of the multiple waveforms.
6. The method for adjusting the driving waveform according to claim 5, characterized in that, Also includes: If the value of the parameter in the adjusted waveform exceeds the adjustment limit, a prompt message is displayed to indicate that the adjustment has exceeded the adjustment limit.
7. A device for adjusting a drive waveform, applied to an electronic device, the electronic device including a linear motor, characterized in that, include: An acquisition unit is used to respond to an interruption event and acquire a vibration description file corresponding to the interruption event; the vibration description file is used to describe vibration parameters. An adjustment unit is used to compare the differences between the vibration parameters described in the static description file and the vibration parameters described in the dynamic description file; the static description file is used to control the vibration of the linear motor when the interruption event does not occur; the dynamic description file is the vibration description file corresponding to the interruption event; an adjustment coefficient is generated based on the difference; and the adjustment coefficient is used to adjust the drive waveform converted from the static description file.
8. The device for adjusting the driving waveform according to claim 7, characterized in that, The types of vibration parameters described in the dynamic description file are a subset of the types of vibration parameters described in the static description file.
9. The device for adjusting the driving waveform according to claim 7, characterized in that, The acquisition unit is also used for: The waveform is obtained based on the vibration characteristics of the application, or a waveform is selected from the pre-configured scene vibration waveforms to display the first basic waveform; in response to the adjustment command of the first basic waveform, the static description file is generated.
10. The device for adjusting the driving waveform according to any one of claims 7-9, characterized in that, The acquisition unit is used to acquire the vibration description file corresponding to the interruption event, including: The acquisition unit is specifically used to receive and display a second basic waveform from an external source; and in response to an adjustment instruction for the second basic waveform, generate a vibration description file corresponding to the interruption event.
11. The device for adjusting the driving waveform according to claim 10, characterized in that, The adjustment command instructs the adjustment of waveform parameters and the superposition of at least one of multiple waveforms.
12. The device for adjusting the driving waveform according to claim 11, characterized in that, Also includes: The prompting unit is used to display a prompt message when the value of the parameter of the adjusted waveform exceeds the adjustment limit, the prompt message being used to indicate that the adjustment has exceeded the adjustment limit.
13. An electronic device, characterized in that, include: One or more processors; A memory that stores programs; When the program is executed by the one or more processors, the one or more processors implement the vibration waveform adjustment method for a linear motor as described in any one of claims 1 to 6.
14. A readable storage medium, characterized in that, It stores a computer program, wherein when the computer program is executed by a processor, it implements the vibration waveform adjustment method of the linear motor as described in any one of claims 1 to 6.