Vibration feedback method and electronic equipment
By allocating module responsibilities between the application layer and other layers, the collaborative module powers on the motor in advance and outputs vibration when the rotation angle reaches the threshold value, solving the synchronization problem between interface updates and vibration feedback and improving the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2024-10-22
- Publication Date
- 2026-04-24
AI Technical Summary
Existing electronic devices suffer from a synchronization problem between interface updates and vibration feedback, resulting in vibration delays and impacting user experience.
By allocating module responsibilities between the application layer and other layers, the synchronization of interface updates and vibration feedback is ensured. Specific measures include the collaborative module powering on the motor in advance and calling the motor drive to output vibration when the rotation angle reaches the threshold value. The collaborative module negotiates the threshold value with the first application to ensure synchronization.
It achieves synchronization between interface updates and vibration feedback, avoids vibration delay, and improves user experience.
Smart Images

Figure CN121918692A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of terminal technology, and in particular to a vibration feedback method and electronic device. Background Technology
[0002] To enhance the human-computer interaction experience, most electronic devices now feature vibration feedback. Taking a watch as an example, when the watch detects the user rotating or pressing the crown, it can update the interface and output vibration feedback. However, in practical applications, the watch's interface update and vibration feedback are not synchronized; for example, the interface may have updated but the watch may not have vibrated yet, resulting in a vibration delay that negatively impacts the user experience. Summary of the Invention
[0003] This application provides a vibration feedback method and electronic device that can minimize vibration delay, help achieve synchronization between interface updates and vibration feedback, and improve user experience.
[0004] Firstly, a vibration feedback method is provided for application in electronic devices. For example, the electronic device can be a watch. The electronic device includes a first application and a collaborative module. The first application resides in the application layer, and the collaborative module resides in other layers below the application layer. When the first application detects that the crown is rotated, it calls the display driver to update the interface; when the collaborative module detects that the crown is rotated, it calls the motor driver to output vibration.
[0005] In this embodiment, the electronic device can output visual feedback and tactile feedback. Visual feedback is exemplified by updating the interface, while tactile feedback is exemplified by outputting vibration. These two different types of feedback can be handled by different modules; for example, the first application is responsible for updating the interface, while the collaborative module is responsible for outputting vibration. Therefore, both the first application and the collaborative module can monitor the crown. When the first application detects that the crown has been triggered, it calls the display driver to update the interface. When the collaborative module detects that the crown has been triggered, it calls the motor driver to output vibration. Since the first application is located at the application layer, while the collaborative module is located at other layers below the application layer, the time required for the collaborative module to call the motor driver is shorter than the time required for the first application to call the display driver. This avoids vibration delay, ensures the synchronization between interface updates and vibration feedback as much as possible, and improves the user experience.
[0006] Optionally, the first application can be the application currently running on the electronic device, such as the application running in the foreground of the electronic device.
[0007] In one possible design, detecting that the crown is rotated includes detecting that the crown's rotation angle reaches a first threshold value. In this embodiment, when the electronic device detects that the crown's rotation angle reaches the first threshold value, it updates the interface and outputs vibration to avoid accidental triggering and affecting the user experience.
[0008] In one possible design, the method further includes: the collaboration module obtaining the first threshold value from the installation package of the first application; or, the collaboration module pre-setting the first threshold value and notifying the first application of the first threshold value. In this embodiment, to ensure synchronization between interface updates and vibration feedback, the vibration feedback threshold value and the interface update threshold value can be the same. Since the interface update is handled by the first application and the vibration feedback by the collaboration module, to ensure the threshold values are the same, the collaboration module can negotiate the threshold value (i.e., the first threshold value) with the first application. The negotiation method can include: the collaboration module obtaining the first threshold value from the installation package of the first application, or the first application obtaining the first threshold value from the collaboration module. In summary, the technical solution provided by this embodiment can ensure the synchronization of interface updates and vibration feedback as much as possible.
[0009] In one possible design, before the coordination module detects that the crown's rotation angle has reached a first threshold, it further includes: calling the motor driver to power on the motor. In this embodiment, to save power consumption, the motor is powered off when not in use. Therefore, when the coordination module determines that the crown rotation has reached the first threshold, it needs to first call the motor driver to power on the motor, and after the motor is powered on, it calls the motor driver again to output vibration. Considering that the motor power-on process takes a certain amount of time, it is difficult to guarantee the synchronization of interface updates and vibration output. Therefore, in this embodiment, the coordination module can call the motor driver to power on the motor in advance before the crown's rotation angle reaches the first threshold. In this way, when the coordination module determines that the crown rotation has reached the first threshold, calling the motor driver again can output vibration as soon as possible (because the motor is already powered on), thereby ensuring the synchronization of interface updates and vibration output as much as possible.
[0010] In one possible design, the coordination module invokes the motor drive to output vibration, including: the coordination module invokes the motor drive to output vibration based on motor vibration parameters, wherein the motor vibration parameters include at least one of vibration frequency, vibration period, and vibration amplitude. In the embodiments of this application, the coordination module can control at least one of the motor's vibration frequency, vibration period, and vibration amplitude to improve the diversity of vibration feedback.
[0011] In one possible design, the motor vibration parameters are obtained by the collaboration module from the installation package of the first application, or they are preset within the collaboration module. In this embodiment, the collaboration module can obtain motor vibration parameters from the first application or preset motor vibration parameters to control the motor's vibration frequency, vibration period, vibration amplitude, etc., thereby improving the diversity of vibration feedback.
[0012] In one possible design, the coordination module detects that the crown is rotated by means of: the coordination module detecting the crown rotation via the crown driver. In this embodiment, the coordination module can be connected to the crown driver to monitor the crown and thus provide vibration feedback.
[0013] In one possible design, the collaboration module resides in the application framework layer, hardware abstraction layer, or driver layer. In this embodiment, the first application resides in the application layer, and the collaboration module resides in the application framework layer, hardware abstraction layer, or driver layer. Therefore, the time required for the collaboration module to call the motor driver is shorter than the time required for the first application to call the display driver, which avoids vibration delay, ensures the synchronization of interface updates and vibration feedback as much as possible, and improves the user experience.
[0014] In one possible design, the method further includes: when the collaboration module detects that the crown is rotated, it calls the speaker driver to output sound. In this embodiment, the collaboration module can also be responsible for auditory feedback; for example, the collaboration module can call the speaker driver to output sound. Furthermore, since the collaboration module is located below the application layer, the time required for the collaboration module to call the speaker driver is shorter than the time required for the first application to call the display driver, thus avoiding auditory feedback delays, ensuring the synchronization of interface updates and auditory feedback as much as possible, and improving the user experience.
[0015] In one possible design, the collaborative module listens for and invokes the speaker driver to output sound, including: the collaborative module invokes the speaker driver to output sound based on sound parameters, wherein the sound parameters are obtained by the collaborative module from the installation package of the first application or preset within the collaborative module, and the sound parameters include at least one of sound frequency, sound amplitude, and sound period. In this embodiment, the collaborative module can control at least one of the speaker's sound frequency, sound amplitude, and sound period to enhance the diversity of auditory feedback.
[0016] Secondly, a vibration feedback method is also provided for application in electronic devices. For example, the electronic device can be a watch. When the electronic device detects that the crown is rotated, it calls the motor driver to power on the motor; when the electronic device detects that the rotation angle of the crown reaches a first threshold value, it calls the motor driver to output vibration.
[0017] In this embodiment, to save power consumption, the motor is powered off when not in use. When the electronic device detects the crown rotating, it can power on the motor. When the crown's rotation angle reaches a first threshold value, the motor drive is activated to output vibration. Since the motor is powered on, it can output vibration as quickly as possible to avoid vibration delay.
[0018] In one possible design, when the electronic device detects that the crown's rotation angle has reached a first threshold value, it further includes: invoking the display driver to update the interface. In this embodiment, the electronic device can output visual feedback and tactile feedback. Visual feedback is exemplified by updating the interface, and tactile feedback is exemplified by outputting vibration. The threshold values corresponding to these two types of feedback can be the same, for example, both being the first threshold value. That is, when the electronic device detects that the crown's rotation angle has reached the first threshold value, it invokes the motor driver to output vibration and invokes the display driver to update the interface. Since the motor has been powered on in advance, it can output vibration as quickly as possible to avoid vibration delay.
[0019] In one possible design, the electronic device includes a first application and a collaboration module. The first application is the currently running application of the electronic device and is located at the application layer. The collaboration module is located at other layers below the application layer. When the electronic device detects that the crown is rotated, it calls the motor driver to power on the motor, including: the collaboration module detects that the crown is rotated and calls the motor driver to power on the motor. When the electronic device detects that the crown's rotation angle reaches a first threshold value, it calls the motor driver to output vibration, including: the collaboration module detects that the crown's rotation angle reaches the first threshold value and calls the motor driver to output vibration. When the electronic device detects that the crown's rotation angle reaches the first threshold value, it calls the display driver to update the interface, including: the first application detects that the crown's rotation angle reaches the first threshold value and calls the display driver to update the interface.
[0020] In this embodiment, the electronic device can output visual feedback and tactile feedback. Visual feedback is exemplified by updating the interface, while tactile feedback is exemplified by outputting vibration. These two different types of feedback can be handled by different modules. For example, the first application is responsible for updating the interface, while the collaborative module is responsible for outputting vibration. For instance, the collaborative module can power on the motor in advance and, upon detecting that the crown's rotation angle has reached a first threshold, call the motor driver to output vibration. When the first application detects that the crown's rotation angle has reached the first threshold, it calls the display driver to update the interface. Since the first application is located at the application layer, and the collaborative module is located at other layers below the application layer, the time required for the collaborative module to call the motor driver is shorter than the time required for the first application to call the display driver. Furthermore, because the motor is powered on in advance, vibration delay can be avoided, ensuring the synchronization of interface updates and vibration feedback as much as possible and improving the user experience.
[0021] In one possible design, the method further includes: the collaboration module obtaining the first threshold value from the installation package of the first application; or, the collaboration module pre-setting the first threshold value and notifying the first application of the first threshold value. In this embodiment, to ensure synchronization between interface updates and vibration feedback, the vibration feedback threshold value and the interface update threshold value can be the same. Since the interface update is handled by the first application and the vibration feedback by the collaboration module, to ensure the threshold values are the same, the collaboration module can negotiate the threshold value (i.e., the first threshold value) with the first application. The negotiation method can include: the collaboration module obtaining the first threshold value from the installation package of the first application, or the first application obtaining the first threshold value from the collaboration module. In summary, the technical solution provided by this embodiment can ensure the synchronization of interface updates and vibration feedback as much as possible.
[0022] In one possible design, the coordination module invokes the motor drive to output vibration, including: the coordination module invokes the motor drive to output vibration based on motor vibration parameters, wherein the motor vibration parameters include at least one of vibration frequency, vibration period, and vibration amplitude. In the embodiments of this application, the coordination module can control at least one of the motor's vibration frequency, vibration period, and vibration amplitude to improve the diversity of vibration feedback.
[0023] In one possible design, the motor vibration parameters are obtained by the collaboration module from the installation package of the first application, or they are preset within the collaboration module. In this embodiment, the collaboration module can obtain motor vibration parameters from the first application or preset motor vibration parameters to control the motor's vibration frequency, vibration period, vibration amplitude, etc., thereby improving the diversity of vibration feedback.
[0024] In one possible design, the coordination module monitors the crown, including: the coordination module monitors the crown via a crown driver. In this embodiment, the coordination module can be connected to a crown driver to monitor the crown and thus provide vibration feedback.
[0025] In one possible design, the collaboration module resides in the application framework layer, hardware abstraction layer, or driver layer. In this embodiment, the first application resides in the application layer, and the collaboration module resides in the application framework layer, hardware abstraction layer, or driver layer. Therefore, the time required for the collaboration module to call the motor driver is shorter than the time required for the first application to call the display driver, which avoids vibration delay, ensures the synchronization of interface updates and vibration feedback as much as possible, and improves the user experience.
[0026] In one possible design, the method further includes: when the collaboration module detects that the crown's rotation angle reaches a first threshold value, it invokes the speaker driver to output sound. In this embodiment, the collaboration module can also handle auditory feedback; for example, it can invoke the speaker driver to output sound. Furthermore, since the collaboration module is located below the application layer, the time required for the collaboration module to invoke the speaker driver is shorter than the time required for the first application to invoke the display driver, thus avoiding auditory feedback delays, ensuring the synchronization of interface updates and auditory feedback as much as possible, and improving the user experience.
[0027] In one possible design, the collaborative module invokes the speaker driver to output sound, including: the collaborative module invokes the speaker driver to output sound based on sound parameters, wherein the sound parameters are obtained by the collaborative module from the installation package of the first application or preset within the collaborative module; the sound parameters obtained by the collaborative module include at least one of sound frequency, sound amplitude, and sound period. In this embodiment, the collaborative module can control at least one of the speaker's sound frequency, sound amplitude, and sound period to enhance the diversity of auditory feedback.
[0028] Thirdly, an electronic device is also provided, comprising:
[0029] Processor, memory, and one or more programs;
[0030] The one or more programs are stored in the memory, and the one or more programs include instructions that, when executed by the processor, cause the electronic device to perform the method provided in the first or second aspect above.
[0031] Fourthly, a computer-readable storage medium is also provided for storing a computer program that, when run on a computer, causes the computer to perform the methods provided in the first or second aspect above.
[0032] Fifthly, a computer program product is also provided, comprising a computer program that, when run on a computer, causes the computer to perform the methods provided in the first or second aspect above.
[0033] In a sixth aspect, a chip is also provided, which is coupled to a memory in an electronic device for calling a computer program stored in the memory and executing the technical solutions provided in the first or second aspect of the embodiments of this application. In the embodiments of this application, "coupling" means that two components are directly or indirectly combined with each other.
[0034] In a seventh aspect, a chip system is also provided, the chip system including a processing circuit and a storage medium, the storage medium storing instructions; when the instructions are executed by the processing circuit, they implement the method as described in the first or second aspect above.
[0035] For the technical effects that can be achieved in the second to seventh aspects mentioned above, please refer to the description of the technical effects that can be achieved by the corresponding design scheme in the first aspect mentioned above. This application will not repeat them here. Attached Figure Description
[0036] Figure 1A A schematic diagram of a watch provided in one embodiment of this application;
[0037] Figure 1B Another schematic diagram of a watch provided in an embodiment of this application;
[0038] Figure 2 A schematic diagram of vibration delay provided in an embodiment of this application;
[0039] Figure 3A Another schematic diagram of a watch provided in an embodiment of this application;
[0040] Figure 3B Another schematic diagram of a watch provided in an embodiment of this application;
[0041] Figure 4A Another schematic diagram of a watch provided in an embodiment of this application;
[0042] Figure 4B Another schematic diagram of a watch provided in an embodiment of this application;
[0043] Figure 5A Another schematic diagram of a watch provided in an embodiment of this application;
[0044] Figure 5B Another schematic diagram of a watch provided in an embodiment of this application;
[0045] Figure 6 Another schematic diagram of a watch provided in an embodiment of this application;
[0046] Figure 7 This is another schematic diagram of a watch provided in an embodiment of this application. Detailed Implementation
[0047] The following explanations of some terms used in the embodiments of this application are provided to facilitate understanding by those skilled in the art.
[0048] The embodiments of this application involve at least one, including one or more; where "multiple" means two or more. Furthermore, it should be understood that in the description of this specification, terms such as "first," "second," and "third" are used only for descriptive purposes and should not be construed as indicating relative importance or order. For example, "first chip" and "second chip" do not represent the degree of importance of the two or their order, but are merely for descriptive distinction. In the embodiments of this application, "and / or" merely describes an association relationship, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, and B alone. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship.
[0049] The directional terms mentioned in the embodiments of this application, such as "up", "down", "left", "right", "inner", and "outer", are only for reference to the directions in the accompanying drawings. Therefore, the directional terms used are for better and clearer explanation and understanding of the embodiments of this application, and are not intended to indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on the embodiments of this application.
[0050] References to "one embodiment," "in some examples," or "some embodiments" as described in the embodiments of this application mean that one or more embodiments of this specification include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in some examples," "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0051] The technical solutions provided in this application can be applied to electronic devices. For example, electronic devices can be portable devices such as mobile phones, tablets, laptops, personal computers (PCs), ultra-mobile personal computers (UMPCs), netbooks, and personal digital assistants (PDAs); or they can be wearable devices; or they can be vehicle-mounted devices, which can be mounted on various means of transportation such as cars, trains, electric vehicles, helicopters, airplanes, ships, bicycles, and motorcycles; or they can be virtual reality (VR) devices, augmented reality (AR) devices, mixed reality (MR) devices, etc. In short, this application does not limit the specific type of electronic device. Taking wearable devices as an example, wearable devices can include wrist-worn devices, head-mounted devices, and clothing devices. Wrist-worn devices can include, for example, watches, bracelets, gloves, wristbands, necklaces, and rings. Head-mounted devices can include, for example, glasses, helmets, headphones, and earplugs. Clothing-related equipment may include, for example, clothes, trousers, boots, buttons, belts, etc.
[0052] In this embodiment, the electronic device has an information input function. One possible approach is that the electronic device receives information input through an input device. For example, the input device may include a touch-sensitive input device and / or a non-touch-sensitive input device. A touch-sensitive input device may include a touchscreen display, touch panel, mouse, gamepad, keyboard, stylus, physical controls, etc. The physical controls may support various interaction types such as pressing, rotating, and twisting. A non-touch-sensitive input device may include input devices based on technologies such as light waves and sound waves, such as image acquisition devices, scanners, and voice input devices. In short, this embodiment does not limit the specific type of input device. Optionally, the input device and the electronic device can be integrated or separate. For example, in an integrated design, the input device is part of the electronic device, such as being pre-configured at the factory. In a separate design, the input device is a separate device independent of the electronic device, such as being externally connected to the electronic device, and the connection method may include wired or wireless connection. It is understood that different input devices can be used for different types of electronic devices. For example, when the electronic device is a PC, the input device may include a keyboard, mouse, etc.; when the electronic device is a mobile phone, the input device may include a touch screen, physical controls, etc., and the physical controls may include a power button, volume buttons, home button, etc.; when the electronic device is a wearable device such as a watch, the input device may include a touch screen, physical controls, etc., and the physical controls may be, for example, a crown. Optionally, the crown may adopt various interaction methods such as pressing, rotating, twisting, etc., without limitation.
[0053] In this embodiment, the electronic device has an information output function. One possible approach is that the electronic device outputs information through an output device. Exemplarily, the output device may include a visual output device, an auditory output device, or a tactile output device. A visual output device is used to output visual feedback; for example, a visual output device may be a display screen. An auditory output device is used to output auditory feedback; for example, an auditory output device may be a speaker or loudspeaker. A tactile output device is used to output tactile feedback, which may include vibration feedback or other types of feedback. Taking vibration feedback as an example, a tactile output device may be a vibration motor. The foregoing are examples of various output devices; this embodiment does not limit the specific type of output device. Optionally, the output device and the electronic device may be integrated or separate, which will not be repeated here. It is understood that different types of electronic devices may use different output devices. For example, when the electronic device is a PC, the output device may include a display screen, a speaker, etc.; when the electronic device is a mobile phone, the output device may include a display screen, a speaker, a vibration motor, etc.; when the electronic device is a wearable device such as a watch, the output device may include a display screen, a speaker, a vibration motor, etc.
[0054] As mentioned earlier, electronic devices have information input / output functions. One possible scenario is that the electronic device outputs information, i.e., provides feedback, based on the received input information. Feedback methods can include at least one of visual feedback, auditory feedback, and tactile feedback. Visual feedback includes, for example, updating the interface; auditory feedback includes, for example, outputting sound; and tactile feedback includes, for example, outputting vibration.
[0055] The following description uses a watch as an example of an electronic device, and illustrates the technical solutions provided in the embodiments of this application with reference to the accompanying drawings.
[0056] In this embodiment, the watch can output feedback after receiving input information. The feedback method may include at least one of visual feedback, auditory feedback, and tactile feedback. In this embodiment, the method of outputting feedback differs depending on the watch's structure. Two watch structures are provided below; the first structure is... Figures 1A to 1B The structure, the second structure is Figures 4A to 4B The structure is as follows. When the watch adopts the first structure, the feedback method is the first feedback method described below; when the watch adopts the second structure, the feedback method is the second feedback method described below.
[0057] The first structure of a watch. Optionally, the first structure of a watch may include... Figure 1A The hardware structure shown, and / or, Figure 1B The software structure is shown. Please refer to [link / reference]. Figure 1A This is a schematic diagram of a first structure of a watch provided in an embodiment of this application. Figure 1AA watch may include a primary chip, a crown module, a vibration module, a display module, and a sound module. It should be noted that... Figure 1A This document only lists some of the watch components relevant to this application. In practical applications, a watch may include more than [other components]. Figure 1A Many more components are not listed in this application.
[0058] The first chip integrates the first processor. Figure 1A (Not shown in the image). The first processor can be one or more processors. For example, the first processor may include one or more of the following processors: Central Processing Unit (CPU), Image Signal Processor (ISP), Digital Signal Processor (DSP), Application Processor (AP), Microcontroller Unit (MCU), Modem Processor, Graphics Processing Unit (GPU), Baseband Processor, Neural-Network Processing Unit (NPU), etc. Figure 1A The first chip is used to run the first application. Optionally, the first application can be an application or a proxy application. Taking the first application as the application itself as an example, the first application can be various types of applications such as health and fitness applications, instant messaging applications, camera applications, map applications, audio playback applications, and video playback applications. Taking the first application as a proxy application as an example, the proxy application can be a proxy application of various types of applications (e.g., the various types of applications listed above), and the various types of applications can be located in... Figure 1A The application can be located on other chips in the electronic device besides the first chip, or on other devices, without limitation. The implementation method of the proxy application is not described in detail in this application embodiment. Optionally, the first application can be a system application or a third-party application.
[0059] A crown module is used to acquire input information. For example, the crown module includes a crown driver and a crown. Taking a rotary crown as an example, where the user can rotate the crown, the crown driver listens for input events from the crown; for example, when the user rotates the crown, the crown driver can detect that the crown has been rotated. In some embodiments, the crown module is connected to a first chip and can be used to input information to the first chip. One possible connection method is that the crown module is connected to the first chip through the crown driver. For example, when the crown driver detects that the crown has been rotated, it can send a message to the first chip, which can be used to indicate that the crown has been rotated and / or the rotation angle of the crown. The crown driver is described here. The crown driver can be a shorthand for the crown driver program, which can be understood as a program used to implement the communication function between the crown and the first chip. For example, the crown driver may include one or more processes or one or more threads. In some embodiments, the crown driver may run on a crown driver chip (…). Figure 1A (Not shown in the image) The crown driver chip can be a chip specifically designed to run the crown driver or a chip that is not specifically designed to run the crown driver. Taking a chip specifically designed to run the crown driver as an example, the crown driver chip can be independent of and connected to the first chip; taking a chip that is not specifically designed to run the crown driver as an example, the first chip can, for instance, run the crown driver. In summary, the embodiments of this application do not limit the chip that runs the crown driver.
[0060] A display module is used to display information. For example, the display module includes a display driver and a display. The display driver drives the display to show information. In some embodiments, the display module is connected to a first chip and can be used to output visual feedback according to the control of the first chip. One possible connection method is that the display module is connected to the first chip through the display driver; therefore, the first chip can control the display to output visual feedback through the display driver. The display driver is described here. The display driver can be short for the display driver program, which can be understood as a program used to implement communication functions between the display and the first chip. For example, the display driver may include one or more processes or one or more threads. In some embodiments, the display driver may run on a display driver chip (…). Figure 1A (Not shown in the image) The display driver chip can be a chip specifically designed to run the display driver or a chip that is not specifically designed to run the display driver. Taking a chip specifically designed to run the display driver as an example, the display driver chip can be independent of and connected to the first chip; taking a chip that is not specifically designed to run the display driver as an example, the first chip can, for instance, run the display driver. In summary, the embodiments of this application do not limit the chip that runs the display driver.
[0061] A vibration module is used to output vibration. For example, a vibration module includes a motor driver and a vibration motor. The motor driver drives the vibration motor to output vibration. The vibration motor can be any motor capable of generating vibration, such as a mechanical motor, electronic haptic motor, ring ultrasonic motor, voice coil motor (VCM), etc., without limitation. In some embodiments, the vibration module is connected to a first chip and can be used to output vibration according to the control of the first chip. One possible connection method is that the vibration module is connected to the first chip through the motor driver; therefore, the first chip can control the vibration motor to output vibration through the motor driver. The motor driver is described here. The motor driver can be short for the driver program of the vibration motor, which can be understood as a program used to implement the communication function between the vibration motor and the first chip. For example, the motor driver may include one or more processes or one or more threads. In some embodiments, the motor driver may run on a motor driver chip (…). Figure 1A (Not shown in the image) The motor driver chip can be a chip specifically designed to drive the motor or a chip that is not specifically designed to drive the motor. Taking a chip specifically designed to drive the motor as an example, the motor driver chip can be independent of and connected to the first chip; taking a chip that is not specifically designed to drive the motor as an example, the first chip can, for instance, drive the motor. In summary, the embodiments of this application do not limit the type of chip used to drive the motor.
[0062] A sound module is used to output sound. For example, the sound module includes a speaker driver and a speaker; the speaker driver drives the speaker to output sound. The speaker can be of various types; considering the slim design of the watch, the speaker can be a small speaker (also called a mini speaker). In some embodiments, the sound module is connected to a first chip and can be used to output auditory feedback according to the control of the first chip. One possible connection method is that the sound module is connected to the first chip through the speaker driver; therefore, the first chip can control the speaker to output sound through the speaker driver. The speaker driver is described here. The speaker driver can be short for the speaker driver program, which can be understood as a program used to implement the communication function between the speaker and the first chip. For example, the speaker driver may include one or more processes or one or more threads. In some embodiments, the speaker driver can run on a speaker driver chip (…). Figure 1A (Not shown in the image) The speaker driver chip can be a chip specifically designed to drive the speaker or a chip that is not specifically designed to drive the speaker. Taking a chip specifically designed to drive the speaker as an example, the speaker driver chip can be independent of and connected to the first chip; taking a chip that is not specifically designed to drive the speaker as an example, the first chip can, for instance, run the speaker driver. In summary, the embodiments of this application do not limit the chip used to drive the speaker.
[0063] Please see Figure 1BThis is another schematic diagram of a first structure of a watch provided in an embodiment of this application. If... Figure 1A If we interpret this as a schematic diagram of the hardware structure of a watch, then... Figure 1B This can be understood as a schematic diagram of the watch's software structure. For example... Figure 1B The first chip in a watch can employ a layered architecture. A layered architecture consists of several layers, each with a clear role and function, and the layers communicate with each other through interfaces. For example, ... Figure 1B A layered architecture, from top to bottom, can include an application (APP) layer, an application framework (FWK) layer, a hardware abstraction layer (HAL), and a driver layer. It should be noted that in practical applications, the layered architecture of the first chip can include... Figure 1B The number of layers may be more or less, and the embodiments of this application do not limit the layers to a specific order. Figure 1B The positional relationships shown are not limited to the names of each layer; for example, the APP layer, FWK layer, and HAL layer can all have other names. The following text mainly uses... Figure 1B The following explanation uses the four-layer structure as an example.
[0064] The APP layer can include one or more applications. For example, the APP layer includes a first application, which can be of various types, as listed above, and will not be repeated here.
[0065] The FWK layer may include one or more application programming interfaces (APIs) that can be called by applications in the APP layer. When an application in the APP layer calls an API in the FWK layer, the FWK layer is used to facilitate communication between the APP layer and the lower layer (e.g., the HAL layer). Therefore, the FWK layer can be understood as a communication bridge between the APP layer and the HAL layer. In some embodiments, each API in the FWK layer corresponds to a driver in the driver layer. For example, the driver layer includes a display driver, a motor driver, a crown driver, and a speaker driver, and the FWK layer includes the corresponding APIs for these four drivers, such as the display API, motor API, crown API, and speaker API.
[0066] The HAL layer may include one or more DHI interfaces that can be called by the FWK layer. When a DHI interface in the HAL layer is called by the FWK layer, the HAL layer is used to implement communication between the FWK layer and the lower layer (e.g., the driver layer). Therefore, the HAL layer can be understood as a communication bridge between the FWK layer and the driver layer. In some embodiments, each DHI interface in the HAL layer corresponds to a driver in the driver layer. For example, the driver layer includes a display driver, a motor driver, a crown driver, and a speaker driver, and the HAL layer includes DHI interfaces corresponding to these four drivers, such as the display DHI interface, motor DHI interface, crown DHI interface, and speaker DHI interface. As mentioned above, each API interface in the FWK layer corresponds to a driver in the driver layer, and each DHI interface in the HAL layer also corresponds to a driver in the driver layer. Therefore, each API interface in the FWK layer can correspond to each DHI interface in the HAL layer. For example, the display API interface in the FWK layer corresponds to the display DHI interface in the HAL layer; the motor API interface in the FWK layer corresponds to the motor DHI interface in the HAL layer; the crown API interface in the FWK layer corresponds to the crown DHI interface in the HAL layer; and the horn API interface in the FWK layer corresponds to the horn DHI interface in the HAL layer.
[0067] The driver layer can include one or more drivers that can be called by the HAL layer. When a driver in the driver layer is called by an upper layer (e.g., the HAL layer), that driver can drive the corresponding hardware. For example, the driver layer can include a display driver, a motor driver, a crown driver, and a speaker driver. When the display driver is called by an upper layer, it can drive the display to update the interface. When the motor driver is called by an upper layer, it can drive the vibration motor to output vibration. When the speaker driver is called by an upper layer, it can drive the speaker to output sound. As mentioned above, the various API interfaces in the FWK layer and the various DHI interfaces in the HAL layer correspond to the various drivers in the driver layer. For example, the display driver in the driver layer corresponds to the display API interface in the FWK layer and the display DHI interface in the HAL layer; the motor driver in the driver layer corresponds to the motor API interface in the FWK layer and the motor DHI interface in the HAL layer; the crown driver in the driver layer corresponds to the crown API interface in the FWK layer and the crown DHI interface in the HAL layer; the speaker driver in the driver layer corresponds to the speaker API interface in the FWK layer and the speaker DHI interface in the HAL layer.
[0068] Continue with Figure 1BFor example, the process of the first application outputting visual feedback, auditory feedback, and tactile feedback is illustrated. For instance, the process of the first application outputting visual feedback may include: the first application calling the display API interface in the FWK layer, which in turn calls the display DHI interface in the HAL layer, thereby calling the display driver to drive the display to update the interface. For instance, the process of the first application outputting auditory feedback may include: the first application calling the speaker API interface in the FWK layer, which in turn calls the speaker DHI interface in the HAL layer, thereby calling the speaker driver to drive the speaker to output sound. For instance, the process of the first application outputting tactile feedback may include: the first application calling the motor API interface in the FWK layer, which in turn calls the motor DHI interface in the HAL layer, thereby calling the motor driver to drive the vibration motor to output vibration.
[0069] The above embodiments illustrate the first structure of a watch ( Figure 1A Hardware structure and / or Figure 1B (Software structure). In the embodiments of this application, when the watch adopts the first structure described above, the first feedback method can be used, which will be described in detail below.
[0070] First feedback method
[0071] When the watch adopts the first structure, if the first chip runs the first application, the first application can receive input information and output feedback. The first application receiving input information may include: the first application receiving input information sent by the crown driver. One possible implementation is that the first application listens to the crown, for example, through the crown driver. When the crown driver detects an input event from the crown, it can notify the first application of the input event. Optionally, the content that the first application listens to for the crown may include content A and / or content B.
[0072] Taking a rotating crown as an example, content A can be whether the crown has been rotated, and content B can be the crown's rotation parameters, such as the rotation angle. If the monitored content is content A, when the crown driver detects that the crown has been rotated, it sends a first message to the first application. This first message carries first indication information, which indicates that the crown has been rotated. For example, the first indication information can be a binary number, such as 1 or 0. If the monitored content is content B, when the crown driver detects that the crown has been rotated, it sends a second message to the first application. This second message carries second indication information, which indicates the crown's rotation angle.
[0073] Taking a push-button crown as an example, content A can be whether the crown is pressed, and content B can be the crown's pressing parameters, such as pressing duration and pressure. If the listening content is content A, when the crown driver detects that the crown is pressed, it sends a third message to the first application. This third message carries third indication information, which indicates that the crown is pressed. For example, the third indication information can be a binary number, such as 1 or 0. If the listening content is content B, when the crown driver detects that the crown is pressed, it sends a fourth message to the first application. This fourth message carries fourth indication information, which indicates the crown's pressing duration and / or pressure.
[0074] The above explanation uses a rotating or pressing crown as an example; these two types can be used individually or in combination. Taking combined use as an example, the crown supports both rotating and pressing. In this case, the first application's monitoring content for the crown can include one or more of content A, content B, content C, and content D. Content A indicates whether the crown is rotated; content B indicates the crown's rotation parameters, such as the rotation angle; content C indicates whether the crown is pressed; and content D indicates the crown's pressing parameters, such as the pressing duration and pressure. In addition to rotating and pressing, the crown can also support other types of interaction methods, with the same principle, which will not be listed here. The following examples mainly use a rotating crown as an example.
[0075] In this embodiment, when the first application detects that the crown is rotated, it can output feedback. Optionally, the first application can output feedback when it detects that the crown is rotated in two ways. Method 1: The first application outputs feedback immediately upon detecting that the crown is rotated. For example, after receiving a message carrying first indication information from the crown driver, the first application outputs feedback immediately. For information on the first indication information, please refer to the previous description. Method 2: The first application outputs feedback when it detects that the crown's rotation angle reaches a threshold value. For example, after receiving a message carrying second indication information from the crown driver, the first application determines that the crown's rotation angle has reached the threshold value based on the second indication information, and then outputs feedback. For information on the second indication information, please refer to the previous description. For example, the threshold value can be 3 degrees, 5 degrees, etc., and the specific value is not limited. Therefore, the difference between Method 1 and Method 2 is that in Method 1, feedback is output as soon as the crown is rotated, while in Method 2, feedback is output only when the crown's rotation angle reaches the threshold value. Compared with Method 1, Method 2 helps to avoid false triggering and saves power consumption. The following explanation primarily uses Method 2 as an example, where the first application outputs feedback when it detects that the crown's rotation angle has reached a threshold. Feedback methods can include at least one of visual, auditory, and tactile feedback. For ease of understanding, the following explanation uses the first application outputting visual and tactile feedback as examples.
[0076] In some embodiments, when the first application detects that the crown's rotation angle reaches a threshold value A, it outputs visual feedback, such as calling the display driver to update the interface. When the first application detects that the crown's rotation angle reaches a threshold value B, it outputs haptic feedback, such as calling the motor driver to output vibration. Optionally, threshold values A and threshold values B can be the same or different.
[0077] Taking the case where threshold values A and B are the same, meaning that the visual feedback threshold and haptic feedback threshold of the first application are the same, when the first application detects that the crown's rotation angle reaches this threshold value, it calls the display driver to update the interface and calls the motor driver to output vibration. Assume that after the first application detects that the crown's rotation angle has reached the threshold value, it calls the display driver at time T1 and the motor driver at time T2. Time T1 can be earlier than or equal to time T2, meaning the first application can call the display driver first and then the motor driver, or call both the display driver and the motor driver simultaneously. One possible scenario is that the first application can determine whether to call the display driver first and then the motor driver, or call both simultaneously, based on the current scenario. For example, if the first application determines that the current scenario is a screen-off scenario, it will call the display driver first and then the motor driver; if the first application determines that the current scenario is a screen-on scenario, it will call both the display driver and the motor driver simultaneously. Another possible scenario is that the first application can determine whether to call the display driver first and then the motor driver, or call both simultaneously, based on the current load. For example, if the first application determines that the current load is higher than the preset load, it will call the display driver first and then the motor driver to avoid the device from running sluggishly due to simultaneous calls, thus prioritizing visual feedback; if the first application determines that the current load is lower than the preset load, it will call both the display driver and the motor driver at the same time.
[0078] Taking a different threshold value A and threshold value B as an example, threshold value B can be smaller than threshold value A. That is, the haptic feedback threshold of the first application can be smaller than the visual feedback threshold. This allows the first application to call the motor driver first, followed by the display driver, helping to avoid vibration delay (i.e., the interface has been updated but the vibration has not yet occurred). It should be noted that if the difference between threshold value B and threshold value A is too large, it can easily lead to interface update delays (i.e., vibration has occurred but the interface has not yet updated), which will also affect the user experience. To avoid this situation, the difference between threshold value B and threshold value A should not be too large. For example, threshold value A is 5 degrees, and threshold value B can be 4 degrees or 3 degrees.
[0079] As mentioned earlier, when the first application detects that the crown's rotation angle has reached the threshold value B, it calls the motor drive to output vibration. Optionally, this can include the following two methods.
[0080] Method 1: To save power, the vibration motor is powered down when not in use. Therefore, when the first application detects that the crown's rotation angle has reached threshold B, it first calls the motor driver to power on the vibration motor. After the vibration motor is powered on, it calls the motor driver again to drive the vibration motor to output vibration. For example, if threshold B is 3 degrees, the first application determines that the crown's rotation angle has reached 3 degrees, first powers on the motor, and then triggers the motor to vibrate. It is worth noting that the motor's power-on process requires a certain amount of time. Therefore, in this method, after the crown's rotation angle reaches 3 degrees, a certain amount of time needs to be waited before vibration occurs, which may result in vibration delay. For example, if... Figure 2 In (a), the watch displays the interface of the first application. When the first application detects that the crown has rotated 3 degrees, it updates the interface, for example, to [image of the first application's interface]. Figure 2 In interface (b), because the motor requires a certain amount of time to power on, it is easy for the interface to update but the watch to not vibrate yet. For example, as shown in [example image]. Figure 2 In option (c), the watch vibrates only after a certain period of time has elapsed since the interface was updated, which is a vibration delay. Therefore, this method affects the user experience.
[0081] Method Two: To avoid vibration delay, the first application can pre-power on the vibration motor by calling the motor driver before the crown's rotation angle reaches threshold B. When the first application detects that the crown's rotation angle has reached threshold B, it calls the motor driver again to drive the vibration motor to output vibration. Continuing with the example of threshold B being 3 degrees, when the first application detects the crown being rotated, it can immediately power on the vibration motor by calling the motor driver. When the first application detects that the crown's rotation angle has reached 3 degrees, it calls the motor driver again to drive the vibration motor to output vibration. It should be understood that because the vibration motor is powered on in advance, it can output vibration quickly, thus avoiding vibration delay. Optionally, after powering on the vibration motor, if the first application determines that the crown's rotation angle has not reached 3 degrees within a preset time, it can power off the vibration motor to save power consumption.
[0082] Previous text Figure 1A and Figure 1B In this example, a watch including a first chip is used for illustration. In other embodiments, the watch may include a second chip in addition to the first chip. If a structure including a first chip but not a second chip is called a "single-core structure" or "single-chip structure," then a structure including both a first chip and a second chip can be called a "dual-core structure" or "dual-chip structure." For example, please refer to... Figure 3A This is another schematic diagram of a watch provided in one embodiment of this application. Figure 3AThe watch includes a first chip, a second chip, an inter-chip communication module, a sound module, a vibration module, a display module, and a crown module. For details regarding the first chip, sound module, vibration module, display module, and crown module, please refer to the previous text; they will not be repeated here. The second chip and the inter-chip communication module are described below.
[0083] The second chip integrates a second processor (not shown in the figure). The second processor can be one or more processors. For example, the second processor may include one or more of the following: CPU, ISP, DSP, AP, MCU, modem processor, GPU, baseband processor, NPU, etc. The second chip and the first chip can be the same or different. For example, the second processor integrated on the second chip may be different from the first processor integrated on the first chip; for example, the second chip integrates an MCU, and the first chip integrates an AP. Optionally, in the case of a watch including dual chips, one of the dual chips can be used as the main chip, and the other as an auxiliary chip. Which chip is used as the main chip and which as the auxiliary chip is not limited in this embodiment. For example... Figure 3A In this configuration, the first chip includes an application processor (AP), and the second chip includes an MCU. The first chip is the main chip, and the second chip is the auxiliary chip. For example... Figure 3A The first chip runs a first application, and the second chip runs a second application. As mentioned earlier, the first application can be an application or a proxy application. Taking the first application as a proxy application as an example, for instance, the first application can be a proxy application of the second application or other applications on the second chip. The second application can also be an application or a proxy application. Taking the second application as a proxy application as an example, for instance, the second application can be a proxy application of the first application or other applications on the first chip. The principle of the second application's output feedback is the same as that of the first application; the following explanation mainly uses the first application as an example. In the embodiments of this application, when the watch includes dual chips, the crown module, display module, vibration module, and sound module can be connected to the dual chips. For example, as Figure 3A The crown module and display module are connected to the first chip, while the vibration module and sound module are connected to the second chip. Optionally, which of these four modules (crown module, display module, vibration module, and sound module) are connected to the first chip and which are connected to the second chip can be configured at the time of manufacture. One possible scenario is that the first chip is the main chip, the second chip is the auxiliary chip, and the display module and crown module are connected to the main chip, while the vibration module and sound module are connected to the auxiliary chip.
[0084] An inter-chip communication module is used to enable communication between a first chip and a second chip. For example, the inter-chip communication module may include one or more processes or one or more threads. The inter-chip communication module may run on a single chip or on the first chip and / or the second chip.
[0085] Please see Figure 3B This is another schematic diagram of a watch provided in one embodiment of this application. Figure 3B Both the first and second chips in the watch can adopt a layered architecture. For example, the first chip may include an application layer, a firmware layer, a HAL layer, and a driver layer; the second chip may include an application layer, a firmware layer, a HAL layer, and a driver layer. See the previous text for details on layered architectures; they will not be repeated here. It should be noted that... Figure 3B In the first chip's layered architecture, there is an inter-chip communication module 1 (e.g., located in the driver layer), and in the second chip's layered architecture, there is an inter-chip communication module 2 (e.g., located in the driver layer). The inter-chip communication module 1 and the inter-chip communication module 2 are used to realize communication between the two chips.
[0086] In this embodiment of the application, when the watch adopts Figure 3A or Figure 3B When constructing a new structure, the first feedback method described above can also be used. For example, when the first chip runs the first application, the first application can monitor the crown. The monitoring principle has been described previously and will not be repeated. When the first application detects that the crown is rotated, it can output feedback in two ways: Method 1, output feedback immediately upon detecting the crown being rotated; Method 2, output feedback when the crown's rotation angle reaches a threshold value. Please refer to the previous text for details on these two methods. Taking Method 2 as an example, the first application outputs feedback when it detects the crown's rotation angle reaches a threshold value. Feedback methods can include at least one of visual feedback, auditory feedback, and tactile feedback. Taking visual and tactile feedback as examples, for instance, when the first application detects that the crown's rotation angle reaches threshold value A, it calls the display driver to update the interface; when the first application detects that the crown's rotation angle reaches threshold value B, it calls the motor driver to output vibration. Please refer to the previous description for the principle of this part. It should be noted that, as Figure 3B Since the motor driver is connected to the second chip, the first application calling the motor driver may include: the first application calling the inter-chip communication module 1, so as to call the inter-chip communication module 2 through the inter-chip communication module 1, and then calling the motor driver through the inter-chip communication module 2.
[0087] A second structure for the watch. Optionally, the second structure for the watch may include... Figure 4A The hardware structure shown, and / or, Figure 4B The software structure is shown. Please refer to [link / reference]. Figure 4A This is a schematic diagram of a second structure of a watch provided in an embodiment of this application. Figure 4AThe watch comprises a first chip, a collaboration module, a sound module, a vibration module, a crown module, and a display module. The first chip, sound module, vibration module, crown module, and display module have already been described previously and will not be repeated here. The collaboration module will be explained below.
[0088] A coordination module is used to coordinate feedback with the first chip. For example, both the coordination module and the first chip can receive input information through the crown module, and both can output feedback. The coordination module and the first chip can output different types of feedback. For example, the first chip is responsible for visual feedback, and the coordination module is responsible for other types of feedback besides visual feedback, such as auditory feedback and / or tactile feedback. Specifically, the first chip outputs visual feedback through the display module. The coordination module outputs sound through the sound module. The coordination module outputs vibration through the vibration module. In some embodiments, the coordination module may include one or more processes or one or more threads. The coordination module can run on a coordination chip. Optionally, the coordination chip may be a chip specifically for running the coordination module or a chip that is not specifically for running the coordination module. Taking a chip specifically for running the coordination module as an example, the coordination chip can operate independently of any other chip. Taking a chip that is not specifically for running the coordination module as an example, such as the first chip or the crown driver chip, the coordination module may run. For information on the first chip and the crown driver chip, please refer to the preceding description.
[0089] Please see Figure 4B This is another schematic diagram illustrating a second structure of a watch provided in an embodiment of this application. If... Figure 4A Think of it as a schematic diagram of the hardware structure of a watch. Figure 4B This can be understood as a schematic diagram of the watch's software structure. For example... Figure 4B The first chip in a watch can employ a layered architecture. It should be noted that... Figure 4B The layered architecture of the first chip in China and Figure 1B The layered architecture of the first chip is similar; to save space, this section mainly describes... Figure 4B and Figure 1B The differences. Optionally, the differences may include (a) through (d).
[0090] (a), Figure 4B The first application's function and Figure 1B The functions of the first application in each are not entirely the same. Figure 1B When the first application detects that the crown is rotated, it can output feedback. If there are multiple types of feedback (e.g., visual feedback and haptic feedback), then the first application needs to provide multiple types of feedback. Figure 4BWhen the first application detects that the crown is rotated, it can output feedback. However, the first application can be responsible only for visual feedback and not for other types of feedback, such as tactile feedback and / or auditory feedback.
[0091] (b), Figure 4B It includes a collaboration module, and Figure 1B The collaboration module is not included. As mentioned above, Figure 4B The first application can be responsible only for visual feedback, while other types of feedback are handled by the coordination module. For example, when the coordination module detects that the crown is rotated, it can provide haptic and / or auditory feedback. In this embodiment, the coordination module can be located in other layers below the application layer. For example, the coordination module can be located in the FWK layer, HAL layer, or driver layer. Figure 4B Taking the collaborative module located in the HAL layer as an example, it's understandable that the lower the collaborative module's position, the shorter the time required for it to call the motor drive. This will be explained later. It's also understood that the collaborative module can occupy only one layer or multiple layers. For example, a portion of the collaborative module might be located in the FWK layer, while another portion is located in the HAL layer. Optionally, the collaborative module can be integrated into other modules or operate independently of any module. For example, the collaborative module could be integrated into the crown driver. Optionally, the collaborative module can take various forms such as applications, plugins, and mini-programs. Optionally, the collaborative module can be pre-configured at the watch's factory or downloaded and installed by the user; there are no limitations.
[0092] (c), Figure 4B The crown drive function and Figure 1B The crown drive functions are not entirely the same in each watch. As mentioned earlier, Figure 1B When the crown driver detects that the crown has been rotated, it sends a message to the first application. This message indicates that the crown has been rotated and / or the angle of rotation of the crown. Figure 4B When the crown driver detects that the crown is rotated, it sends a message not only to the first application but also to the collaboration module.
[0093] (d), Figure 4B The function of motor drive in Figure 1B The functions of the motor drives in the two systems are not entirely the same. As mentioned earlier, Figure 1B The motor driver receives the call from the first application, and Figure 4B The motor drive receives calls from the coordination module. Similarly, Figure 4B The speaker driver function and Figure 1B The speaker driver functions in each are not entirely the same. As mentioned earlier, Figure 1B The speaker driver receives the call from the first application, and Figure 4BThe speaker driver can receive calls from the coordination module.
[0094] In this embodiment of the application, when the watch adopts the second structure mentioned above ( Figure 4A or Figure 4B When the structure is such that a second feedback method can be used, the second feedback method will be explained in detail below.
[0095] The second feedback method
[0096] In this embodiment, both the first application and the collaboration module can monitor the crown. The method by which the first application monitors the crown has been described previously and will not be repeated here. The collaboration module's monitoring of the crown can include: the collaboration module monitoring the crown through the crown driver. For example, when the crown driver detects an input event from the crown, it notifies the collaboration module of the input event. Optionally, the content monitored by the collaboration module may include content A and / or content B. Taking a rotary crown as an example, content A may indicate whether the crown has been rotated. Content B may be the crown's rotation parameters, such as the rotation angle. Taking a push-button crown as an example, content A may indicate whether the crown has been pressed, and content B may be the crown's pressing parameters, such as the pressing duration and pressure. The following embodiments mainly use a rotary crown as an example for illustration.
[0097] Optionally, the content monitored by the collaboration module and the first application regarding the crown can be the same or different. For example, the first application may only monitor content B and not content A, while the collaboration module monitors both content A and content B. In other words, the first application only focuses on the crown's rotation angle, while the collaboration module focuses on both whether the crown has been rotated and its rotation angle.
[0098] In this embodiment, when the first application and the collaboration module detect that the crown is rotated, they can be responsible for different types of feedback. For example, the first application is responsible for visual feedback, and the collaboration module is responsible for tactile feedback and / or auditory feedback. For ease of understanding, the following explanation uses the example of the first application providing visual feedback and the collaboration module providing tactile feedback.
[0099] Optionally, when the first application detects that the crown is rotated, it outputs visual feedback, which can be in two ways: Method 1, the first application immediately outputs visual feedback when it detects that the crown is rotated; Method 2, the first application outputs visual feedback when it detects that the crown's rotation angle reaches a threshold value C. Optionally, the threshold value C can be equal to the threshold value A mentioned above.
[0100] Optionally, when the coordination module detects that the crown is rotated, it outputs haptic feedback, which can include two methods: Method 3, the coordination module outputs haptic feedback immediately when it detects that the crown is rotated; Method 4, the coordination module outputs haptic feedback when it detects that the crown's rotation angle reaches the threshold value D. Optionally, the threshold value D can be equal to the threshold value B mentioned above.
[0101] Method 1 can be used in combination with Method 3 or Method 4, and similarly, Method 2 can be used in combination with Method 3 or Method 4. For example, Method 1 can be used in combination with Method 3, and Method 2 can be used in combination with Method 4. Taking the combination of Method 2 and Method 4 as an example, when the first application detects that the crown's rotation angle reaches the threshold value C, it outputs visual feedback, such as calling the display driver to update the interface. When the collaboration module detects that the crown's rotation angle reaches the threshold value D, it outputs haptic feedback, such as calling the motor driver to output vibration. Optionally, the threshold value C and the threshold value D can be the same or different.
[0102] Taking the same threshold value C and threshold value D as an example, this means that the visual feedback threshold of the first application and the haptic feedback threshold of the collaboration module are the same. Taking both threshold values C and D as 3 degrees as an example, when the first application determines that the crown's rotation angle reaches 3 degrees, it calls the display driver to update the interface. When the collaboration module determines that the crown's rotation angle reaches 3 degrees, it calls the motor driver to output vibration. For easier understanding, please compare... Figure 1B and Figure 4B . Figure 1B When the first application detects that the crown's rotation angle has reached the threshold value B, it calls the motor drive. Figure 4B When the collaborative application detects that the crown rotation angle has reached the threshold value D, it invokes the motor drive. Taking a threshold value of 3 degrees (both B and D) as an example, since the collaborative module resides in a layer below the application layer, Figure 4B The time consumed by the coordination module to call the motor drive is shorter than that of... Figure 1B The first application in the middle takes a short time to call the motor drive, so it is similar to... Figure 1B Compared to the other options, Figure 4BThis approach can shorten the vibration feedback time, helping to avoid vibration delay. Understandably, the lower the collaborative module is located, the shorter the time required for it to call the motor driver. In practical applications, electronic device manufacturers can determine the layer where the collaborative module is located based on the time required for the first application to detect the crown being rotated (1) and the time required for the first application to call the display driver (2). If the total time of time 1 and time 2 is very short, it indicates a very fast interface update response speed. To shorten the time for the collaborative module to call the motor driver, it can be located in a lower layer of the hierarchical architecture, such as the driver layer or HAL layer. If the total time of time 1 and time 2 is not particularly short, it indicates a not particularly fast interface update response speed, and the collaborative module can be located in a higher layer, such as the FWK layer.
[0103] It should be noted that in this approach, the first application and the collaboration module have the same threshold value. One possible scenario is that the first application includes a threshold value, and the collaboration module can obtain the threshold value from the first application, or the first application can proactively send the threshold value to the collaboration module. Optionally, the threshold value included in the first application can be a pre-configured threshold value (e.g., configured when the first application is uploaded) or a user-set threshold value; there is no limitation on this. Another possible scenario is that the collaboration module includes a threshold value, and the first application can obtain the threshold value from the collaboration module, or the collaboration module can proactively send the threshold value to the first application. Optionally, the threshold value included in the collaboration module can be a pre-configured threshold value within the collaboration module (e.g., configured at the factory) or a user-set threshold value; there is no limitation on this.
[0104] Taking a threshold value C that is not equal to a threshold value D as an example, threshold value C can be greater than or less than threshold value D. Taking a threshold value C greater than threshold value D as an example, this means the visual feedback threshold of the first application is greater than the haptic feedback threshold of the collaboration module. In this case, the collaboration module calls the motor driver first, followed by the display driver of the first application, which helps avoid vibration delay. It should be noted that if the difference between threshold value C and threshold value D is too large, it can easily lead to interface update delays, which will also affect the user experience. To avoid this, the difference between threshold value C and threshold value D should not be too large. For example, threshold value C is 5 degrees, and threshold value D can be 4 degrees or 3 degrees. Taking a threshold value C less than threshold value D as an example, this means the visual feedback threshold of the first application is less than the haptic feedback threshold of the collaboration module. In this case, the first application calls the display driver first, followed by the motor driver of the collaboration module. It should be noted that because the collaboration module is located in other layers below the application layer, the time consumed by the collaboration module to call the motor driver is relatively short. Even if the display driver is called first and then the motor driver, the vibration delay can be reduced.
[0105] As mentioned earlier, when the coordination module detects that the crown's rotation angle has reached the threshold value D, it calls the motor drive to output vibration. Optional methods include the following two.
[0106] In Method 1, when the coordination module detects that the crown's rotation angle has reached the threshold value D, it first calls the motor driver to power on the vibration motor. After the vibration motor is powered on, it calls the motor driver again to drive the vibration motor to output vibration. It should be noted that the motor power-on process takes a certain amount of time, but because the coordination module is located below the application layer, it can quickly call the motor driver to power on the motor as soon as possible, thus minimizing vibration delay.
[0107] Method 2: Before the crown's rotation angle reaches the threshold value D, the collaborative module calls the motor driver to power on the vibration motor in advance. When the collaborative module detects that the crown's rotation angle has reached the threshold value D, it calls the motor driver again to drive the vibration motor to output vibration.
[0108] In some embodiments, when the collaborative module detects that the crown's rotation angle has reached a threshold value D, it invokes the motor driver to output vibration. This may include: the collaborative module invoking the motor driver to output vibration based on motor vibration parameters. The motor vibration parameters may include at least one of vibration frequency, vibration period, and vibration amplitude. In this approach, the collaborative module needs to obtain the motor vibration parameters. One possible scenario is that the collaborative module has pre-configured motor vibration parameters, such as those configured at the factory. Another possible approach is that the first application includes motor vibration parameters, and the collaborative module obtains the motor vibration parameters from the first application or the first application actively sends the motor vibration parameters to the collaborative module. Optionally, the motor vibration parameters included in the first application may be pre-configured by the first application (e.g., configured at the factory) or user-set, without limitation. It is understood that if the collaborative module needs to output auditory feedback, it invokes the speaker driver to output sound. For example, the collaborative module may invoke the speaker driver to output corresponding sound based on sound parameters. The sound parameters may include at least one of sound frequency, vibration period, and vibration amplitude. In this approach, the collaborative module needs to obtain the sound parameters. One possibility is that the collaboration module has pre-configured sound parameters, such as those configured at the factory. Another possibility is that the first application includes sound parameters, and the collaboration module obtains the sound parameters from the first application or the first application actively sends the sound parameters to the collaboration module. Optionally, the sound parameters included in the first application can be pre-configured by the first application (e.g., configured at the factory) or can be set by the user, without limitation.
[0109] Optionally, in different scenarios, the collaboration module can invoke the motor driver based on different motor vibration parameters to make the vibration motor output different vibrations. An example is that when the watch displays an interface, the user can swipe up / down on the interface by rotating the crown. In this embodiment, the vibration mode when the interface is swiped to the boundary position can be different from the vibration mode when it is not swiped to the boundary position. One possible approach is that when the collaboration module determines that the current interface of the watch has not been swiped to the boundary position, it invokes the motor driver based on the first motor vibration parameter; when the collaboration module determines that the current interface of the watch has been swiped to the boundary position, it invokes the motor driver based on the second motor vibration parameter. Optionally, the vibration frequency, vibration loudness, and vibration period of the first motor vibration parameter and the second motor vibration parameter are different. In this approach, the collaboration module needs to know the first motor vibration parameter and the second motor vibration parameter in advance. For example, these parameters can be pre-configured by the collaboration module, obtained by the collaboration module from the first application, or actively provided to the collaboration module by the first application, without limitation. Furthermore, the collaboration module also needs to determine whether the current display interface of the first application has been swiped to the boundary position. One possible approach is that the first application notifies the collaboration module whether the current interface has been swiped to the boundary position.
[0110] In the previous text Figure 4A and Figure 4B This example illustrates a watch that includes a first chip. In other embodiments, the watch may include a second chip in addition to the first chip. For example, please refer to [link to relevant documentation]. Figure 5A This is another schematic diagram illustrating a second structure of a watch provided in an embodiment of this application. For example... Figure 5A The watch includes a first chip, a second chip, an inter-chip communication module, a coordination module, a crown module, a display module, a sound module, and a vibration module. For details regarding the first chip, second chip, inter-chip communication module, crown module, display module, sound module, and vibration module, please refer to the preceding description; they will not be repeated here. When the watch includes a first chip and a second chip, the crown module, display module, vibration module, and sound module can be connected to the first chip and the second chip. For example, as... Figure 5A The crown module and display module are connected to the first chip, and the vibration module and sound module are connected to the second chip. Figure 5A In this system, both the collaborative module and the first chip can receive input information through the crown module, and both can provide different types of feedback. For example, the first chip handles visual feedback, while the collaborative module handles other types of feedback besides visual feedback, such as auditory and / or tactile feedback. Taking tactile feedback as an example, since the vibration module is connected to the second chip, the collaborative module can establish communication with the second chip through the inter-chip communication module to output vibration through the vibration module.
[0111] Please see Figure 5B This is another schematic diagram illustrating a second structure of a watch provided in an embodiment of this application. For example... Figure 5B The watch includes a first chip and a second chip. Both the first and second chips adopt a layered architecture. For example, the first chip may include an application layer, a firmware layer, a hardware automation layer (HAL), and a driver layer; the second chip may include an application layer, a firmware layer, a HAL layer, and a driver layer. The layered architecture of the first chip also includes an inter-chip communication module 1 (e.g., located in the driver layer), and the layered architecture of the second chip also includes an inter-chip communication module 2 (e.g., located in the driver layer). Inter-chip communication module 1 and inter-chip communication module 2 are used to implement communication between the two chips. Figure 5B In this design, a collaboration module is included on the first chip, and optionally, a collaboration module may also be included on the second chip. The collaboration module on the first chip is responsible for the auditory and / or haptic feedback of the application (e.g., the first application) on the first chip. The collaboration module on the second chip is responsible for the auditory and / or haptic feedback of the application (e.g., the second application) on the second chip. Therefore, when the first chip runs the first application, the first application is responsible for visual feedback, and the collaboration module on the first chip is responsible for auditory and / or haptic feedback. When the second chip runs the second application, the second application is responsible for visual feedback, and the collaboration module on the second chip is responsible for auditory and / or haptic feedback. The following description uses the scenario of the first chip running the first application as an example.
[0112] In this embodiment of the application, when the watch adopts Figure 5A or Figure 5B In the case of a structure like this, the second feedback method described above can also be used. For example, both the first application and the collaboration module (located in the first chip) can monitor the crown. The monitoring principle has been described above and will not be repeated. When the first application and the collaboration module detect that the crown is rotated, they can be responsible for different types of feedback. For example, the first application can be responsible for visual feedback, and the collaboration module can be responsible for tactile feedback and / or auditory feedback. For example, taking the first application as responsible for visual feedback and the collaboration module as responsible for tactile feedback, for instance, when the first application detects that the crown's rotation angle reaches the threshold value C, it calls the display driver to update the interface; when the collaboration module detects that the crown's rotation angle reaches the threshold value D, it calls the motor driver to output vibration. Please refer to the previous description for the principle of this part. It should be noted that, as Figure 5B Since the motor driver is connected to the second chip, the coordination module can call the motor driver in the following ways: the coordination module calls the inter-chip communication module 1, so as to call the inter-chip communication module 2 through the inter-chip communication module 1, and then call the motor driver through the inter-chip communication module 2.
[0113] In the above embodiments, the example given is that when the first chip runs the first application, the first application outputs visual and haptic feedback. In other embodiments, Figure 5B In this context, when a second application runs on the second chip, the second application can also output visual and haptic feedback. For example, the second application on the second chip and the collaborative module on the second chip can respectively monitor the crown driver, with the second application handling visual feedback and the collaborative module handling auditory and / or haptic feedback. Taking the second application handling visual feedback and the collaborative module handling haptic feedback as an example, for instance, when the second application detects that the crown's rotation angle reaches a threshold value E, it calls the display driver to update the interface; when the collaborative module detects that the crown's rotation angle reaches a threshold value F, it calls the motor driver to output vibration. The principle behind this is the same as described above and will not be repeated.
[0114] In the preceding embodiments, two different watch structures were described. If the watch has the first structure, the first feedback method is used; if the watch has the second structure, the second feedback method is used. In other embodiments, when the watch has the second structure, both the first and second feedback methods can be used. For example, when the watch uses the first feedback method, the collaboration module is disabled; when the watch uses the second feedback method, the collaboration module is enabled. In this case, the watch can choose one of the two feedback methods. The selection method can include automatic selection or manual selection. Taking automatic selection as an example, considering that the second feedback method requires the collaboration module to run and has higher power consumption, while the first feedback method does not require the collaboration module to run and has lower power consumption, the watch can determine which feedback method to use based on the current operating load. For example, if the current operating load is low, the second feedback method can be used; if the current operating load is high, the first feedback method can be used. Taking manual selection as an example, one possible approach is that the watch provides a selection button to select one of the two methods. Therefore, the watch can determine which feedback method to use based on user operation.
[0115] Please see Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. The electronic device can be one of the electronic devices listed above, such as a watch. Figure 6As shown, the electronic device may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging 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 speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0116] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, memory, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). Different processing units may be independent devices or integrated into one or more processors. The controller may serve as the nerve center and command center of the electronic device. The controller can generate operation control signals based on instruction opcodes and timing signals to control instruction fetching and execution. Processor 110 may also include memory for storing instructions and data. In some embodiments, the memory in processor 110 is a cache memory. This memory can store instructions or data that processor 110 has just used or is recurring. If processor 110 needs to reuse an instruction or data, it can directly retrieve it from the memory. This avoids repeated access, reduces the waiting time of processor 110, and thus improves system efficiency.
[0117] In some embodiments, the processor 110 may execute the vibration feedback method provided in the embodiments of this application.
[0118] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may 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.
[0119] 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 may include multiple I2C buses. The processor 110 can couple to the touch sensor 180K, charger, flash, camera 193, etc., through different I2C bus interfaces. For example, the processor 110 can couple to the touch sensor 180K through the I2C interface, enabling the processor 110 and the touch sensor 180K to communicate through the I2C bus interface, thereby realizing the touch function of the electronic device 100.
[0120] The I2S interface can be used for audio communication. In some embodiments, the processor 110 may include multiple I2S buses. The processor 110 can be coupled to the audio module 170 via the I2S bus to enable 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 via the I2S interface to enable the function of answering phone calls through a Bluetooth headset.
[0121] The PCM interface can also be used for audio communication, sampling, quantizing, and encoding analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled via the PCM bus interface. In some embodiments, the audio module 170 can also transmit audio signals to the wireless communication module 160 via the PCM interface, enabling the function of answering phone calls through a Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.
[0122] The UART interface is a universal serial data bus used for asynchronous communication. This bus can be a bidirectional communication bus. It converts the data to be transmitted between serial and parallel communication. In some embodiments, the UART interface is typically 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 via the UART interface to implement Bluetooth functionality. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the UART interface to enable music playback through Bluetooth headphones.
[0123] The MIPI interface can be used to connect the processor 110 to peripheral devices such as the display screen 194 and the camera 193. The MIPI interface includes a camera serial interface (CSI) and a display serial interface (DSI). In some embodiments, the processor 110 and the camera 193 communicate via the CSI interface to enable the electronic device 100 to capture images. The processor 110 and the display screen 194 communicate via the DSI interface to enable the electronic device 100 to display images.
[0124] The GPIO interface is configurable via software. It can be configured as a control signal or a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 to a camera 193, a display screen 194, a wireless communication module 160, an audio module 170, a 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.
[0125] USB port 130 is a USB standard compliant interface, specifically a Mini USB port, Micro USB port, USB Type-C port, etc. USB port 130 can be used to connect a charger to charge electronic device 100, and can also be used for data transfer between electronic device 100 and peripheral devices. It can also be used to connect headphones for audio playback. This interface can also be used to connect other electronic devices, such as AR devices.
[0126] It is understood that the interface connection relationships between the modules illustrated in the embodiments of the present invention are merely illustrative and do not constitute a structural limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may also employ different interface connection methods or combinations of multiple interface connection methods as described in the above embodiments.
[0127] The wireless communication function of the electronic device can be implemented through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor, and baseband processor. Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in the electronic device can be used to cover one or more communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network. In some other embodiments, the antenna can be used in conjunction with a tuning switch.
[0128] The mobile communication module 150 can provide solutions for wireless communication applications including 2G / 3G / 4G / 5G in electronic devices. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.
[0129] The wireless communication module 160 can provide solutions for wireless communication applications in electronic devices, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2.
[0130] In some embodiments, antenna 1 of the electronic device is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, enabling the electronic device to communicate with networks and other devices via wireless communication technology.
[0131] The display screen 194 is used to display the application's interface, etc. The display screen 194 includes a display panel. In some embodiments, the electronic device may include one or N display screens 194, where N is a positive integer greater than 1.
[0132] The electronic device 100 can perform shooting functions through an ISP, a camera 193, a video codec, a GPU, a display 194, and an application processor. The ISP is used to process the data fed back by the camera 193.
[0133] Internal memory 121 can be used to store computer executable program code, which includes instructions. Processor 110 executes various functional applications and data processing of the electronic device by running the instructions stored in internal memory 121. Internal memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system and software code for at least one application program. The data storage area may store data generated during the use of the electronic device (e.g., images, videos, etc.). Furthermore, internal memory 121 may include high-speed random access memory and may also include non-volatile memory, such as at least one disk storage device, flash memory device, general-purpose flash memory, etc.
[0134] The external storage 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 storage interface 120 to perform data storage functions. For example, images, videos, and other files can be saved on the external memory card.
[0135] Electronic devices can implement audio functions such as music playback and recording through audio modules 170, speakers 170A, receivers 170B, microphones 170C, headphone jacks 170D, and application processors.
[0136] The audio module 170 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. The audio module 170 can also be used for encoding and decoding audio signals. In some embodiments, the audio module 170 may be located in the processor 110, or some functional modules of the audio module 170 may be located in the processor 110.
[0137] The speaker 170A, also known as a "loudspeaker," is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or listen to hands-free calls and other external playback scenarios through one or more speakers 170A.
[0138] The receiver 170B, also known as a "handpiece," can be one or more, and is used to convert audio electrical signals into sound signals. When the electronic device 100 answers a telephone call or voice message, the receiver 170B can be brought close to the ear to listen to the voice.
[0139] The microphone 170C, also known as a "microphone" or "voice transducer," is used to convert sound signals into electrical signals.
[0140] The 170D headphone jack is used to connect wired headphones.
[0141] The pressure sensor 180A is used to sense pressure signals and can convert the pressure signals into electrical signals. In some embodiments, the pressure sensor 180A may be disposed on the display screen 194.
[0142] The gyroscope sensor 180B can be used to determine the motion attitude of an electronic device. In some embodiments, the gyroscope sensor 180B can determine the angular velocity of the electronic device about three axes (i.e., the x, y, and z axes). The gyroscope sensor 180B can be used for image stabilization.
[0143] The barometric pressure sensor 180C is used to measure air pressure. In some embodiments, the electronic device calculates altitude using the air pressure value measured by the barometric pressure sensor 180C to assist in positioning and navigation.
[0144] The magnetic sensor 180D includes a Hall effect sensor. Electronic devices can use the magnetic sensor 180D to detect the opening and closing of a flip cover.
[0145] The 180E accelerometer can detect the magnitude of acceleration in various directions (typically three axes) of electronic devices. When the electronic device is stationary, it can detect the magnitude and direction of gravity.
[0146] The 180F distance sensor is used to measure distance. Electronic devices can measure distance using infrared or laser.
[0147] The proximity sensor 180G may include, for example, a light-emitting diode (LED) and a light detector, such as a photodiode. The LED may be an infrared LED. The electronic device emits infrared light outward through the LED. The electronic device uses the photodiode to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that an object is near the electronic device. When insufficient reflected light is detected, the electronic device can determine that no object is near the electronic device.
[0148] An ambient light sensor 180L is used to detect ambient light levels. Electronic devices can adaptively adjust the brightness of the display screen 194 based on the detected ambient light levels.
[0149] The fingerprint sensor 180H is used to collect fingerprints.
[0150] The 180J temperature sensor is used to detect temperature.
[0151] Touch sensor 180K, also known as a "touch panel," can be located on display screen 194. The touch sensor 180K and display screen 194 together form a touchscreen, also known as a "touch screen." Touch sensor 180K is used to detect touch operations applied to or near it. The touch sensor can then transmit the detected touch operation to the application processor to determine the type of touch event.
[0152] The bone conduction sensor 180M can acquire vibration signals. In some embodiments, the bone conduction sensor 180M can acquire vibration signals from the vibrating bone segments of the human vocal cords.
[0153] Buttons 190 include a power button, volume buttons, etc. Buttons 190 can be mechanical buttons or touch buttons. The electronic device can receive button inputs and generate key signal inputs related to user settings and function control. Motor 191 can generate vibration alerts. Motor 191 can be used for incoming call vibration alerts or for touch vibration feedback. Indicator 192 can be an indicator light, used to indicate charging status, battery level changes, messages, missed calls, notifications, etc. SIM card interface 195 is used to connect a SIM card. The SIM card can be inserted into or removed from the SIM card interface 195 to achieve contact and separation with the electronic device.
[0154] Understandable Figure 6 The components shown do not constitute a specific limitation on the electronic device. The electronic device in the embodiments of the present invention may include, but is not limited to, components that are more advanced than those shown. Figure 6 More or fewer parts. Furthermore, Figure 6 The combination / connection relationships between the components can also be adjusted and modified.
[0155] Figure 7 This is a schematic diagram of the structure of an electronic device 700 provided in an embodiment of this application. The electronic device 700 can be one of the electronic devices described above (e.g., a watch). Figure 7 As shown, the electronic device 700 may include: one or more processors 701; one or more memories 702; a communication interface 703; and one or more computer programs 704. These devices can be connected via one or more communication buses 705. The one or more computer programs 704 are stored in the memory 702 and configured to be executed by the one or more processors 701. The one or more computer programs 704 include instructions. For example, when the electronic device 700 is a watch as described above, the instructions can be used to perform relevant steps of the watch as in the corresponding embodiments above, such as executing... Figures 1A to 5B The relevant steps for making a watch. The communication interface 703 is used to enable communication between the electronic device 700 and other devices, such as a transceiver.
[0156] In the embodiments provided above, the methods provided by the present application are described from the perspective of an electronic device (e.g., a watch) as the executing entity. To implement the functions of the methods provided in the embodiments of the present application, the electronic device may include hardware structures and / or software modules, implementing the above functions in the form of hardware structures, software modules, or a combination of hardware structures and software modules. Whether a particular function is implemented in the form of hardware structures, software modules, or a combination of hardware structures and software modules depends on the specific application and design constraints of the technical solution.
[0157] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present invention are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid state disk (SSD)). Where there is no conflict, the solutions in the above embodiments can be combined.
[0158] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0159] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in one or more blocks of the flowchart illustrations and / or one or more blocks of the block diagrams.
[0160] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means that implement the functions specified in one or more flowcharts and / or one or more block diagrams.
[0161] These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, such that the instructions, which execute on the computer or other programmable apparatus, provide steps for implementing the functions specified in one or more flowcharts and / or one or more block diagrams.
[0162] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the scope and intent of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application is also intended to include such modifications and variations.
Claims
1. A vibration feedback method, characterized in that, Applied to an electronic device, the electronic device including a first application and a collaboration module, the first application being located at an application layer, and the collaboration module being located at other layers below the application layer, the method includes: When the first application detects that the crown is rotated, it calls the display driver to update the interface; When the collaborative module detects that the crown is rotated, it calls the motor drive to output vibration.
2. The method according to claim 1, characterized in that, The detection of the crown being rotated includes: detecting that the rotation angle of the crown reaches a first threshold value.
3. The method according to claim 2, characterized in that, The method further includes: The collaboration module obtains the first threshold value from the installation package of the first application; or, The collaboration module presets the first threshold value and notifies the first application of the first threshold value.
4. The method according to claim 2 or 3, characterized in that, Before the coordination module detects that the crown's rotation angle has reached the first threshold value, it also includes: calling the motor driver to power on the motor.
5. The method according to any one of claims 1-4, characterized in that, The collaborative module calls the motor drive to output vibration, including: The collaborative module calls the motor drive to output vibration based on the motor vibration parameters, which include at least one of vibration frequency, vibration period, and vibration amplitude.
6. The method according to claim 5, characterized in that, The motor vibration parameters are obtained by the collaboration module from the installation package of the first application, or are preset within the collaboration module.
7. The method according to any one of claims 1-6, characterized in that, The collaborative module detects that the crown is rotated, including: The collaboration module detects when the crown is rotated via the crown driver.
8. The method according to any one of claims 1-7, characterized in that, The collaboration module is located in the application framework layer, hardware abstraction layer, or driver layer.
9. The method according to any one of claims 1-8, characterized in that, The method further includes: When the collaborative module detects that the crown is rotated, it calls the speaker driver to output sound.
10. The method according to claim 9, characterized in that, The collaborative module listens to and calls the speaker driver to output sound, including: The collaboration module calls the speaker driver to output sound based on sound parameters. The sound parameters are obtained by the collaboration module from the installation package of the first application or preset within the collaboration module. The sound parameters include at least one of sound frequency, sound amplitude, and sound period.
11. A vibration feedback method, characterized in that, Applied to electronic devices, the method includes: When the electronic device detects that the crown is rotated, it calls the motor driver to power on the motor. When the electronic device detects that the crown's rotation angle has reached a first threshold value, it calls the motor to drive the output vibration.
12. The method according to claim 11, characterized in that, When the electronic device detects that the rotation angle of the crown has reached the first threshold value, it also includes: calling the display driver to update the interface.
13. The method according to claim 12, characterized in that, The electronic device includes a first application and a collaboration module. The first application is the application currently running on the electronic device. The first application is located in the application layer, and the collaboration module is located in other layers below the application layer. When the electronic device detects that the crown is rotated, it calls the motor driver to power on the motor, including: when the collaborative module detects that the crown is rotated, it calls the motor driver to power on the motor; When the electronic device detects that the rotation angle of the crown reaches the first threshold, it calls the motor to drive the output vibration, including: when the collaborative module detects that the rotation angle of the crown reaches the first threshold, it calls the motor to drive the output vibration; When the electronic device detects that the rotation angle of the crown has reached a first threshold value, it calls the display driver to update the interface, including: when the first application detects that the rotation angle of the crown has reached a first threshold value, it calls the display driver to update the interface.
14. The method according to claim 13, characterized in that, The method further includes: The collaboration module obtains the first threshold value from the installation package of the first application; or, The collaboration module presets the first threshold value and notifies the first application of the first threshold value.
15. The method according to claim 13 or 14, characterized in that, The collaborative module calls the motor drive to output vibration, including: The collaborative module calls the motor drive to output vibration based on the motor vibration parameters, which include at least one of vibration frequency, vibration period, and vibration amplitude.
16. The method according to claim 15, characterized in that, The motor vibration parameters are obtained by the collaboration module from the installation package of the first application, or are preset within the collaboration module.
17. The method according to any one of claims 13-16, characterized in that, The collaboration module listens to the crown, including: The collaboration module listens to the crown via the crown driver.
18. The method according to any one of claims 13-17, characterized in that, The collaboration module is located in the application framework layer, hardware abstraction layer, or driver layer.
19. The method according to any one of claims 13-18, characterized in that, The method further includes: When the collaborative module detects that the crown's rotation angle has reached the first threshold, it calls the speaker driver to output sound.
20. The method according to claim 19, characterized in that, The collaborative module calls the speaker driver to output sound, including: The collaboration module calls the speaker driver to output sound based on sound parameters. The sound parameters are obtained by the collaboration module from the installation package of the first application or preset within the collaboration module. The sound parameters obtained by the collaboration module include at least one of sound frequency, sound amplitude, and sound period.
21. An electronic device, characterized in that, include: Processor, memory, and one or more programs; The one or more programs are stored in the memory, and the one or more programs include instructions that, when executed by the processor, cause the electronic device to perform the steps of the method as described in any one of claims 1-20.
22. A computer-readable storage medium, characterized in that, The computer-readable storage medium is used to store a computer program that, when run on a computer, causes the computer to perform the method as described in any one of claims 1 to 20.
23. A computer program product, characterized in that, Includes a computer program that, when run on a computer, causes the computer to perform the method as described in any one of claims 1 to 20.