It's time for a roundup of these OLED driver updates happening today.
The I2C OLED update will cause a ~12ms block in the current code. This is very difficult for us to accept - it will cause an RX loss warning on the flight controller and a series of unpredictable consequences.
This PR will split the original OLED refresh action from a full-frame refresh (512 bytes) to a four-sub-frame step-by-step refresh (128 bytes for each).
Although the PR did not improve the blocking situation, the original blocking task has been split into four blocking subtasks, which the queue scheduling method can be used to reorganize these tasks later to alleviate the blocking situation.
It's time for a roundup of these OLED driver updates happening today.
The I2C OLED update will cause a ~12ms block in the current code. This is very difficult for us to accept - it will cause an
RX loss
warning on the flight controller and a series of unpredictable consequences.This PR will split the original OLED refresh action from a full-frame refresh (512 bytes) to a four-sub-frame step-by-step refresh (128 bytes for each).
Although the PR did not improve the blocking situation, the original blocking task has been split into four blocking subtasks, which the queue scheduling method can be used to reorganize these tasks later to alleviate the blocking situation.