Screen backlight adjusting method and electronic equipment
By dynamically generating modulation control signals and inserting compensation pulses in the screen backlight adjustment method, the backlight driving frequency is increased, solving the screen flicker problem under low brightness and achieving the effects of eye protection and cost stability.
Patent Information
- Application Number
- CN202511922703.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-18
- Publication Date
- 2026-02-10
AI Technical Summary
In existing technologies, screens are prone to flickering in low brightness mode, which affects the visual experience and may cause eye fatigue. Furthermore, existing solutions often increase device cost and size or affect display quality.
By dynamically generating a modulation control signal in response to low brightness in the screen backlight adjustment method, the backlight driving frequency is increased to above the imperceptible flicker frequency threshold. The backlight driving signal frequency is adjusted by inserting compensation pulses using a software algorithm, thus avoiding an increase in hardware costs.
It achieves flicker-free and eye-friendly performance at low brightness while maintaining stable hardware costs, avoiding increased device size and impact on display quality.
Smart Images

Figure CN121506044A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of display technology, and more particularly to a screen backlight adjustment method and electronic device. Background Technology
[0002] In the field of display technology, display screens need to have brightness adjustment functions to adapt to the visual needs under different ambient light conditions. Dimming is the core technology to achieve this function. Currently, the mainstream dimming methods include pulse width modulation (PWM) dimming and direct current (DC) dimming.
[0003] PWM dimming adjusts brightness by rapidly switching the backlight on and off, utilizing the persistence of vision in the human eye. When the screen is in low brightness mode, the duty cycle of PWM dimming decreases, and the frequency of the backlight switching on and off decreases accordingly, easily producing noticeable screen flicker. This phenomenon not only affects the visual experience, but prolonged viewing can also lead to eye fatigue, dryness, and other discomfort, with a particularly significant impact on people with sensitive eyes. DC dimming, on the other hand, adjusts brightness by changing the magnitude of the DC drive current of the backlight. While it avoids the low-brightness screen flicker problem, it suffers from drawbacks such as low color reproduction and a limited dimming range. Furthermore, in display technologies such as OLED, it may cause display abnormalities such as uneven brightness / curvature, color inconsistency, grayscale banding, and a "moist screen" effect.
[0004] To improve the low-brightness screen flicker problem, various solutions have emerged in existing technologies, but most of them focus on the hardware level: some devices use high-frequency PWM dimming technology, which relies on complex hardware driver circuits and high-performance chips, resulting in increased device cost and power consumption; other devices achieve flicker-free dimming by adding extra sensors or circuits, which not only increases the size and thickness of the device, but may also affect the screen display effect and stability, and has poor compatibility, making it difficult to adapt to various screen types and devices. Summary of the Invention
[0005] To address one or more technical problems in the prior art, the present invention provides a screen backlight adjustment method, comprising the following steps: S101. In response to the current backlight value of the screen not being greater than the backlight threshold, the backlight adjustment thread obtains the ambient light intensity from the ambient light sensor and compares it with the ambient light threshold to generate a backlight comparison result; S102. The backlight adjustment thread generates a modulation control signal based on the backlight comparison result and transmits it to the screen backlight hardware; S103. The screen backlight hardware adjusts the current equivalent flicker frequency of the screen to above the imperceptible equivalent flicker frequency threshold by changing the modulation frequency of the backlight drive signal according to the modulation control signal.
[0006] The present invention also provides an electronic device, including a processor and a memory communicatively connected to the processor: The memory stores a program for adjusting screen brightness, and when the processor executes the program for adjusting screen brightness, it implements the screen backlight adjustment method. The processor is used to call the screen brightness adjustment program in the memory to implement the screen backlight adjustment method.
[0007] The beneficial effects of this invention are: This invention achieves flicker-free operation and eye protection at low brightness without increasing hardware costs by dynamically generating a modulation control signal based on ambient light intensity when the current backlight value is below a threshold, thereby increasing the backlight driving frequency to above the threshold for imperceptible flicker. Attached Figure Description
[0008] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used together with the embodiments of the invention to explain the invention and do not constitute a limitation thereof.
[0009] Figure 1 This is a flowchart of screen brightness adjustment according to an embodiment of the present invention; Figure 2 This is a logic diagram of screen brightness adjustment according to an embodiment of the present invention. Detailed Implementation
[0010] The present invention will now be described in detail with reference to the accompanying drawings and embodiments. The embodiments are provided by way of explanation and not by way of limitation. In fact, those skilled in the art will recognize that modifications and variations can be made to the present invention without departing from the scope or spirit thereof. For example, a feature represented or described as part of one embodiment may be used in another embodiment to produce yet another embodiment. Therefore, it is desirable that the present invention encompass such modifications and variations falling within the scope of the appended claims and their equivalents.
[0011] Example 1: like Figures 1-2 As shown, the present invention provides a screen backlight adjustment method, including the following steps: S101. In response to the current backlight value of the screen not being greater than the backlight threshold, the backlight adjustment thread obtains the ambient light intensity from the ambient light sensor and compares it with the ambient light threshold to generate a backlight comparison result; S102. The backlight adjustment thread generates a modulation control signal based on the backlight comparison result and transmits it to the screen backlight hardware; S103. The screen backlight hardware adjusts the current equivalent flicker frequency of the screen to above the imperceptible equivalent flicker frequency threshold by changing the modulation frequency of the backlight drive signal according to the modulation control signal.
[0012] In practice, the backlight threshold is the critical value that distinguishes between low-brightness and non-low-brightness scenes, and can be set independently. For example, it can be set according to the difference in screen type: For an LCD screen, if the maximum backlight value is 4095 levels and the maximum brightness is 500 nits, 20% of its brightness corresponds to 100 nits, which translates to a backlight value of 4095 × 20% = 819 levels. Therefore, the backlight threshold of this LCD screen can be set to 819 levels.
[0013] For an OLED screen, the maximum backlight level is 4095, the maximum brightness is 600 nits, and 20% brightness corresponds to 120 nits. This translates to a backlight level of 4095 × 20% = 819 levels. However, due to the self-emissive nature of OLED, screen flicker is more sensitive at low brightness. In actual settings, it can be fine-tuned to 750 levels (corresponding to 18% brightness, 108 nits) to ensure that the anti-flicker mechanism is triggered earlier.
[0014] The ambient light threshold can be set independently, for example, it can be set to 5 lux. Based on the correlation test between human eye perception of ambient light and screen flicker, below 5 lux is a dark environment and screen flicker perception is significant; above 5 lux is a non-dark environment and screen flicker perception is reduced.
[0015] The threshold for imperceptible equivalent flicker frequency can be set independently, for example, it can be set to 300Hz. Most users are not aware of flicker at 300Hz and above, and it is compatible with mainstream screen hardware driving capabilities.
[0016] Based on the above settings, taking an OLED screen scenario as an example, the current backlight value of the screen is fed back in real time by the screen driver chip as level 600, which is lower than the backlight threshold of 750 for this OLED screen, thus meeting the trigger condition. The backlight adjustment thread collects the ambient light intensity through the device's front ambient light sensor, obtaining data E=3 lux, which is compared with the ambient light threshold of 5 lux to generate a backlight comparison result of "ambient light intensity is lower than the ambient light threshold". Based on the above comparison result, the backlight adjustment thread can generate the first modulation control signal. This signal includes the basic duty cycle parameter (10%, corresponding to 10% of the current brightness) and compensation pulse configuration parameters (3 pulses, 2% pulse brightness, 0.5ms pulse duration, and 2ms pulse phase offset). After receiving the first modulation control signal, the screen backlight hardware (screen driver chip) can perform the following operations: (1) Basic drive signal adjustment: The main illumination duration within a single PWM cycle (10ms) is controlled to be 1ms (10ms×10%) according to the basic duty cycle of 10%, and the main illumination brightness is 10% of the current brightness (corresponding to 60 nits); (2) Compensation pulse insertion: During the "off period" (9ms) of a single PWM cycle, 3 micro-brightness compensation pulses are inserted according to the compensation pulse configuration parameters. The pulse brightness is 2% (≤1 / 2 of the main illumination brightness of 10%), the duration of a single pulse is 0.5ms, and the pulse interval = (9ms-3×0.5ms)÷3=2.5ms to ensure that the pulses do not overlap. Furthermore, the PHASE_CTRL_REG register (address 0x0C) of the screen driver chip can be configured to set the starting phase of the compensation pulse to 2ms to avoid the pixel data transmission period of 0~1ms in the 16.67ms refresh cycle corresponding to the 60Hz refresh frequency of the OLED screen, thus avoiding screen jitter.
[0017] The current equivalent flicker frequency = basic modulation frequency × (1 + number of compensation pulses) × signal loss coefficient (calibration value 0.97). The basic modulation frequency is 100Hz. After inserting 3 compensation pulses, the equivalent flicker frequency = 100 × (1 + 3) × 0.97 = 388Hz, which is higher than the imperceptible equivalent flicker frequency threshold of 300Hz.
[0018] In traditional PWM dimming, at low brightness (e.g., 10% brightness), the duty cycle drops to 10%, the base modulation frequency is fixed at 120Hz, and there is no compensation pulse design. The equivalent flicker frequency is 120Hz, which is below 300Hz, resulting in noticeable screen flicker. This invention maintains the base modulation frequency at 100Hz at low brightness and increases the equivalent flicker frequency to 388Hz by inserting three compensation pulses. Furthermore, the compensation pulse parameters are coordinated with the pixel refresh timing to avoid brightness jumps.
[0019] Hardware-level high-frequency PWM dimming requires a dedicated high-frequency driver chip, directly boosting the base modulation frequency to over 300Hz, significantly increasing hardware costs. This invention, however, achieves an equivalent high-frequency effect without hardware modifications by inserting compensation pulses through software algorithms, thus maintaining the same hardware cost.
[0020] DC dimming adjusts low brightness by reducing the drive current. At 10% brightness, the color fidelity ΔE value is 3.2 (perceptible to the human eye), resulting in a slight color cast. This invention maintains the color advantages of PWM dimming by maintaining brightness stability through compensation pulses. At 10% brightness, the color deviation ΔE value is controlled within 1.5 (imperceptible to the human eye), without color cast or grayscale banding issues.
[0021] Testing was conducted on an OLED screen: Flicker frequency data was collected at 1% to 20% brightness intervals (corresponding to backlight levels 41 to 819), resulting in a linear relationship f = 5L + 70 (where f is the flicker frequency and L is the brightness percentage). For example, f = 75Hz when L = 1%, f = 120Hz when L = 10%, and f = 170Hz when L = 20%. In low-brightness scenarios (L ≤ 20%), the equivalent flicker frequency is set to ≥ 300Hz, which is used as the benchmark for dimming parameter calculation. The system brightness value is read in real-time through the brightness feedback interface of the screen driver chip. When L ≤ 20% (corresponding to backlight level ≤ 819), a software-simulated dimming mode is triggered, calling the device's front ambient light sensor (sampling frequency 10Hz, accuracy ±0.1 lux) to obtain the ambient light intensity E. When E ≤ 5 lux (dark environment), the algorithm prioritizes increasing the equivalent frequency; when E > 5 lux, the frequency is reduced to save power while maintaining an equivalent frequency ≥ 300Hz. When L=10% (corresponding to a backlight level of 409) and E=3 lux, the target equivalent flicker frequency is 350Hz. Combining this with a signal loss coefficient of 0.97, the theoretical equivalent frequency is approximately 350 ÷ 0.97 ≈ 361.86Hz. Using the formula "Theoretical equivalent frequency = Basic modulation frequency × (1 + Number of compensation pulses)", given a basic modulation frequency of 100Hz, the number of compensation pulses N is calculated as (361.86 ÷ 100) - 1 ≈ 2.62, rounded down to 3. The compensation pulse brightness is set to 10% × 1 / 5 = 2%, the duration of a single pulse is equal to the main illumination duration (1ms) × 1 / 5 = 0.2ms, and the pulse interval is approximately (10ms - 1ms - 3 × 0.2ms) ÷ 3 ≈ 2.73ms. The OLED screen has a refresh rate of 60Hz, a refresh cycle of approximately 16.67ms, and a refresh period of 0~1ms. By configuring the PHASE_CTRL_REG register (address 0x0C) of the screen driver chip, the pulse phase offset is set to 2ms, ensuring that the start times of the three compensation pulses are 2ms, 4.93ms, and 7.86ms respectively, all avoiding the refresh period and preventing screen flicker. Parameters are read through the screen driver chip's I2C feedback interface, and the actual equivalent flicker frequency is calculated to be 100×(1+3)×0.97=388Hz, which meets the target requirements.
[0022] Example 2: Further, step S102 includes: if the backlight comparison result is that the ambient light intensity is lower than the ambient light threshold, the backlight adjustment thread generates a first modulation control signal and transmits it to the screen backlight hardware; Step S103 includes: in response to the screen backlight hardware receiving the first modulation control signal, the screen backlight hardware increases the current equivalent flicker frequency of the screen to a first equivalent flicker frequency threshold by increasing the modulation frequency of the backlight driving signal, wherein the first equivalent flicker frequency threshold is not less than the imperceptible equivalent flicker frequency threshold.
[0023] In practical implementation, taking a smart tablet as an example, the imperceptible equivalent flicker frequency threshold can be set independently. Furthermore, it can be set based on user feedback and actual test results for different products. Based on comprehensive testing and statistics of various types of display devices, the imperceptible equivalent flicker frequency threshold in this invention is preferably set to 300Hz. When the screen backlight hardware receives the first modulation control signal indicating that the current environment is a dark environment (ambient light intensity is lower than the ambient light threshold), the current equivalent flicker frequency of the screen is increased to the first equivalent flicker frequency threshold. Since the first equivalent flicker frequency threshold is greater than or equal to the imperceptible equivalent flicker frequency threshold, the user will hardly perceive screen flicker, thus effectively protecting eyesight.
[0024] For example, when the ambient light of the smart tablet is E=3 lux (<5 lux), the program reads the current basic modulation frequency as 100Hz and the current number of compensation pulses as 1 through the screen driver chip. The current equivalent flicker frequency is 100×(1+1)=200Hz (below the imperceptible equivalent flicker frequency threshold of 300Hz). The frequency boosting process is initiated: the frequency difference to be boosted is 300-200=100Hz. The program prioritizes increasing the frequency by increasing the number of dim compensation pulses (avoiding a surge in power consumption caused by directly increasing the basic modulation frequency). The required number of compensation pulses is calculated by reverse calculation according to the formula: 300=100×(1+N)→N=2 times, that is, 2 more compensation pulses are needed on the basis of the existing 1 compensation pulse. The final number of compensation pulses is set to 3. Considering the signal transmission loss of the screen driver chip, the program can set the target first equivalent flicker frequency threshold to 310Hz, which is above the imperceptible equivalent flicker frequency threshold.
[0025] In existing technologies, increasing the flicker frequency often uses fixed increments (e.g., 50Hz increments each time), without distinguishing between the current frequency and the imperceptible threshold. This leads to either excessive increases wasting power or insufficient increases resulting in continued screen flicker. This invention clearly defines and correlates the current equivalent flicker frequency with the imperceptible equivalent flicker frequency threshold, allowing for precise frequency increases as needed. Existing technologies do not utilize "experimentally determined imperceptible threshold + precise frequency difference calculation" for improving screen flicker prevention. This invention quantifies the imperceptible equivalent flicker frequency threshold experimentally and determines the minimum increase amount through difference calculation, thus solving the problems of wasted power or insufficient effect caused by fixed increments.
[0026] Optionally, the step of generating the first modulation control signal includes: When the ambient light intensity is lower than the ambient light threshold and the current backlight value is in the 0~320 level of extremely low brightness range, the backlight adjustment thread dynamically calculates the number of compensation pulse insertions based on the difference between the preset imperceptible equivalent flicker frequency threshold and the current equivalent flicker frequency, and generates a first modulation control signal containing compensation pulse configuration parameters accordingly. The compensation pulse brightness is no more than half of the main illumination brightness, the compensation pulse duration is one-fifth of the main illumination duration, and each compensation pulse is evenly distributed within a single pulse width modulation period, so as to raise the equivalent flicker frequency to a non-perceptible threshold of no less than 300 Hz while maintaining the target brightness.
[0027] Preferably, the compensation pulse configuration parameters further include a pulse phase offset, which is used to align the starting edge of the compensation pulse with the non-refresh period of the pixel refresh cycle.
[0028] Specifically, the backlight adjustment thread reads the pixel refresh timing fed back by the screen driver chip, calculates the blank period of the refresh window in real time, and dynamically adjusts the insertion phase of the compensation pulse so that the compensation pulse completely avoids the pixel data transmission stage. In extremely dark environments and when the current backlight value is below 160, the pulse phase offset is set to 2 milliseconds by default and is adaptively corrected as the refresh rate fluctuates, with a correction step of 0.1 milliseconds. If the compensation pulse is detected to overlap with the refresh window, the backlight adjustment thread immediately triggers pulse phase recalculation and synchronously updates the register configuration of the screen backlight hardware. This ensures that the drive signal after inserting the compensation pulse increases the equivalent flicker frequency without causing screen jitter, ghosting, or brightness jumps, thereby achieving a balance between flicker-free operation, low power consumption, and high display compatibility in low-brightness scenarios.
[0029] Example 3: Further, step S102 includes: if the backlight comparison result is that the ambient light intensity is higher than the ambient light threshold, and the current equivalent flicker frequency of the screen is higher than the second equivalent flicker frequency threshold, the backlight adjustment thread generates a second modulation control signal and transmits it to the screen backlight hardware. Step S103 includes: in response to the screen backlight hardware receiving the second modulation control signal, the screen backlight hardware reduces the current equivalent flicker frequency of the screen to a second equivalent flicker frequency threshold by reducing the modulation frequency of the backlight driving signal, wherein the second equivalent flicker frequency threshold is not less than the imperceptible equivalent flicker frequency threshold.
[0030] In specific implementation, taking the smart tablet scenario as an example, the ambient light threshold is still defined as 5 lux, the second equivalent flicker frequency threshold is set to 300Hz (consistent with the non-perceptible equivalent flicker frequency threshold, which satisfies the flicker-free requirement and maximizes the reduction of power consumption), the current equivalent flicker frequency = basic modulation frequency × (1 + number of compensation pulses), and the signal loss coefficient is calibrated to 0.97.
[0031] When the smart tablet moves from an environment with ambient light E=3 lux to an environment with ambient light E=60 lux, the dimming program first reads the current dimming parameters: the basic modulation frequency is 100 Hz, the number of compensation pulses is 3, and the current equivalent flicker frequency is calculated as 100 × (1 + 3) = 400 Hz. After multiplying by the signal loss coefficient, the actual frequency is 400 × 0.97 = 388 Hz (higher than the second equivalent flicker frequency threshold of 300 Hz). If there is no abnormal shift in screen brightness (error ≤ 0.5%), the dimming program determines that the "frequency reduction condition" is met.
[0032] The core objective of the dimming program is to reduce the actual equivalent flicker frequency to 300Hz (the second equivalent flicker frequency threshold) without affecting screen brightness. 300Hz (target actual frequency) = adjusted base modulation frequency (F_base') × (1+N') × 0.97. To maintain compatibility with the number of compensation pulses in Example 5, N' is temporarily fixed at 3 times. The calculated F_base' is 300 ÷ [(1+3) × 0.97] ≈ 300 ÷ 3.88 ≈ 77.3Hz, which is rounded down to 78Hz (the smart tablet screen driver chip supports 50-200Hz adjustment). The current screen brightness L=5% (corresponding to 150 backlight levels), and the base duty cycle is 5%. After adjusting the base modulation frequency to 78Hz, the dimming program verifies the main illumination duration = 1 / 78×5%≈0.64ms, which deviates from the original main illumination duration at 100Hz (1 / 100×5%=0.5ms) by ≤0.2ms. There is no change in perceived brightness, confirming the parameters are feasible. The dimming program generates a second modulation control signal, containing parameters such as the adjusted base modulation frequency of 78Hz, 3 compensation pulses, and a base duty cycle of 5%, which is transmitted to the screen backlight hardware (screen driver chip) via the MIPIDSI interface. After receiving the signal, the screen backlight hardware updates the base modulation frequency configuration in the PWM_CTRL_REG register and the compensation pulse parameters in the COMP_PULSE_REG register, completing the frequency reduction adjustment.
[0033] The dimming program reads the feedback parameters of the screen backlight hardware in real time and calculates the actual equivalent flicker frequency = 78×(1+3)×0.97≈301Hz (stable within the second equivalent flicker frequency threshold of 300Hz±2Hz). Based on this, a strategy is formed to prioritize response speed in strong light environments, while taking into account flicker-free operation, low power consumption and response efficiency.
[0034] In existing technologies, once the equivalent flicker frequency is increased, it often remains unchanged, even if the ambient light brightens (the imperceptible threshold decreases), without reducing the frequency, leading to unnecessary power consumption. This invention proactively reduces the frequency to the threshold when the ambient light is greater than the ambient light threshold and the current frequency is higher than the imperceptible threshold, thus optimizing power consumption. Existing technologies do not combine "ambient light judgment + frequency threshold comparison + precise frequency reduction" for power consumption optimization. This invention triggers the frequency reduction condition through ambient light judgment, determines the frequency reduction magnitude through frequency comparison, and achieves precise frequency reduction by reducing compensation pulses, solving the problem of power waste caused by excessively high frequencies.
[0035] Optionally, the second modulation control signal includes basic modulation frequency parameters and compensation pulse adjustment parameters. The backlight adjustment thread dynamically determines the frequency reduction amplitude based on the absolute difference between the current backlight value and the target backlight value and the screen type: the larger the difference, the larger the frequency reduction step size to improve adjustment efficiency; wherein, the frequency reduction amplitude of organic light-emitting diode type screens is smaller than that of liquid crystal type screens to adapt to the light-emitting characteristics of different screens; and the single modulation frequency adjustment amount does not exceed 10% of the imperceptible equivalent flicker frequency threshold to avoid brightness jumps during frequency reduction and ensure continuous and smooth brightness transition.
[0036] Preferably, the compensation pulse adjustment parameters include the number of compensation pulse reductions and the pulse brightness attenuation coefficient. The backlight adjustment thread further refines the frequency reduction strategy based on the magnitude of the ambient light intensity exceeding the ambient light threshold and the brightness range to which the current backlight value belongs: when the ambient light intensity exceeds the threshold by more than 50%, frequency reduction is preferentially achieved by reducing the number of compensation pulses, with each reduction not exceeding one-third of the original number of compensation pulses, to avoid pulse abrupt changes affecting the display; when the ambient light intensity exceeds the threshold by less than 50%, frequency reduction is achieved by reducing the brightness of the compensation pulses, with the pulse brightness attenuation coefficient taking values according to the range to which the current backlight value belongs, and the attenuation coefficient in the low brightness range being less than that in the medium and high brightness range, taking into account the brightness stability under low brightness; at the same time, the deviation between the actual brightness and the target brightness is calculated in real time during the frequency reduction process. If the deviation exceeds the brightness deviation threshold that is imperceptible to the human eye, the frequency reduction step size is dynamically adjusted based on the ambient light correction coefficient, and the basic modulation frequency parameters are corrected in conjunction with the screen type adaptation factor to ensure that the deviation between the screen brightness after frequency reduction and that before frequency reduction does not exceed 0.5%, thereby optimizing power consumption while maintaining the consistency and stability of the display effect.
[0037] Example 4: Furthermore, the first modulation control signal includes a basic duty cycle parameter and a compensation pulse configuration parameter. Step S103 further includes: in response to the screen backlight hardware receiving the first modulation control signal, the screen backlight hardware controls the main illumination duration in a single PWM cycle according to the basic duty cycle parameter, and inserts at least one compensation pulse in a single PWM cycle according to the compensation pulse configuration parameter, wherein the pulse brightness of the compensation pulse is not greater than 1 / 2 of the main illumination brightness.
[0038] In practical implementation, taking a smart tablet scenario as an example, the ambient light threshold is still 5 lux, the imperceptible equivalent flicker frequency threshold is 300Hz, and the actual equivalent flicker frequency = basic modulation frequency × (1 + number of compensation pulses) × signal loss coefficient (K = 0.97). The ambient light E of the smart tablet is 3 lux (< 5 lux), the current screen brightness L = 10% (corresponding to backlight value 409 levels, belonging to the 321~640 level range), the dimming program reads the screen driver chip parameters: basic modulation frequency F_base = 100Hz, current number of compensation pulses N = 1 time, and calculates the current actual equivalent flicker frequency = 100 × (1 + 1) × 0.97 = 194Hz.
[0039] If the target equivalent flicker frequency is 350Hz (signal loss needs to be compensated, theoretical target value = 350 ÷ 0.97 ≈ 361.86Hz), it is achieved by driving the signal with a "10% duty cycle + dynamic interpolation compensation", prioritizing increasing the number of compensation pulses rather than increasing the basic modulation frequency. To maintain a visual brightness of 10%, the basic duty cycle is set to 10%, and the main illumination duration in a single PWM cycle (T = 1 / F_base = 10ms) is 10ms × 10% = 1ms, with a main illumination brightness of 10% (corresponding to a backlight value of 409 levels of peak brightness). The formula is used to calculate the number of compensation pulses: 361.86Hz = 100Hz × (1 + N) → N ≈ 2.62, which is rounded down to 3 times; set to 1 / 5 of the current brightness (i.e., 10% × 1 / 5 = 2%), ≤ 1 / 2 of the main brightness, to avoid brightness deviation; interpolate 3 compensation pulses evenly within the "off period" (10ms - 1ms = 9ms) of a single PWM cycle, with a single pulse duration of 0.5ms and a pulse interval of (9ms - 3 × 0.5ms) ÷ 3 = 2.5ms, to ensure that the pulses do not overlap and the brightness changes smoothly.
[0040] The drive signal generation and hardware execution of the dimming program generate the first modulation control signal, which includes: a base duty cycle of 10%, 3 compensation pulses, 2% pulse brightness, 0.5ms pulse duration, and 2.5ms pulse interval; this signal is transmitted to the screen backlight hardware (driver chip) via the MIPI DSI interface. After receiving the signal, the screen backlight hardware updates the compensation pulse parameters in the COMP_PULSE_REG register, inserting 3 micro-brightness compensation pulses within the PWM cycle according to dynamic interpolation rules, while maintaining a constant duty cycle of 10% during the main illumination period.
[0041] In existing technologies, increasing the equivalent flicker frequency is often achieved by raising the base modulation frequency (e.g., from 80Hz to 300Hz). However, an excessively high base frequency leads to a sharp increase in power consumption of the screen driver chip, and some older chips do not support high frequencies. Traditional software solutions lack micro-brightness compensation pulse design, making it impossible to increase the equivalent frequency when the base frequency is low. This invention increases the equivalent frequency without increasing the base frequency by inserting micro-brightness compensation pulses. Existing technologies do not combine "micro-brightness compensation pulse brightness control (e.g., 1 / 3 to 1 / 5 of the current brightness) + timing register configuration + pixel refresh cycle conflict avoidance" for frequency increase. This invention ensures stable brightness by controlling the brightness of the compensation pulse, achieves precise timing control through register configuration, and ensures normal display by avoiding pixel cycles, thus solving the problems of high power consumption and poor compatibility caused by increasing the base frequency.
[0042] Optionally, when the backlight adjustment module generates the target backlight value, it also combines the brightness range of the current backlight value and the ambient light intensity to simultaneously determine the basic parameters of the compensation pulse. The number of compensation pulses is not less than 3, the pulse brightness does not exceed one-fifth of the main illumination brightness, and the ratio of the total duration of the pulse within a single pulse width modulation cycle to the main illumination duration is fixed to ensure that the visual brightness corresponding to the target backlight value remains stable, while ensuring that the screen's equivalent flicker frequency is not lower than the imperceptible equivalent flicker frequency threshold.
[0043] Preferably, the basic parameters of the compensation pulse also include pulse interval and dynamic adjustment rules. The pulses are evenly distributed during the non-lighting period of a single pulse width modulation cycle, and the time interval between adjacent pulses is not less than 4 times the pulse duration to avoid pulse superposition causing sudden brightness changes. The backlight adjustment module calculates the difference between the current equivalent flicker frequency and the target value in real time through a mathematical model of brightness and equivalent flicker frequency. If the difference exceeds 10Hz, the number of pulses is dynamically increased by 50Hz for each additional compensation pulse, or the equivalent flicker frequency is finely adjusted by increasing by 10Hz for each percentage point increase in pulse brightness to ensure that the final equivalent flicker frequency reaches the target value (not less than 350Hz). At the same time, when the ambient light intensity is lower than the ambient light threshold, the pulse brightness is fixed at one-fifth of the main lighting brightness. When the ambient light intensity is higher than the ambient light threshold, the pulse brightness can be adaptively adjusted in the range of one-fifth to one-third of the main lighting brightness, so as to maintain the visual brightness deviation corresponding to the target backlight value not exceeding 0.5%, and balance the anti-flicker effect and power consumption through scene-based optimization of pulse parameters.
[0044] Example 5: Furthermore, the compensation pulse configuration parameters include a pulse phase offset, and step S103 further includes: in response to the screen backlight hardware receiving the first modulation control signal, the screen backlight hardware aligns the starting edge of the compensation pulse with the non-refresh period of the pixel refresh cycle according to the pulse phase offset, so that the compensation pulse and the pixel refresh action are staggered in timing.
[0045] In practical implementation, taking a smart tablet as an example, the ambient light threshold is 5 lux, the imperceptible equivalent flicker frequency threshold is 300Hz, and the smart tablet screen pixel refresh rate is 60Hz. The corresponding pixel refresh cycle is 1 / 60 ≈ 16.67ms. The refresh period is 0~1ms of each cycle (pixel data transmission and display period), and the compensation pulse needs to avoid this period. The dimming program can achieve timing conflict avoidance by configuring two core registers of the screen driver chip: PHASE_CTRL_REG register (address 0x0C): sets the start phase of the compensation pulse to 2ms (avoiding the 0~1ms pixel refresh period); SYNC_CHECK_REG register (address 0x0D): enables the "pixel refresh-compensation pulse synchronization check" function, monitors the pixel refresh cycle in real time, and automatically adjusts the start phase of the compensation pulse if the refresh period is offset (±0.1ms).
[0046] The single PWM cycle is 10ms, and the compensation pulse start time is 2ms, 4.5ms, and 7ms of the PWM cycle (all avoiding the 0~1ms period of pixel refresh). The screen driver chip verifies in real time through the SYNC_CHECK_REG register to ensure that the compensation pulse does not overlap with the pixel refresh cycle. There were no abnormalities such as screen jitter or ghosting during the test, and the display effect was stable.
[0047] Optionally, the compensation pulse configuration parameters further include a pulse phase offset, which is used to align the starting edge of the compensation pulse with the non-refresh period of the pixel refresh cycle. When the screen is an organic light-emitting diode and the refresh rate is 60 Hz, the insertion interval of the compensation pulse in a single pulse width modulation cycle is set to 1.6 milliseconds, and its starting time avoids the pixel data refresh time slot, so as to ensure that the compensation pulse and the pixel refresh action are staggered in timing, thereby avoiding screen jitter or brightness jumps.
[0048] Preferably, the pulse phase offset is dynamically adjusted based on the brightness range of the current backlight value and the screen refresh cycle. In the extremely low brightness range and when the ambient light intensity is less than 5 lux, the backlight adjustment thread reads the pixel refresh timing fed back by the screen driver chip, identifies the start time of the non-refresh period, and sets the insertion time of the compensation pulse to the midpoint of the blank area of the refresh window. The offset is 2 milliseconds by default and is adaptively corrected in steps of 0.1 milliseconds. When the compensation pulse is detected to overlap with the refresh window, the backlight adjustment thread immediately triggers pulse phase recalculation and synchronously updates the register configuration of the screen backlight hardware. This ensures that under the conditions of an OLED screen refresh rate of 60 Hz and a compensation pulse insertion interval of 1.6 milliseconds, the compensation pulse always avoids the refresh time slot, thereby increasing the equivalent flicker frequency to an imperceptible threshold in low brightness scenarios while maintaining image stability and brightness consistency.
[0049] Example 6: Furthermore, it also includes the following steps: S201. The backlight adjustment module generates a target backlight value based on the user's screen brightness adjustment request; S202. The backlight adjustment thread calculates the delay time for a single brightness adjustment based on the difference between the current backlight value and the target backlight value of the screen and the brightness range to which the current backlight value belongs; S203. The backlight adjustment thread controls a single brightness adjustment from the current backlight value to the target backlight value according to the delay time; S204. The backlight adjustment module transmits the backlight value after a single adjustment to the screen backlight hardware, and the screen backlight hardware adjusts the backlight brightness according to the backlight value after the single adjustment. S205. Repeat steps S201 to S204 until the current backlight value matches the target backlight value.
[0050] In specific implementation, "single brightness adjustment" in S203 refers to a single small adjustment in the brightness adjustment process, based on the backlight value after the previous adjustment, advancing towards the target backlight value according to a preset step size. Each adjustment is based on the "result of the previous adjustment" and gradually approaches the target value, forming a "progressive" logic, rather than directly adjusting the current backlight value to the target backlight value all at once.
[0051] When step S205 terminates, "current backlight value = target backlight value," at which point the system completes brightness adjustment. At this point, it can continuously monitor the risk of screen flicker in low-brightness scenarios. In Example 1, step S101 uses "current backlight value not greater than the backlight threshold" as the trigger condition, which seamlessly connects with the output state of S205. Regardless of whether the target backlight value is low or high brightness, after S205 is completed, the system can detect the relationship between the current backlight value and the backlight threshold in real time. If the trigger condition is met, the screen flicker suppression process is initiated. This connection requires no additional hardware or software redundancy. After S205 is completed, the backlight adjustment module does not require additional data conversion and can directly transmit the current backlight value to the backlight adjustment thread. The thread obtains the ambient light intensity through the ambient light sensor, triggering the comparison process of S101. The connection delay is ≤5ms, which does not affect the system response speed.
[0052] Taking an OLED screen learning machine as an example, when a user issues a brightness adjustment request, the target backlight value is level 200 (belonging to the extremely low brightness range of 0-320 levels, corresponding to 8% brightness, which is lower than the backlight threshold of level 750). The backlight adjustment module generates the target backlight value of level 200, and the backlight adjustment thread calculates the delay time (since the initial backlight value is level 400, the difference is 200 levels, and the delay time corresponding to the extremely low brightness range is 640000 / 200 = 3200 microseconds). It performs 200 single adjustments in steps of 1 level / adjustment until... S205 is completed, and the current backlight value is 200 levels. After S205 is completed, the system continuously monitors the current backlight value (200 levels ≤ backlight threshold 750 levels) and triggers the process of Example 1—the backlight adjustment thread obtains E=3 lux (lower than the ambient light threshold of 5 lux) from the ambient light sensor, generates a comparison result of "ambient light intensity is lower than the ambient light threshold", and then inserts 3 compensation pulses through the first modulation control signal to increase the equivalent flicker frequency to 350 Hz, completing the closed loop of "brightness adjustment → screen flicker suppression".
[0053] In existing technologies, brightness adjustment and screen flicker suppression are mostly independent strategies. This invention combines the two to form a closed-loop solution of "smooth brightness adjustment + precise low-brightness screen flicker suppression": Example 6 achieves smooth progressive adjustment of the current backlight value to the target backlight value through dynamic delay time and graded step size; Example 1 immediately triggers screen flicker suppression linked to ambient light when the adjusted backlight value meets the condition of "not greater than the backlight threshold", raising the equivalent flicker frequency to above the imperceptible equivalent flicker frequency threshold, thus solving the problem of "disconnection between brightness adjustment and screen flicker suppression" in existing technologies.
[0054] Existing technologies do not consider the risk of screen flicker during brightness adjustment: traditional brightness adjustment has a large single adjustment range in the low brightness range, which can easily cause instantaneous screen flicker; however, when the two are combined, the small step adjustment in the low brightness range of Example 6 (such as a step of 1 level / time in the 0~320 level range) works in conjunction with the flicker frequency adjustment of Example 1 to maintain the equivalent flicker frequency in line with the standard during the brightness progression, thus avoiding the perception of screen flicker during the adjustment process.
[0055] Taking a smart tablet with an LCD screen as an example, if a smart tablet screen has 0-4095 backlight levels and is equipped with an ambient light sensor, screen driver chip, and processor, with the processor deploying a backlight adjustment thread and dimming algorithm, for example, the 0-4095 level backlight range can be divided into 6 brightness intervals, and the rules for each interval, the corresponding adjustment step size, and the number of adjustments per time are as follows: 0~320 levels (extremely low brightness range): The adjustment step is 1 level / time. If the current backlight value is 50 levels and the target backlight value is 100 levels, it is necessary to perform (100-50)÷1=50 "single adjustment" times; if the current value is 300 levels and the target value is 200 levels, it is necessary to perform (300-200)÷1=100 times.
[0056] Levels 321~640 (low brightness range): The adjustment step is 2 levels / time. When the current value is 350 and the target value is 450, it is necessary to execute (450-350)÷2=50 times.
[0057] Levels 641~960 (medium to low brightness range): The adjustment step is 5 levels / time. When the current value is 650 and the target value is 850, it is necessary to execute (850-650)÷5=40 times.
[0058] 961~1280 levels (medium brightness range): The adjustment step is 10 levels / time. When the current value is 1000 levels and the target value is 1200 levels, it is necessary to execute (1200-1000)÷10=20 times.
[0059] Levels 1281~1600 (medium to high brightness range): The adjustment step is 20 levels / time. When the current value is level 1300 and the target value is level 1500, it is necessary to execute (1500-1300)÷20=10 times.
[0060] Levels 1601~4095 (high brightness range): The adjustment step size is 50 levels / time. When the current value is level 1700 and the target value is level 2000, it is necessary to execute (2000-1700)÷50=6 times.
[0061] When establishing the mathematical model, a mathematical model is created that correlates screen brightness (L, in %) with equivalent flicker frequency (F, in Hz). For example, F = 20 × L + 50 × log(E + 1), where E is the ambient light intensity (in lux). This model is calibrated experimentally. For instance, when L = 5% and E = 1 lux, the measured F = 30 Hz. Substituting this into the model, we get F = 20 × 5 + 50 × log(1 + 1) ≈ 100 + 35 = 135 Hz. By adjusting the coefficients to ensure that the error between the calculated value and the measured value is ≤ 5%, the final model is determined to be F = 15 × L + 45 × log(E + 1), thus quantifying the relationship between brightness and flicker frequency.
[0062] When simulating high-frequency PWM and DC-like dimming in software, when the smart tablet is in a dark environment (E=2 lux) and the current brightness L=8% (corresponding to a backlight value of 200 levels, belonging to the 0~320 level range), the optimal modulation frequency is calculated to be 300Hz and the duty cycle to be 8% based on the model. To simulate the effect of high-frequency PWM, based on the traditional PWM "8% brightness cycle + 92% brightness cycle", two micro-brightness compensation pulses (brightness is 1 / 4 of the current brightness) are inserted in the brightness cycle. The duration of the compensation pulse is 1 / 5 of the original brightness cycle, so that the number of brightness changes per unit time is increased to 300Hz, which is equivalent to high-frequency PWM. When L=50% (corresponding to a backlight value of 1600 levels, belonging to the 1281~1600 level range), the duty cycle change step size is controlled to be ≤0.5% / time, so that the brightness change is continuous and smooth, simulating the DC-like dimming effect.
[0063] The above solution requires no modification to the smart tablet's hardware structure. It only requires compiling the dimming algorithm into a driver module, which, through integration with a standard interface (such as MIPI DSI) of the screen driver chip, can send dimming parameter commands to the screen driver chip. Furthermore, this invention can pre-set parameter adaptation tables for LCD and OLED screens. When the smart tablet is replaced with an OLED screen, it automatically reads the screen type identifier and calls the corresponding parameter calculation logic for OLED, achieving multi-screen type adaptation. When porting this driver module to a laptop, only the interface adaptation code with the computer operating system (such as Windows) needs to be adjusted; no modification to the core algorithm is required, achieving multi-device adaptation.
[0064] By creating a backlight adjustment thread within the processor's Linux kernel, with a medium-high priority (to avoid preempting core task resources while ensuring dimming response), this thread only handles backlight value calculation and dimming parameter sending tasks, without participating in other system operations (such as application execution), thus avoiding system blockage. A high-efficiency computing module can also be integrated to pre-calculate basic dimming parameter tables for different brightness and ambient light combinations. When the ambient light sensor detects that E changes from 2 lux to 10 lux, the parameters in the pre-calculated table are directly called, and then fine-tuned by ±5%, shortening the calculation time. Simultaneously, in strong light environments (E=50 lux), the adjustment step size can be set to the upper limit of the corresponding range (e.g., 50 levels / time for the 1601~4095 level range) to ensure response speed; in low light environments (E=2 lux), the step size can be set to the lower limit of the corresponding range (e.g., 1 level / time for the 0~320 level range) to ensure smooth, flicker-free brightness, balancing responsiveness and user experience.
[0065] In existing technologies, hardware solutions require replacing the high-frequency PWM driver chip or adding a DC dimming circuit, leading to increased costs. Furthermore, a particular hardware solution is only compatible with specific screen types. Traditional software solutions rely on experience to set fixed dimming parameters (e.g., a fixed frequency of 50Hz), lacking a quantitative correlation between brightness and flicker frequency, resulting in poor flicker suppression at low brightness. This invention establishes a mathematical model through software algorithms to quantify the relationship between brightness and flicker frequency without modifying the hardware. It is compatible with LCD, OLED, and multiple devices through a parameter adaptation table, and employs non-linear adjustment step size and compensation pulses to simulate high-frequency PWM / DC-like dimming.
[0066] Existing technologies do not combine "quantitative correlation of mathematical models + software simulation of high-frequency PWM / DC-like dimming + nonlinear range adjustment." This invention provides precise basis for dimming parameters through mathematical models, overcoming the limitations of traditional software's reliance on experience. Through compensation pulse and range step size optimization, it achieves low-brightness screen flicker suppression without hardware modifications, solving the problems of high cost and poor compatibility of hardware solutions and poor performance of traditional software. This invention can effectively eliminate screen flicker at low brightness (0~320 levels) without increasing hardware costs. It is compatible with LCD and OLED screens and various mobile phones, smart tablets, and laptops, balancing response speed and visual comfort, and reducing the harm of screen flicker to the eyes.
[0067] The present invention is compared with hardware-level DC dimming and high-frequency PWM dimming as follows:
[0068] Optionally, in specific implementations of the present invention, the backlight range is not fixed, but can be dynamically adjusted according to screen type, usage scenario, and user habits. For example, for OLED screens, because their self-emissive characteristics are more sensitive to low brightness changes, the 0-320 level "extremely low brightness range" can be further subdivided into two sub-ranges: 0-160 levels (extremely dark area) and 161-320 levels (dark area). In the extremely dark area, the adjustment step size can be further reduced to 0.5 levels / time to ensure a smoother brightness transition and avoid visual discomfort caused by brightness jumps.
[0069] In practice, the system can read the screen's EDID information or driver parameters during the initialization phase, identify the screen type (LCD / OLED), and load the corresponding interval partitioning table. For example: LCD screen: The original 6-range division is retained (0-320, 321-640, 641-960, 961-1280, 1281-1600, 1601-4095).
[0070] OLED screen: It adopts 8-zone division (0-160, 161-320, 321-480, 481-640, 641-800, 801-960, 961-1280, 1281-4095), and sets smaller step size and longer delay in the low brightness zone.
[0071] Optionally, the parameters in the delay time calculation formula can be optimized through experimental calibration and dynamic learning. In actual deployment, the system can record the user's brightness adjustment habits under different ambient light conditions and, in conjunction with screen response characteristics, dynamically update the coefficient values in the formula to achieve an adjustment experience that better matches the user's perception.
[0072] For example, the system can have a built-in learning module that records the following data: The frequency and amplitude of brightness adjustment by the user under different ambient light conditions (e.g., ≤5 lux, 5-50 lux, >50 lux); The actual response time and smoothness performance of the screen in different brightness ranges; Screen flickering events detected by the user or the system.
[0073] Based on this data, the system can periodically (e.g., every 30 days) update the brightness interval coefficients in the formula. Parameters such as the difference grading coefficient and ambient light correction coefficient are fine-tuned to make the delay time more consistent with actual use scenarios.
[0074] Optionally, to ensure the dimming effect meets expectations, the system can integrate a real-time monitoring module to detect the actual equivalent flicker frequency and brightness stability of the screen. This module can be implemented in the following ways: Frequency detection: The PWM modulation frequency and compensation pulse parameters are read through the feedback interface (such as I2C / SPI) of the screen driver chip, and the equivalent flicker frequency is calculated in real time. Brightness detection: It uses the front ambient light sensor or the screen's built-in light sensor to monitor whether the screen brightness changes smoothly in real time; User feedback interface: The system settings provide a "Screen comfort feedback" option, where users can rate the screen flicker at the current brightness (e.g., 1-5 points), and the system adjusts the dimming strategy accordingly.
[0075] If the equivalent flicker frequency is detected to be lower than the imperceptible threshold (e.g., 300Hz), or the brightness jump exceeds 0.5%, the system will automatically trigger the recalculation of dimming parameters and reissue the dimming command to ensure continuous optimization of the display effect.
[0076] Furthermore, the equivalent flicker frequency can be adjusted simultaneously during the backlight brightness adjustment process (i.e., during steps S101~S103). Taking a smart tablet scenario as an example, for instance, the ambient light threshold is defined as 5 lux. After the dimming program reads the ambient light intensity E=60 lux, it determines that it is greater than the ambient light threshold and prioritizes ensuring the brightness response speed. At this point, if the current backlight value is level 1000 (belonging to the 961~1280 level range) and the target backlight value is level 2000 (belonging to the 1601~4095 level range), the dimming program will increase the adjustment step size from 10 levels / time to 50 levels / time (consistent with the step size for the 1601~4095 level range). The number of adjustments per time will decrease from (2000-1000)÷10=100 times to (2000-1000)÷50=20 times, and the response time will be shortened from 100×10ms=1000ms to 20×10ms=200ms. At the same time, the lower limit of the equivalent flicker frequency will be reduced from 300Hz to 250Hz, ensuring no screen flicker while reducing the amount of calculation and further improving the response speed.
[0077] After the dimming program reads the ambient light intensity E=3 lux, it determines that it is less than the ambient light threshold and prioritizes improving the anti-flicker effect. When the current brightness L=5% (corresponding to a backlight value of 150 levels, which falls within the 0~320 level range), the dimming program calculates the equivalent flicker frequency target value of 280Hz based on the mathematical model. If the current equivalent flicker frequency is 250Hz, the dimming program increases the number of micro-brightness compensation pulses (from 2 to 3 times) to raise the equivalent flicker frequency to 280Hz. At the same time, the adjustment step size is reduced from 1 level / time to 0.5 levels / time to avoid screen flicker caused by brightness jumps. Even if the current backlight value is adjusted from 150 levels to 180 levels, (180-150)÷0.5=60 single adjustments are required to ensure smooth brightness changes.
[0078] The dimming program can also integrate a pre-calculated parameter table, which stores 100 sets of common E (0~1000 lux, 10 lux interval) and L (1%~100%, 1% interval) combinations corresponding to the basic modulation frequency, duty cycle, and step size parameters. When E=25 lux and L=30% are detected, the parameters in the table are directly called (frequency 220Hz, duty cycle 30%, step size 5 levels / time), and then fine-tuned by ±3% according to the actual screen feedback.
[0079] Based on the above solutions, this invention can achieve on-demand optimization of response speed and anti-flicker effect according to the dynamic switching strategy of ambient light intensity. In existing technologies, dimming strategies are mostly single, fixed strategies (such as using a fixed step size and frequency regardless of ambient light). Under strong light, the step size may be too small, leading to slow response; under dim light, the frequency may be insufficient, causing screen flicker. This invention achieves on-demand optimization of response speed and anti-flicker effect based on the dynamic switching strategy of ambient light intensity. Existing technologies do not combine "ambient light partitioning + pre-calculated parameter table + lightweight code" for dimming strategy adjustment. This invention clarifies strategy priority through ambient light partitioning, improves computational efficiency through pre-calculated parameter tables, and reduces resource consumption through lightweight code, solving the problem that a single strategy cannot meet the needs of multiple scenarios. Based on this, this invention can effectively shorten the brightness adjustment response time in strong light environments, meeting users' needs for rapid adjustment; and effectively improve the screen flicker suppression rate in dim light environments, improving user visual comfort.
[0080] Optionally, the target modulation frequency of the backlight driving signal corresponding to the first modulation control signal is determined by the following formula:
[0081] in, The target modulation frequency of the enhanced backlight drive signal is a core output parameter that directly determines the improvement in the equivalent flicker frequency and must ultimately meet certain requirements. ( To compensate for the number of pulses, The signal transmission loss coefficient is 0.97 (calibrated based on the signal transmission characteristics of mainstream screen driver chips). Its value ranges from 300Hz to 600Hz, covering the adjustable frequency range of mainstream screen hardware to ensure hardware compatibility. This indicates the current backlight drive signal modulation frequency before the upgrade, which is the actual operating frequency of the screen backlight hardware. It is obtained in real time by the screen driver chip and has a value range of 50Hz to 200Hz (which conforms to the default modulation frequency range of LCD / OLED screens). This represents the backlight range adaptation factor, used to quantify the modulation frequency requirement of the current backlight value range. Lower brightness ranges require a larger increase to suppress screen flicker. Its adjustment is based on... The interval is divided into segments: 0~320 levels (extremely low brightness): Because the screen flicker is most noticeable in this range and the human eye is most sensitive to it, the frequency needs to be increased to the maximum extent. 321~640 levels (low brightness): The screen flicker sensitivity is the second worst, and the increase in frequency is moderately reduced; Levels 641-1600 (medium brightness): Screen flicker has a minor impact and does not require excessive improvement; 1601~4095 levels (high brightness): At high brightness, screen flicker is barely perceptible; maintaining the basic improvement is sufficient.
[0082] The value is based on the core logic of "slow transition at low brightness and fast response at high brightness" to ensure optimal screen flicker suppression in the low brightness range; The ambient light influence factor is used to enhance frequency boosting in low-light environments. It is calculated as follows: (Ambient light intensity) value range segmented ( (Ambient light threshold, covering only dark light areas): 0 < ≤2 lux (extremely low light): The screen flicker is most noticeable in extremely low light conditions, requiring an additional increase in frequency to improve it; 2< ≤5 lux (dark light): Even in low light, screen flicker remains noticeable, maintaining a relatively high improvement.
[0083] When the ambient light is ≤5 lux, screen flicker suppression is the preferred strategy. This value is calibrated using actual measurement data from the ambient light sensor to ensure that the equivalent flicker frequency meets the standard under low light conditions.
[0084] This represents the brightness difference compensation factor, used to balance the impact of the difference between the current and target backlight values on frequency enhancement, avoiding brightness jumps during small difference adjustments. Its calculation formula is: The value ranges from 1.0 to 1.6; the smaller the difference, the better. The larger the value, the smoother the brightness transition is ensured through additional compensation frequency; the larger the difference, the better. The closer it is to 1, the less power consumption will be wasted due to excessive frequency increases. symbol This represents the screen type adaptation factor, used to adapt to the different physical characteristics of LCD and OLED screens. The value is 1.0 for LCD screens and 1.2 for OLED screens. Because OLED pixels are self-emissive, they are more sensitive to changes in brightness. The target frequency needs to be slightly increased to ensure no screen flicker is perceived. The value is determined based on "multi-screen type adaptation" and comparative experiments on the flicker characteristics of OLED and LCD screens. The threshold value represents the imperceptible equivalent flicker frequency, which is the lowest frequency threshold that the human eye cannot perceive screen flicker. It is fixed at 300Hz, based on the principle that "the imperceptible equivalent flicker frequency threshold is preferably 300Hz". User experiments have verified that more than 95% of people are imperceptible to flicker above 300Hz. At the same time, this value is compatible with the driving capabilities of mainstream screen hardware. This indicates the ambient light intensity collected in real time by the ambient light sensor, reflecting the lighting conditions of the current usage scenario. The value ranges from 0 to 5 lux, and the unit is lux.
[0085] This represents the ambient light threshold, which is the critical value that distinguishes between dark and non-dark scenes. It can be set to a fixed value of 5 lux. This indicates the current backlight level, which is the numerical level corresponding to the real-time brightness of the screen. The value range is 0~4095 (the standard backlight level for mainstream display devices), reflecting the current brightness status of the screen. This indicates the target backlight level, i.e., the final target value for brightness adjustment, ranging from 0 to 4095 levels. It is generated by the user's brightness adjustment request and is related to... Same dimension; This indicates the maximum backlight level supported by the screen hardware, which can be a fixed value of 4095 levels. This represents the exponential adjustment factor, used to precisely control the magnitude of frequency boost to avoid over- or under-boosting. It can be set to a fixed value of 1.9. Between 1.7 and 2.1, the frequency can be increased to a level that is imperceptible at low brightness, while 1.9 is the optimal balance point between performance and power consumption. This represents the additional compensation constant for low-light conditions, used to provide fixed-frequency compensation for extremely low-light scenes, ensuring that the target is met even if the base calculation value is low. A fixed value of 18 can be used for extremely low-light conditions. Additional compensation This ensures that the target frequency is no lower than 300Hz, avoiding residual screen flicker caused by excessively low ambient light. This is used to smooth the effect of ambient light intensity on frequency, avoid frequency abrupt changes caused by small fluctuations in ambient light, and enhance the boost effect in low light conditions. The smaller the value, the larger the value of this term. This is used to balance the impact of the difference between the current and target backlight values, so that the frequency increase is smoother when the difference is large, avoiding visual discomfort caused by brightness jumps.
[0086] The above formula integrates four core scene parameters: backlight range, ambient light intensity, brightness difference, and screen type. This breaks through the limitations of traditional software dimming, where "a single factor determines the frequency," achieving full-dimensional linkage between "scene, hardware, and user experience." For example, in low-brightness + extremely dark light scenarios, , The two work together to amplify the frequency increase, precisely addressing the core pain point of screen flicker in low brightness scenarios; while in high brightness + low light scenarios, This avoids excessive frequency increases that lead to wasted power consumption.
[0087] pass (The value is larger in the low brightness range) (The value is larger in extremely dark light), logarithmic term ( The synergistic effect of (the smaller the value, the larger) makes low brightness + dark light scenes the focus of frequency enhancement, achieving the core objective of "increasing the modulation frequency when the ambient light is below the threshold".
[0088] All parameter values in the formula are based on the hardware characteristics of mainstream LCD / OLED screens. The target frequency range (300Hz~600Hz) completely covers the adjustable frequency range of the screen driver chip (50Hz~1000Hz), and can be achieved without hardware modifications. Meanwhile, through... (The larger the difference, the closer the factor is to 1) (Control the increase) The (screen type adaptation) design keeps the power consumption increase within 8% while ensuring no screen flicker, solving the problem of soaring power consumption in traditional hardware high-frequency PWM dimming.
[0089] The formula does not rely on additional hardware (such as high-frequency driver chips or additional sensors). It achieves a "high-frequency PWM-like dimming" effect solely through software algorithms that quantify the correlation of multiple parameters. This perfectly aligns with the core innovation of this invention, "software-simulated dimming," lowering the technical implementation threshold and making it compatible with various devices such as mobile phones, smart tablets, and learning machines. The formula focuses on achieving a "perceptible equivalent flicker frequency threshold." Through the quantization and precise weighting of multiple scene parameters, it calculates the optimal target modulation frequency at the software level. This not only achieves targeted suppression of low-brightness screen flicker but also balances hardware compatibility, response speed, and power consumption, achieving display effects superior to traditional solutions without requiring hardware modifications.
[0090] Optionally, the sampling data from the ambient light sensor may contain noise and drift. To ensure accurate determination of ambient light intensity, the system employs the following data processing strategy: Moving average filtering: Averages 10 consecutive sampled values to smooth out instantaneous fluctuations; Dynamic threshold calibration: Automatically performs a sensor calibration when the system starts up or when there is a sudden change in ambient light, eliminating zero drift and range error; Multi-sensor fusion: If the device is equipped with multiple light sensors (such as front and rear cameras), the minimum value is taken as the current ambient light intensity, which is more in line with the user's actual perception.
[0091] Optionally, to balance performance and power consumption, the system employs a segmented frequency boosting strategy: Low brightness + dim light: Frequency increased to 350-400Hz to ensure imperceptible operation; Low brightness + medium brightness: Frequency increased to 300-350Hz, balancing performance and power consumption; Medium to high brightness + any light: frequency maintained at 250-300Hz, as screen flicker is no longer noticeable.
[0092] Meanwhile, the system can dynamically adjust the upper limit of frequency according to the battery level: when the battery level is below 20%, the upper limit of frequency is reduced to 300Hz; when the battery level is above 80%, it can be appropriately increased to 400Hz to pursue a better display effect.
[0093] Example 7: Further, step S202 includes: the delay time of a single brightness adjustment when the current backlight value is in the low brightness range is greater than the delay time of a single brightness adjustment when the current backlight value is in the high brightness range.
[0094] Optionally, the delay time for a single brightness adjustment in step S202 is calculated using the following formula:
[0095] In the formula, This indicates the delay time for a single brightness adjustment, measured in microseconds. The value is a dynamically calculated result, with a minimum of 10. The maximum is 64,000 It directly determines the smoothness of brightness transition and is the core parameter for suppressing low-brightness screen flicker; : Represents the absolute difference between the current backlight value and the target backlight value, calculated as follows: The value should not be less than 0. The larger the difference, the faster the adjustment needs to be completed (the smaller the delay), which matches the user's expectation of response to brightness changes. This represents the target backlight value, which has the same range as the current backlight value (0~4095 levels). It is generated by the user's adjustment request and serves as the target reference for brightness adjustment. This indicates the current backlight value of the screen, ranging from 0 to 4095 levels (the standard backlight level for mainstream display devices). It reflects the real-time brightness status of the screen and is the core basis for dividing the range. This represents the brightness range coefficient, based on the current backlight value. The value range is specified, with levels 0-320 (extremely low brightness) as an example. At levels 321-640 (low brightness) At levels 641-960 (medium to low brightness) At levels 961-1280 (medium brightness) At levels 1281~1600 (medium to high brightness) At levels 1601~4095 (high brightness) Low brightness range Larger dimensions ensure longer latency and smoother transitions at low brightness, with targeted suppression of screen flicker; high brightness range Smaller size ensures faster adjustment response; Indicates the difference grading coefficient, according to The range of values for is , where ≤160 160 < ≤320 320 < ≤480 480 < ≤640 , >640 hours The smaller the difference, The larger the value, the less likely it is to cause abrupt changes when there are small variations in brightness; the larger the difference, the better. The smaller the value, the faster it approaches the target value, balancing smoothness and response speed.
[0096] This refers to ambient light intensity, measured in lux. It is collected in real time by an ambient light sensor and can range from 0 to 1000 lux. It reflects the lighting conditions of the usage scenario and is a key external parameter for dynamically adjusting the delay strategy.
[0097] This refers to the ambient light correction factor, adjusted according to ambient light intensity. The range of values for is , where ≤5 lux (low-light environment) 5 lux < ≤50 lux (medium light environment) , >50 lux (strong light environment) Improvement in low-light environments Further extend the low-brightness range latency and enhance screen flicker suppression; reduce flicker in strong light environments. To accelerate the adjustment speed and meet users' needs for rapid dimming; This represents the low brightness compensation factor, which can be a fixed value of 0.3. This value can be optimized for visual sensitivity in the low brightness range (0~640 levels) to achieve an optimization that balances screen flicker suppression and power consumption.
[0098] symbol This represents the difference index factor, based on the current backlight value. The value range includes levels 0-640 (low brightness range). At levels 641-1600 (medium brightness range) At levels 1601-4095 (high brightness range) Low brightness segment <1, amplifying the delay through the exponential effect to avoid screen flicker during small-difference adjustments; high brightness range >1, accelerates large difference adjustment, while taking efficiency into account; This represents the hardware compatibility factor, with values determined by screen type, where LCD screens... OLED screen OLED screen pixels, due to their self-emissive nature, are more sensitive to changes in brightness. Fine-tune the latency to adapt to the display physical characteristics of different screens and improve compatibility; Represents the fundamental delay constant, which can be taken as... (unit: ),when When the value is 640000, the single-shot delay in the low-brightness range can reach 100~64000. This avoids screen flickering and prevents lag caused by excessive delays.
[0099] pass (Brightness range coefficient) The segmented setting of the (difference index factor) enables non-linear adjustment of "slow transition at low brightness and fast response at high brightness," precisely matching the visual perception characteristics of the human eye under different brightness levels. At low brightness, the human eye is more sensitive to brightness changes, requiring a longer delay to avoid screen flicker; at high brightness, the human eye's perception threshold increases, allowing for a shorter delay to improve efficiency. This is achieved by incorporating an ambient light correction coefficient (…). Hardware compatibility coefficient () ), brightness difference ( These three core variables break through the limitations of traditional "fixed latency" or "single-factor correlation," achieving full-dimensional adaptation across "scenario-hardware-demand." This ensures effective low-brightness flicker suppression without sacrificing high-brightness adjustment response speed. (Low brightness compensation factor) The quantitative design of the (difference grading coefficient) can resolve the contradiction between "smooth transition" and "response speed". When adjusting small differences, high... ,Low Extend the delay to ensure smoothness; adjust for large differences using low... ,high Reduce latency and improve efficiency; achieve high performance in low-light environments. Enhanced smoothing, achieving low light penetration under strong light conditions. Speed up and achieve optimal balance across all scenarios.
[0100] Example 8: Further, step S201 includes: in response to a user issuing a screen brightness adjustment request, the user interface module generates brightness adjustment parameters according to the screen brightness adjustment request, and transmits the brightness adjustment parameters to the backlight adjustment module deployed in the kernel space through the system kernel interface, and the backlight adjustment module generates a target backlight value according to the brightness adjustment parameters.
[0101] In practical implementation, taking a smart tablet as an example, the processor runs a Linux system and receives brightness adjustment commands through the sysfs interface and ioctl interface.
[0102] When using the sysfs interface, the "target_brightness" and "env_light" nodes can be created in the ` / sys / class / backlight / lcd_backlight` directory of the Linux system. The "target_brightness" node is used to receive target backlight value commands, and the "env_light" node is used to receive ambient light intensity calibration commands. When the user sets the target brightness to 10% (corresponding to a backlight value of 410 levels) on the smart tablet interface, the system writes "410" to the "target_brightness" node via the `echo` command. The backlight adjustment thread reads the target backlight value by polling this node (polling interval 10ms) and triggers the brightness adjustment process. When it is necessary to calibrate the ambient light sensor, the system writes "calibrate:2" ("2" represents the calibration coefficient) to the "env_light" node and adjusts the calculated value of the ambient light intensity according to the calibration coefficient.
[0103] When using the ioctl interface, two ioctl commands, IOCTL_BRIGHTNESS_SET (command code 0x10) and IOCTL_FREQ_ADJ (command code 0x11), can be defined in the screen driver module. IOCTL_BRIGHTNESS_SET is used to set the target backlight value, and IOCTL_FREQ_ADJ is used to adjust the lower limit of the equivalent flicker frequency. When the power management module of the smart tablet detects that the battery level is below 20%, it sends the IOCTL_FREQ_ADJ command to the screen driver module via the ioctl function, with the parameter "250Hz". After receiving the command, the driver module adjusts the lower limit of the equivalent flicker frequency from 300Hz to 250Hz, reducing power consumption while ensuring no screen flicker. When the user adjusts the brightness using a shortcut key, the shortcut key processing module sends the IOCTL_BRIGHTNESS_SET command via the ioctl function, with the parameter "800" (corresponding to 800 levels of backlight value), thus initiating a single adjustment process.
[0104] In the above solutions, the sysfs and ioctl interfaces do not require additional hardware support, and the interface adaptation code can be reused on Linux-based mobile phones and laptops. The command transmission latency is ≤5ms, which can ensure a fast response to brightness adjustment commands and avoid brightness jumps caused by command delays.
[0105] Optionally, the user interface module runs in the operating system user space, and the backlight adjustment module is deployed in the operating system kernel space; The user interface module is configured to generate corresponding brightness adjustment parameters in response to a user's brightness adjustment operation on the graphical interface or physical buttons, and to pass the brightness adjustment parameters to the kernel space via a system call interface. The backlight adjustment module is configured to receive the brightness adjustment parameters from the system call interface through kernel event listening or data polling, and convert the brightness adjustment parameters into a target backlight value digital level that can be recognized by the screen backlight hardware according to a preset conversion rule.
[0106] Preferably, the system call interface includes a system file system interface and a device input / output control interface; The process of passing the brightness adjustment parameters to the kernel space via the system call interface specifically includes: If the brightness adjustment operation originates from the graphical user interface, the background service process in user space captures the brightness adjustment event and writes the parameters representing the target brightness level into the virtual file system node exposed by the kernel, which corresponds to the screen backlight control. The virtual file system node is located under the backlight device class directory in the operating system file tree. If the brightness adjustment operation originates from a physical button, the kernel input subsystem captures the button event and parses it into a brightness adjustment instruction. The user space button event handling process is called through the input / output control system to send the instruction data packet containing the brightness adjustment amount or target brightness value to the character device driver registered in the kernel by the backlight adjustment module. The backlight adjustment module performs differentiated analysis based on the different sources and formats of the brightness adjustment parameters: for brightness values read from virtual file system nodes and represented as percentages or levels, it converts them into the corresponding target backlight value by querying the pre-stored brightness-backlight value mapping table; for brightness adjustment commands received through the input / output control system and existing in the form of increment or decrement instructions, it performs arithmetic increment or decrement operations based on the current backlight value of the screen to generate the target backlight value. After the target backlight value is generated, the backlight adjustment module immediately sends a wake-up signal to the waiting queue where the backlight adjustment thread is located to start the step-by-step adjustment process.
[0107] Optionally, in a real system, brightness adjustment requests may come from multiple interfaces (such as GUI sliders, physical buttons, voice assistants, automatic brightness modules, etc.). To ensure the consistency and priority of dimming commands, the system can be designed with a dimming command arbitration module to uniformly receive, parse, and sort dimming requests from various interfaces.
[0108] This module can perform the following functions: Command deduplication: Multiple similar target brightness values received within a short period of time (e.g., 500ms) are merged into a single adjustment task; Priority settings: Physical button adjustment has higher priority than automatic brightness adjustment to ensure immediate response to manual operation by the user; Conflict handling: When multiple interfaces send adjustment requests at the same time, the last valid instruction received shall prevail, and the currently unfinished adjustment task shall be interrupted.
[0109] Optionally, to ensure the real-time performance and system stability of the dimming thread, the kernel module adopts the following optimization strategies during design: Dynamic adjustment of thread priority: When the system load is low, set the priority of the dimming thread to medium-high (e.g., SCHED_RR, priority 99); when the system load is high (e.g., games, video playback), appropriately reduce the priority to avoid preempting critical system resources; Memory pre-allocation and reuse: The memory buffers required by the dimming task (such as parameter tables and state caches) are pre-allocated when the module is loaded to avoid the latency and fragmentation caused by dynamic allocation; Interrupt nesting protection: When the dimming thread performs a critical operation (such as register writing), interrupts are temporarily disabled to ensure the atomicity of the operation and avoid inconsistencies in state caused by interrupt nesting.
[0110] Optionally, to achieve compatibility across multiple devices and systems, a driver adaptation layer is provided to shield the differences between different operating systems (such as Android, Linux, and Windows) and hardware platforms (such as MTK, Qualcomm, and Intel). The adaptation layer mainly includes the following components: Interface abstraction layer: Unifies and encapsulates backlight control interfaces (such as sysfs, ioctl, ACPI, DSI commands); Parameter conversion module: Converts uniformly formatted dimming parameters into register configurations recognizable by the target platform; Platform detection and self-adaptation: The system automatically detects the operating platform and screen type when it starts up and loads the corresponding driver configuration table.
[0111] For example, on the Android platform, the dimming module can communicate with the display service through the HAL layer; on the Windows platform, it can interact with the display driver through the WDDM driver model.
[0112] Example 9: Furthermore, in response to system initialization, the backlight adjustment thread is created and placed in a waiting queue to enter a sleep state; In response to the generation of the target backlight value, the backlight adjustment module sends a wake-up signal to the waiting queue to wake up the backlight adjustment thread; In response to the current backlight value being consistent with the target backlight value, the backlight adjustment thread is placed in the waiting queue again to enter a sleep state.
[0113] In practical implementation, taking a smart tablet as an example, a waiting queue mechanism can be implemented in the backlight adjustment thread of the Linux kernel. The specific steps are as follows: Waiting queue initialization: When the backlight adjustment thread is created, the init_waitqueue_head function is called to initialize the waiting queue "brightness_wait_queue", and the waiting condition variable "has_task" is defined at the same time (the initial value is 0, 0 means no task, 1 means there is a task).
[0114] No-task sleep: After the backlight adjustment thread starts, it enters a loop process. First, it calls the wait_event_interruptible function to check the "has_task" variable. If "has_task" is 0, the thread releases CPU resources and enters a sleep state, no longer occupying system computing resources. During the sleep period, the thread does not perform any brightness calculation or parameter sending operations, but only waits for a wake-up signal.
[0115] Task wake-up and execution: When the system writes the target backlight value (such as "410") through the sysfs interface, the write operation function of the sysfs node sets the "has_task" variable to 1 and calls the wake_up function to send a wake-up signal to the "brightness_wait_queue". After the backlight adjustment thread is woken up, it checks that "has_task" is 1 and executes tasks such as reading the target backlight value, calculating the dimming parameters, and sending instructions to the screen driver chip. After the task is completed, "has_task" is set to 0 and the thread enters the sleep waiting process of the waiting queue again.
[0116] In the above solutions, when there is no brightness adjustment task, the CPU usage of the backlight adjustment thread is reduced to reduce the power consumption of the smart tablet; the task wake-up response time can be ≤1ms, which is an effective improvement over the response speed of fixed interval sleep, and can avoid brightness adjustment lag caused by task delay.
[0117] Optionally, in response to an external interrupt signal or a backlight adjustment module unload trigger command, an interrupt flag is set and synchronized to the backlight adjustment thread via an atomic variable; After the backlight adjustment thread detects the interrupt flag, if it is executing the brightness adjustment process, it immediately terminates the current single adjustment task, saves the current backlight value, target backlight value and the status parameters of the number of adjustments not completed, releases the currently occupied screen backlight hardware communication resources, and then puts itself into a waiting queue to enter a sleep state, thereby providing state support for adjustment recovery after subsequent module unloading or interruption removal.
[0118] Preferably, the unloading process of the backlight adjustment module specifically includes: After receiving the uninstallation request, the module management unit of the system kernel sends an uninstallation notification to the backlight adjustment module. The backlight adjustment module immediately closes the brightness adjustment parameter receiving channel, rejects new brightness adjustment requests, and sets the uninstallation status atomic variable to the uninstallation flag. After the backlight adjustment thread is awakened, it detects the unload flag and calls the status verification interface to verify the integrity of the saved adjustment status parameters. If there are missing parameters, it automatically supplements the real-time status data of the current screen backlight hardware. First, release the synchronization lock resources of the waiting queue in the preset order, then clear the storage cache of the adjustment state parameters, then destroy the atomic variables used for thread synchronization, and finally disconnect the driver communication connection with the screen backlight hardware. The backlight adjustment thread sends a resource release completion signal to the module management unit. After the module management unit confirms that there are no residual occupied resources through the kernel resource detection interface, it performs the kernel driver uninstallation operation of the backlight adjustment module to ensure that the uninstallation process does not interfere with the operation of other processes in the system, and that the screen backlight hardware maintains the current stable brightness state, so as to avoid screen flicker or brightness sudden changes due to uninstallation.
[0119] Optionally, to minimize power consumption when there are no tasks, the dimming thread may perform the following optimization operations before entering sleep mode: Disable unnecessary peripherals: such as temporarily disabling continuous sampling of the ambient light sensor and switching to event-triggered mode; Reduce CPU frequency: The CPU core where the dimming thread is located can enter a low-power mode (such as WFI state). Release temporary cache: Clear the temporary data cache used during task execution to reduce memory usage.
[0120] When a dimming task wakes up the system, the system needs to complete the peripheral startup, cache recovery and thread readiness within 1ms to ensure that the response delay does not affect the user experience.
[0121] Optionally, if the dimming thread is unexpectedly interrupted (e.g., during system hibernation or module unloading), the system must ensure that the dimming state is fully preserved and can resume execution upon recovery. To this end, a state persistence and verification mechanism can be provided: Status snapshot: After each adjustment is completed, the current backlight value, target backlight value, remaining adjustment times, dimming parameters, etc. are written to non-volatile storage (such as EEPROM or file system). Verification and recovery: When the thread recovers, it reads the snapshot data and compares it with the current hardware state. If they are inconsistent, it triggers the state repair process (such as recalibrating the backlight value). Error handling: If corrupted status data is detected, the current task is abandoned and the adjustment is restarted from the user's last set target brightness.
[0122] Example 10: The present invention also provides an electronic device, including a processor and a memory communicatively connected to the processor: The memory stores a program for adjusting screen brightness, and when the processor executes the program for adjusting screen brightness, it implements the screen backlight adjustment method. The processor is used to call the screen brightness adjustment program in the memory to implement the screen backlight adjustment method.
[0123] In practice, electronic devices can be mobile phones, smart TVs, smart tablets, laptops, or smartwatches.
[0124] For mobile applications (e.g., running Android with a Snapdragon 710 processor): "dimmer_app.elf" can be stored in the phone's / system / lib / modules directory, and the program will be automatically loaded when the phone starts. For smart TV applications (e.g., running Linux with an Amlogic S905X4 processor): "dimmer_app.elf" can be stored in the TV's / opt directory, and the program will run automatically via a script after the TV is turned on. For smart tablet applications (e.g., running iPadOS with an A13 processor): "dimmer_app.exe" can be adapted to be an iPadOS executable file and stored in the tablet's application directory. For laptop applications (e.g., running Windows 11 with a Core i5-1235U processor): "dimmer_app.exe" can be stored in the computer's C:\Program Files directory, and the program will run in the background after installation. For smartwatch applications (e.g., running an RTOS system with an STM32L476 processor): "dimmer_app.elf" can be stored in the watch's Flash memory, and the program will be loaded when the watch starts.
[0125] The above are merely preferred embodiments of the present invention and are not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A method for adjusting screen backlight, characterized in that, Includes the following steps: S101. In response to the current backlight value of the screen not being greater than the backlight threshold, the backlight adjustment thread obtains the ambient light intensity from the ambient light sensor and compares it with the ambient light threshold to generate a backlight comparison result; S102. The backlight adjustment thread generates a modulation control signal based on the backlight comparison result and transmits it to the screen backlight hardware; S103. The screen backlight hardware adjusts the current equivalent flicker frequency of the screen to above the imperceptible equivalent flicker frequency threshold by changing the modulation frequency of the backlight drive signal according to the modulation control signal.
2. The screen backlight adjustment method according to claim 1, characterized in that: Step S102 includes: if the backlight comparison result is that the ambient light intensity is lower than the ambient light threshold, the backlight adjustment thread generates a first modulation control signal and transmits it to the screen backlight hardware. Step S103 includes: in response to the screen backlight hardware receiving the first modulation control signal, the screen backlight hardware increases the current equivalent flicker frequency of the screen to a first equivalent flicker frequency threshold by increasing the modulation frequency of the backlight driving signal, wherein the first equivalent flicker frequency threshold is not less than the imperceptible equivalent flicker frequency threshold.
3. The screen backlight adjustment method according to claim 1 or 2, characterized in that: Step S102 includes: if the backlight comparison result is that the ambient light intensity is higher than the ambient light threshold and the current equivalent flicker frequency of the screen is higher than the second equivalent flicker frequency threshold, the backlight adjustment thread generates a second modulation control signal and transmits it to the screen backlight hardware. Step S103 includes: in response to the screen backlight hardware receiving the second modulation control signal, the screen backlight hardware reduces the current equivalent flicker frequency of the screen to a second equivalent flicker frequency threshold by reducing the modulation frequency of the backlight driving signal, wherein the second equivalent flicker frequency threshold is not less than the imperceptible equivalent flicker frequency threshold.
4. The screen backlight adjustment method according to claim 2, characterized in that: The first modulation control signal includes a basic duty cycle parameter and a compensation pulse configuration parameter. Step S103 further includes: in response to the screen backlight hardware receiving the first modulation control signal, the screen backlight hardware controls the main illumination duration in a single PWM cycle according to the basic duty cycle parameter, and inserts at least one compensation pulse in a single PWM cycle according to the compensation pulse configuration parameter, wherein the pulse brightness of the compensation pulse is not greater than 1 / 2 of the main illumination brightness.
5. The screen backlight adjustment method according to claim 4, characterized in that: The compensation pulse configuration parameters include a pulse phase offset. Step S103 further includes: in response to the screen backlight hardware receiving the first modulation control signal, the screen backlight hardware aligns the starting edge of the compensation pulse with the non-refresh period of the pixel refresh cycle according to the pulse phase offset, so that the compensation pulse and the pixel refresh action are staggered in timing.
6. The screen backlight adjustment method according to claim 1, characterized in that, It also includes the following steps: S201. The backlight adjustment module generates a target backlight value based on the user's screen brightness adjustment request; S202. The backlight adjustment thread calculates the delay time for a single brightness adjustment based on the difference between the current backlight value and the target backlight value of the screen and the brightness range to which the current backlight value belongs; S203. The backlight adjustment thread controls a single brightness adjustment from the current backlight value to the target backlight value according to the delay time; S204. The backlight adjustment module transmits the backlight value after a single adjustment to the screen backlight hardware, and the screen backlight hardware adjusts the backlight brightness according to the backlight value after the single adjustment. S205. Repeat steps S201 to S204 until the current backlight value matches the target backlight value.
7. The screen backlight adjustment method according to claim 6, characterized in that: Step S202 includes: when the current backlight value is in the low brightness range, the delay time of a single brightness adjustment is greater than the delay time of a single brightness adjustment when the current backlight value is in the high brightness range.
8. The screen backlight adjustment method according to claim 6 or 7, characterized in that: Step S201 includes: in response to a user issuing a screen brightness adjustment request, the user interface module generates brightness adjustment parameters according to the screen brightness adjustment request, and transmits the brightness adjustment parameters to the backlight adjustment module deployed in the kernel space through the system kernel interface, and the backlight adjustment module generates a target backlight value according to the brightness adjustment parameters.
9. The screen backlight adjustment method according to claim 6, characterized in that: In response to system initialization, the backlight adjustment thread is created and placed in a waiting queue to enter a sleep state; In response to the generation of the target backlight value, the backlight adjustment module sends a wake-up signal to the waiting queue to wake up the backlight adjustment thread; In response to the current backlight value being consistent with the target backlight value, the backlight adjustment thread is placed in the waiting queue again to enter a sleep state.
10. An electronic device, comprising a processor and a memory communicatively connected to the processor, characterized in that: The memory stores a program for adjusting screen brightness, and when the processor executes the program for adjusting screen brightness, it implements the screen backlight adjustment method as described in any one of claims 1 to 9. The processor is used to call the screen brightness adjustment program in the memory to implement the screen backlight adjustment method as described in any one of claims 1 to 9.
Citation Information
Patent Citations
Electronic device and method for controlling backlight brightness
CN102097056A
Refresh rate adjustment method and apparatus of screen
CN106875925A
Display device and display method
CN115331635A
PWM (Pulse Width Modulation) signal generation method, PWM signal generation circuit and electronic equipment
CN118072661A
Display method, display device and storage medium
CN120071789A